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;
相关文档:
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 上面。
下課回工作室後,先在工作室的 ......
经过上面的测试,现在对原先程序进行一些改造可以创建出不错的效果,你会发现每次改动一些参数很多有趣的效果就会出现了。现在我们尝试做一个调节工具对他们的半径,高度,圈数,视角进行创造。这次会主要借助到flash里面 组件包。Slider 组件来帮助我们完成这一次的尝试。
制作过程知道:包括Slider 组件的使用,R ......
1.首先下载FusionCharts 和 jquery相关的jar包
2.在WebRoot(MyEclipse)下新建script文件夹,放入jquery.js。新建FusionCharts,将fusionCharts包下的Charts文件夹粘贴过来(里面为各种图像报表的模板:如FCF_Area2D.swf、FCF_Bar2D.swf等等),将FusionCharts.js拷入FusionCharts目录下。
3.准备工作完毕、编写 ......
NASCAR和美国空军合作网站
全球生
物分类倡议项目 GTI Project
索尼与我
这个网站用数码相机记录了儿童成长的虚拟体验。
当
您在观看视频,您可以选择您喜欢的瞬间,并记录下来。
共和国的鸡蛋
共和国鸡蛋由四个志同道合的人组成,团结,努力建设一
个新的创意热店。
他们只有一个目标,就是积极推动中 ......