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;
相关文档:
转自:http://www.laolang.cn/back-end-develop/flash-builder-4-blazeds-db-application.html
1.使用Eclipse 建立一个Java Project。编写好远程服务类(如附件)。
2.下载Download the BlazeDS binary distribution,解压到tomcat的webapps目录下。下载flex-rds-server.jar,它是BlazeDS 4(开发中)中的一个包,是Bl ......
微软此次安全建议的立场非常明确,希望确保用户明白,只有在同时使用旧版Flash和旧版Windows时才会出现漏洞,新版Windows均未内置Flash Player。
新浪科技讯 北京时间1月14日早间消息,据国外媒体报道,由于存在多个漏洞,微软周二敦促Windows XP用户尽快升级系统预装的Adobe Flash Player 6.0,manolo blahn ......
1302-1418-7372-7058-0707-6549
1302-1007-0197-0975-4737-2180
1302-1103-1453-8741-1257-9791
1302-1318-0739-1481-7253-8018
1302-1787-8018-7637-9004-8287
1302-1584-5624-8663-0876-6868
1302-1968-2248-8146-6372-5304
1302-1249-0312-7694-5729-5273
1302-1193-9573-1154-9835-9014
1302-1056-8446- ......
我们引用本地flash,实现flash与js双向交互。
function thisMovie(movieName) {
if (window.document[movieName]){
return window.document[movieName];
}else if (navigator.appName.indexOf("Microsoft")==-1){
&nb ......
Flash 嵌入的问题论坛中有人问了好多次,到底应该怎么用,为什么通不过验证,要通过验证怎么办等等等。
讨论中也出现了不少的误解,所以我单开一个帖总结一下我所知道的东西,不想看我罗嗦的直接跳到最后看结论就可以了。
一、传统的方法
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
&nbs ......