Flash 3D之旋转文字

通过Flash的正余弦及scaleX,scaleY,可以模拟3D效果,具体如下:

1、新建一RotationText.fla文件,新建一空白影片剪辑元件,当盛放文字的容器使用,并选择在第一帧导出类MC

2、退出元件编辑区,F9在帧上编写脚本:

var centerX:Number = 275;
var centerY:Number = 200;
var angle:Number = 0;
var speed:Number = 0.00015;
var sAngle:Number = 0.4;
//定义数组
var wzArr:Array = new Array();
this.graphics.beginFill(0x0,1);
this.graphics.drawRect(0,0,stage.stageWidth,stage.stageHeight);
this.graphics.endFill();
//设置要旋转的文字
var rotationText:String = "uncopyrightable!";
for (var i:uint = 0; i < rotationText.length; i++)
{
var mc:MC = new MC();
mc.x = centerX;
mc.y = centerY-50;
//取出每个字并放进数组
mc.mytext.text = rotationText.substr(i,1);
mc.mytext.selectable  = false;
wzArr.push(mc);
addChild(mc);
}
addEventListener(Event.ENTER_FRAME, onEnterFrameHandler);

function onEnterFrameHandler(e:Event):void
{
for (var j:uint = 0; j < rotationText.length; j++)
{
var xm:Number = mouseX;
var dx:Number = (xm - centerX) * speed;
var sx:Number=.2+.8*Math.cos(angle+sAngle*j);
var sy:Number = .6+.4*Math.abs(Math.cos((angle+sAngle*j)/2));
wzArr[j].x=Math.sin(angle+sAngle*j)*200+centerX;
wzArr[j].alpha = sy;
wzArr[j].scaleX = sx;
wzArr[j].scaleY = sy;
}
angle +=  dx;

}

Ctrl+Enter导出效果:


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西溪漫步

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值