flash特效原理:标签云

  
  其实标签云是一个比较常见的特效类,在wondefl里面已经被做烂了,经典之余,涉及到知识点,是基于球体和旋转方面的数学应用,在这方面而言,标签云的制作并不是十分难,多少会有很多的意思,不妨尝试制作一下。这个程序已经是上一年写的,多少被丢到哪里去没有理了。今天写在这里,表示记录一下。
  颜色有点难看。
  
  简单测试: import org.summerTree.effect.TagCloud; import org.summerTree.effect.TagText; import flash.text.TextFormat; import org.summerTree.effect.IEffect; var tagArray:Array = ["Flash","Flex","AIR","JAVA","DePHI","JAVAScript", "OPENGL","网易","百度","搜狐","雅虎","谷歌","苹果","微软","甲骨文","Sun","adobe","盛大","腾讯","JAVAScript","OPENGL"]; var tagColor:Array = [0xff0000,0xFF8000,0xFFFF00,0x99CC99,0x00FFFF,0xFF 00FF,0xff0000,0xFF8000,0xFFFF00,0x99CC99,0x00FFFF,0 xFF00FF,0xff0000,0xFF8000,0xFFFF00,0x99CC99,0x00FFF F,0xFF00FF,0x99CC99,0x00FFFF,0xFF00FF]; var tagUrls:Array = ["http://www.baidu.com","http://www.baidu.com","ht tp://www.baidu.com","http://www.baidu.com","http:// www.baidu.com","http://www.baidu.com","http://www.b aidu.com","http://www.baidu.com","http://www.baidu. com","http://www.baidu.com","http://www.baidu.com", "http://www.baidu.com","http://www.baidu.com","http ://www.baidu.com","http://www.baidu.com","http://ww w.baidu.com","http://www.baidu.com","http://www.bai du.com","http://www.baidu.com","http://www.baidu.co m","http://www.baidu.com"]; var tags:TagCloud=new TagCloud();//创建标签云 tags.x = 250; tags.y = 200; addChild(tags); var effect:IEffect = new TagText(tagArray,tagUrls,tagColor,new TextFormat("Arial",20,0)); tags.appendTag(effect); 粒子模型。一个很实用的模型构建 //该类为粒子模型 //常用的粒子模型工具 package org.summerTree.effect { public class Particle { public var x:Number;//x 位置 public var y:Number;//y 位置 public var z:Number;//z 位置 public function Particle() { } } } 对应的接口: package org.summerTree.effect { public interface IEffect { function makeEffect():void; function getArray():Array; } } //TagCloud.as 标签云 //author 夏天的树人 package org.summerTree.effect { import flash.display.Sprite; import flash.display.DisplayObject; import flash.display.BitmapData; import flash.events.Event; import flash.text.TextField; import flash.filters.GlowFilter; import flash.filters.BlurFilter; import flash.filters.BitmapFilterQuality; import flash.text.TextFormat; import flash.geom.Point; public class TagCloud extends Sprite { private var tagContainer:Sprite=new Sprite();//标签容器 public var _speed:Number = 0.008;//速度 private var tags:Array; //标签数组 private var tag_len:int; //标签数组长度 private var fl:Number = 250; //焦距 private var p_list:Array = []; // 粒子列表 private var radius:Number=0; //半径 public function TagCloud() { addChild(tagContainer); } //添加标签 public function appendTag(effectObject:IEffect,radius:Number=140): void { addChild(DisplayObject(effectObject)); effectObject.makeEffect(); tags = effectObject.getArray(); tag_len = tags.length; this.radius=radius; for (var i:int=0; i重写一个,可以实现接口IEffect,把对应标签文字添加到数组里面可以借用TagCloud 来尝试制作。
  好,睡觉了。功课记录完毕。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值