2014-10-01 9 views
0

보다 복잡한 경로를 따라 객체를 이동하는 데 actionscript 2를 사용하는 방법에 대한 정보를 찾는 데 문제가 있습니다. x 방향이나 y 방향으로 트위닝해야하는 경우에는 아무런 문제가 없습니다. 그러나 객체가 곡선 경로를 따르도록하려면 모션 가이드 나 곡선을 따라갈 수있는 샘플 코드를 제공 할 수 있습니다. 베지 너 같은 길? 나는 그것을 사용에 대한 갈 것이라고 확실하지 않아요,이 코드의 아주 멋진 작은 조각이지만경로를 따르는 ActionScript 2

Tween1(); 
function Tween1(){ 
    setTimeout(theTween, 0); 
    function theTween(){ 
     var myTween:Tween = new Tween(Object, "_x", Regular.easeOut, 0, 100, 1, true); 
     var myTween:Tween = new Tween(Object, "_y", Regular.easeOut, 0, 100, 1, true); 
} 

답변

0

Animate along bezier curve

var circle:Shape = Shape(addChild(new Shape)); 
with(circle.graphics) beginFill(0x000000), drawCircle(0,0,5); 

var bezierPoint:Point = new Point(); 
function bezier(a:Number, x1:Number, y1:Number, x2:Number, y2:Number, x3:Number, y3:Number):void { 
     var b:Number =1-a; 
     var pre1:Number=a*a; 
     var pre2:Number=2*a*b; 
     var pre3:Number=b*b; 
     bezierPoint.x = pre1*x1 + pre2*x2 + pre3*x3; 
     bezierPoint.y = pre1*y1 + pre2*y2 + pre3*y3; 
} 

var inc:Number = 0; 
var theta:Number = 0; 

addEventListener(Event.ENTER_FRAME, onLoop); 
function onLoop(evt:Event):void { 

    graphics.clear(); 
    graphics.lineStyle(0,0xFF0000); 
    graphics.moveTo(200,200); 
    graphics.curveTo(mouseX, mouseY, 400, 200); 

    inc += .03; 
    inc %= 1; 

    bezier(inc, 200, 200, mouseX, mouseY, 400, 200); 
    circle.x = bezierPoint.x; 
    circle.y = bezierPoint.y; 
} 
+0

시도 : 여기

는 평소 코드 이 경로가 마우스와 함께 자동 생성되는 것으로 보이는 특정 경로의 1 회 애니메이션. – nr20

+0

이 코드로 실험 해 보면 거기에 도달해야합니다! – Fergoso