c#模拟平抛运动动画的方法详解
主要使用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);
}
}
相关推荐
-
JS实现匀速运动的代码实例
效果: 思路: 利用setInerval()计时器,进行运动.然后关键的一点是在最后停止的时候给它一个填充缝隙的判断. 代码: 复制代码 代码如下: <head runat="server"> <title></title> <style type="text/css"> #div1 { width: 100px; height: 10
-
JS运动基础框架实例分析
本文实例讲述了JS运动基础框架.分享给大家供大家参考.具体分析如下: 这里需要注意: 1. 在开始运动时关闭已有的定时器 2. 把运动和停止隔开 复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style type="te
-
javascript动画之圆形运动,环绕鼠标运动作小球
代码如下: 复制代码 代码如下: <script type="text/javascript"> var ball; var mouseX = 100; var mouseY = 100; var angle = 0; var radius = 50; function run(){ if(ball === undefined){ ball = document.createElement("span"); ball.style.position = &
-
JS多物体 任意值 链式 缓冲运动
复制代码 代码如下: <!DOCTYPE HTML> <html> <head> <meta http-equiv="content-type" charset="utf-8" /> <meta http-equiv="content-type" content="text/html" /> <title>demo</title> </h
-
js实现运动logo图片效果及运动元素对象sportBox使用方法
初始化(元素id, 元素移动的方向用123456789分别表示左上.上.右上.左.中.右.左下.下.右下. 撞击位置,9个数字分别表示9个地点,按顺序左上角.上.右上角.左.中.右.左下角.下.右下角,5居中. 运动的logo /**************************************************************** * name:运动的元素对象sportBox * DATA --2012-12-20-- 美工 **********************
-
js运动动画的八个知识点
今天简单的学了一下js运动动画,记录一下自己的心得体会,分享给大家. 下面是我整理出来的结果. 知识点一:速度动画. 1.首先第一步实现速度运动动画,封装一个函数,用到的知识是setInterval(function(){ 复制代码 代码如下: oDiv.style.left=oDiv.offsetLeft+10+"px"; },30). 对于这里为什么要用到offsetLeft,我特意百度了一下,我得到的有用信息是: a.offsetLeft和left的相同之处都是表示子节点相对于父
-
js运动框架_包括图片的淡入淡出效果
复制代码 代码如下: <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><font face="Verdana, Geneva, sans-serif"></font>&l
-
JS实现多物体缓冲运动实例代码
效果: 思路: 利用setInterval计时器进行运动,offsetWidth实现宽度的变动,在用onmouseover将终点和所选中的DIV放入参数再进行缓冲运动. 代码: 复制代码 代码如下: <head runat="server"> <title></title> <style type="text/css"> div { width: 100px
-
JS运动框架之分享侧边栏动画实例
本文实例讲述了JS运动框架之分享侧边栏动画实现方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style type="text/css">
-
JS匀速运动演示示例代码
复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu
-
让Silverlight 2.0动画动起来Making Silverlight 2.0 animation Start(不能运动原因)
问题又来了 Microsoft Expression Blend 2制作的动画 无法动起来 现在大师教 大家怎么让Silverlight.2.0动画动起来 很简单 你制作了动画 但是没有触发点 或者说没有告诉什么时候开始 Microsoft Visual Web Developer 2008 Express Edition或者VS2008 然后打上Silverlight Tools 补丁 这样要方便 当然记事本也可以 打开 代码部分 比如我的就是Page.xaml.cs 比如我要让 我制作的动画
随机推荐
- IIS7.0 Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站的教程图文详解
- python中split方法用法分析
- ASP.NET Core环境变量和启动设置的配置教程
- js获取下拉列表框<option>中的value和text的值示例代码
- js的延迟执行问题分析
- C++中重载、重写(覆盖)和隐藏的区别实例分析
- Android开发之多媒体文件获取工具类实例【音频,视频,图片等】
- Vue.js常用指令的使用小结
- 常见php与mysql中文乱码问题解决办法
- js利用Array.splice实现Array的insert/remove
- JS Array创建及concat()split()slice()的使用方法
- Python Requests安装与简单运用
- ubuntu14.04LTS安装nginx+mariaDB+php7+YAF的方法
- 创建Flash站点的十大可用性技巧(转)
- js中DOM三级列表(代码分享)
- 使用PHP求两个文件的相对路径
- Android软键盘遮挡的四种完美解决方案
- 让文字在页面上90度,180度翻转
- PHP用SAX解析XML的实现代码与问题分析
- Android音频系统AudioTrack使用方法详解