易截截图软件、单文件、免安装、纯绿色、仅160KB

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;


相关文档:

NOR FLASH与NAND FLASH的区别【转】


NOR和NAND是现在市场上两种主要的非易失闪存技术。Intel于1988年首先开发出NOR flash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。紧接着,1989年,东芝公司发表了NAND flash结构,强调降低每比特的成本,更高的性能,并且象磁盘一样可以通过接口轻松升级。但是经过了十多年之后,仍然有相当多的硬件工程师分不清 ......

收藏属于自己flash类库集工具

  这一篇是临时的笔录,我们知道as3 是面向对象的语言,这种语言能够方便的封装好一些类,重用性得到加强。每一个人都有一套绝活,这些绝活就像武林当中每一派的武学那样。在平时的工作使用上,收集这些工具能够方便自己工作,也成为自己一套武学。
 例如:adobe 核心类库 , 3d引擎类库,物理引擎类库 box2d , ......

AFLAX学习记录之 flash基础知识


ExternalInterface
ExternalInterface 类是外部 API,在 ActionScript 和 Flash Player 的容器之间实现直接通讯的应用程序编程接口,
例如,含有 JavaScript 的 HTML 页。 推荐对所有 JavaScript 与 ActionScript 之间的通信使用 ExternalInterface。
在 HTML 页中使用 JavaScript,可以调用 Flash Player 中的 Actio ......

解决flash与js交互、flash跨域交互、flash跨域提交

我们引用本地flash,实现flash与js双向交互。
   function thisMovie(movieName) {
     if (window.document[movieName]){
      return window.document[movieName];
    }else if (navigator.appName.indexOf("Microsoft")==-1){
 &nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号