flash 绘图API:剑归宗

   昨晚想起了很想用绘图API绘制一把剑,突然脑海又想起了风云当中剑圣使用的“万剑归宗”这些武学招式,想想之后,于是好无聊写了一下,不过不能做到万剑归宗的效果,就省去了一个字。呵呵,很想把学过的知识,把在看到的融合到图形表现上。这样做起来flash 会显得更加有个性一点,可能看起来是一种自娱自乐的东西,不过里面的开心的是把一种已经存在的东西转化为新的东西。

既然万剑归宗,当然不能缺少一把剑。看看绘制一把剑,这把剑采用一种比较笨的方法,记录点的位置转化线条表现上。

 

第一步:绘制一把剑

点位置

把每一个点记录起来,然后大概使用一个数组里面保存。

 

记录之后,我们就可以对其进行连线,从第一个点开始连接,一个接一点进行连。采用moveTo 和lineTo 常用组合就能连串成每一个点位置

 

 

然后为剑添加一些圆和一些线,效果图就是上面那张图片。

 

 

 

 

 

第二步:交互操作

实现剑的操作,无非就是复制一系列的对象,然后对其进行分布。实现剑围绕圆分布。

stage.addEventListener(MouseEvent.CLICK,onClick);
 private function onClick(event:MouseEvent):void

{

 

  //产生一系列的对象,对其对象进行分布处理,按圆的轨迹进行分布。

 

}

效果如下图

 

 

剑3

 

 

 

 

第三步:剑归宗

 将剑进行运动,向他的中心点进发。剑向一个方向线性运动。谈到运动就是需要我们常常使用的速度和位移改变。

vx=speed*Math.cosA;

vy=speed*Math.sinA;

速度是向量,它可以分解成两个不同方向的分速度。根据角度偏移了。

剑。x+=vx;

剑。y+=vy; 在每一帧的刷新下,剑会产生位移改变。

剑2

 

代码清单:

 

 

 

下面乱剑一堆哈哈。这一个和之前一篇关于粒子爆效果原理是一样的,采用Math.atan2的方法处理运动方面很多角度问题。应用很广泛

 

 

 

 剑归宗

 

 

第四步:对剑的分布进行改造

有时候可以改变对图形的分布位置也能够创造出不一样的东西。采用圆 采用二维矩阵,都可以实现到。

下面是另外一个版本,采用的复制的手法不一样,有时候采用循环能够一次性看到全貌,但是有时候采用时间错开,会看到不一样的过程。Timer 类能够实现到时间错开的过程。我们可以对其进行改造看看效果如何

timer=new Timer(100);

 

timer.addEventListener(TimerEvent.TIMER,onTimer);

 

private function onTimer(event:TimerEvent):void

{

 

  按时间间隔创建对象,能够看到创建的过程。

}

 

剑第二中分布

 

下面为代码清单。

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值