c#模拟平抛运动动画的方法详解

所属分类: 软件编程 / C#教程 阅读数: 83
收藏 0 赞 0 分享
主要使用Graphics对象的FillElliple绘制一圆形小球,然后分时控制其显示位置即可。
步骤主要如下:
1.新建窗体,然后在代码模式中添加如下函数分别控制x和y轴方向运动速度。
复制代码 代码如下:

        private int runTime=25;//设置平抛运动时间(动画持续时间)
        private double Xs(double t)
        {
            double v0 = 15;
            return v0 * t;
        }
        private double Ys(double t)
        {
            double g = 9.8;
            return 0.5 * g * t * t;
        }

2.下面我将控制运动方法绑定至了主窗体的click事件上,可以换之。代码如下:
复制代码 代码如下:

        private void Form1_Click(object sender, EventArgs e)
        {
            Graphics g = this.CreateGraphics();
            double t;
            for (t = 0; t < runTime; t += .5)
            {
                System.Threading.Thread.Sleep(10);
                g.Clear(this.BackColor);
                double x = Xs(1.5 * t) + 50;
                double y = Ys(0.3 * t) + 5;
                g.FillEllipse(Brushes.Red, Convert.ToSingle(x), Convert.ToSingle(y), 30, 30);
            }
        }

更多精彩内容其他人还在看

C# SendInput 模拟鼠标操作的实现方法

C# SendInput 模拟鼠标操作的实现方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#中 paint()与Onpaint()的区别

paint是事件onpaint方法onpaint方法是调用paint事件的,用哪一个,效果是一样,就看那一个方便了内部是这样实现的:
收藏 0 赞 0 分享

c#中GetType()与Typeof()的区别

c#中GetType()与Typeof()的区别,需要的朋友可以参考一下
收藏 0 赞 0 分享

将字符串转换成System.Drawing.Color类型的方法

将字符串转换成System.Drawing.Color类型的方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

C# 抓取网页内容的方法

C# 抓取网页内容的方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

基于C#后台调用跨域MVC服务及带Cookie验证的实现

本篇文章介绍了,基于C#后台调用跨域MVC服务及带Cookie验证的实现。需要的朋友参考下
收藏 0 赞 0 分享

使用C#获取远程图片 Form用户名与密码Authorization认证的实现

本篇文章介绍了,使用C#获取远程图片 Form用户名与密码Authorization认证的实现。需要的朋友参考下
收藏 0 赞 0 分享

Winform跨线程操作的简单方法

线程间操作无效:从不是创建控件“label1”的线程访问它
收藏 0 赞 0 分享

C# WINFORM 强制让窗体获得焦点的方法代码

C# WINFORM 强制让窗体获得焦点的方法代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#中方括号[]的语法及作用介绍

C#中方括号[]可用于数组,索引、属性,更重要的是用于外部DLL类库的引用。
收藏 0 赞 0 分享
查看更多