flash 绘图API:鼠标拖动小球
现在有个灵感,那就是通过鼠标拖动这些小球,鼠标移动的时候,那些小球会跟踪鼠标目标移动。这些只要使用flash 绘图API制作,
就能够完成;
第一步:随机创造一些小球
private function creatBall():void
{
for (var i:int=0; i<10; i++)
{
var ball:Ball=new Ball();
addChild(ball);
list.push(ball);
ball.x=Math.random()*550;
ball.y=Math.random()*400;
}
}
第二步:
进行对鼠标监听,针对鼠标的 按下,和松开状态进行监听,并加以EnterFrame事件,每一帧进行刷新操作
private function init():void
{
stage.addEventListener(MouseEvent.MOUSE_DOWN,MouseDown);
stage.addEventListener(MouseEvent.MOUSE_UP,MouseUp);
stage.addEventListener(Event.ENTER_FRAME,Run);
}
第三步:
对小球进行绘制直线,这一步我们主要使用moveTo 和LineTo的方式就行,其他的也可以使用flash cs4的drawpath
关键的地方就是确立好每一个小球的位置。
//绘制线条
private function drawLine(x1,y1):void
{
graphics.clear();
graphics.lineStyle(1,0xff0000);
for (var i:int=0; i<list.length; i++)
{
graphics.moveTo(mouseX,mouseY);
graphics.lineTo(list[i].x,list[i].y);
}
}
第四步:小球运动
怎样才能运行?其实就是转换为角度的问题了。要让小球产生移动,则需要知道他的速度,分解其vx 和vy 两个方向,计算出他们的位移
private function BallMove():void
{
for (var i:int=0; i<list.length; i++)
{
var angle:Number=Math.atan2(mouseY-list[i].y,mouseX-list[i].x);// 计算出鼠标点,与每一个小球直接的角度值
list[i].x+=Math.cos(angle)*speed;//位移。
list[i].y+=Math.sin(angle)*speed;
}
}
总结:这些小玩意,只是绘图api 一些最简单应用,有了这些应用好,可以扩展很多很多意想不到的效果。不过不要忘记,效果背后往往是一些数学和物理的原理。 这一点很重要。
有什么想法?如果有记下来吧,对你说不定有帮助。
package
{
import flash.display.MovieClip;
import flash.events.*;
//拖动小球
public class Main extends MovieClip
{
private var list:Array=new Array();//列表
private var key:Boolean=false;
private var speed:int=5;
相关文档:
什么是Flash Memory存储器
介绍关于闪速存储器有关知识 近年来,发展很快的新型半导体存储器是闪速存储器(Flash Memory)。它的主要特点是在不加电的情况下能长期保持存储的信息。就其本质而言,Flash Memory属于EEPROM(电擦除可编 程只读存储器)类型。它既有ROM的特点,又有很高的存取速度, ......
H-JTAG V0.9.2 烧录nand flash的方法
说明:
本文以S3C2410的开发板说明用H-JTAG烧录程序到nand flash的方法。
本文烧录K9F1208的8bit nand flash。
1. 到http://www.hjtag.com/download.html下载H-JTAG V0.9.2
2. 安装H-JTAG V0.9.2
3. ......
Flash Media Server 在 debian 上
學員安裝 Flash Media Server 在 Windows XP 上,基本上是可以運作啦!不過,我習慣使用 Linux 來架設伺服器,所以還是打算將 Flash Media Server 安裝在 Debian 上面。
下課回工作室後,先在工作室的 ......
NASCAR和美国空军合作网站
全球生
物分类倡议项目 GTI Project
索尼与我
这个网站用数码相机记录了儿童成长的虚拟体验。
当
您在观看视频,您可以选择您喜欢的瞬间,并记录下来。
共和国的鸡蛋
共和国鸡蛋由四个志同道合的人组成,团结,努力建设一
个新的创意热店。
他们只有一个目标,就是积极推动中 ......
在ubuntu
上安装了官方的flash player后,其中的动态中文字体却显示为方块的问题可以用以下方法解决
删除一个字体的设置文件后,重新启动firefox问题就可以解决。
执行的命令为:
$ sudo rm /etc/fonts/conf.d/49-sansserif.conf
......