flash鼠标左右拖动实现帧跳转怎么做?
我用36张照片放在不同的帧上做成一个水平360度的全景3D效果想用鼠标左右拖动来实现在帧上跳转实现3D旋转的效果请问要怎么做100分伺候...
我用36张照片放在不同的帧上 做成一个水平360度的全景3D效果 想用鼠标左右拖动来实现在帧上跳转 实现3D旋转的效果 请问要怎么做
100分伺候 展开
100分伺候 展开
3个回答
2013-09-14
展开全部
呵呵
首先 你先把这36张照片做到一个影片剪辑元件中,该元件第一帧停止
然后把这个元件拖到舞台上,命名为mc
然后在第一帧加入如下代码
var speed:Number=0.1;//速度参数,修改次参数可以调整速度
var long:int=mc.totalFrames;//总帧数
var newX:Number;
var frame:Number=mc.currentFrame;//当前是第几帧
stage.addEventListener(MouseEvent.MOUSE_DOWN,mdown);
stage.addEventListener(MouseEvent.MOUSE_UP,mup);
function mdown(e:MouseEvent):void {
newX=e.stageX;
stage.addEventListener(MouseEvent.MOUSE_MOVE,mmove);
}
function mup(e:MouseEvent):void {
stage.removeEventListener(MouseEvent.MOUSE_MOVE,mmove);
}
function mmove(e:MouseEvent):void {
if ((frame+(e.stageX-newX)*speed)>=1) {
frame=((frame+(e.stageX-newX)*speed)-1)%long+1;
} else if ((frame+(e.stageX-newX)*speed)>0) {
frame=long+frame+(e.stageX-newX)*speed;
} else {
frame=long-Math.abs(frame+(e.stageX-newX)*speed)%long;
}
newX=e.stageX;
mc.gotoAndStop(int(frame));
}
这个是AS3的代码 如果是AS2的话再补充,如果元件的实例名不方便为mc的话,可以改成别的,不过代码中的所有mc都要替换成新的名称
其实像做这种3D的东西,如果楼主代码基础好的话,可以参考下PV3D的资料,功能非常强大!
首先 你先把这36张照片做到一个影片剪辑元件中,该元件第一帧停止
然后把这个元件拖到舞台上,命名为mc
然后在第一帧加入如下代码
var speed:Number=0.1;//速度参数,修改次参数可以调整速度
var long:int=mc.totalFrames;//总帧数
var newX:Number;
var frame:Number=mc.currentFrame;//当前是第几帧
stage.addEventListener(MouseEvent.MOUSE_DOWN,mdown);
stage.addEventListener(MouseEvent.MOUSE_UP,mup);
function mdown(e:MouseEvent):void {
newX=e.stageX;
stage.addEventListener(MouseEvent.MOUSE_MOVE,mmove);
}
function mup(e:MouseEvent):void {
stage.removeEventListener(MouseEvent.MOUSE_MOVE,mmove);
}
function mmove(e:MouseEvent):void {
if ((frame+(e.stageX-newX)*speed)>=1) {
frame=((frame+(e.stageX-newX)*speed)-1)%long+1;
} else if ((frame+(e.stageX-newX)*speed)>0) {
frame=long+frame+(e.stageX-newX)*speed;
} else {
frame=long-Math.abs(frame+(e.stageX-newX)*speed)%long;
}
newX=e.stageX;
mc.gotoAndStop(int(frame));
}
这个是AS3的代码 如果是AS2的话再补充,如果元件的实例名不方便为mc的话,可以改成别的,不过代码中的所有mc都要替换成新的名称
其实像做这种3D的东西,如果楼主代码基础好的话,可以参考下PV3D的资料,功能非常强大!
2013-09-14
展开全部
用鼠标移动事件 根据鼠标移动距离来加减帧数咯~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-09-14
展开全部
ikukijhmkbn 你能明白男保姆不能不那么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询