. .
CREATE OR DIE Special Downloads Shop webinale

Schauplatz

CodeSnippets

MovieClip.easeRotateTo - Objekte beschleunigt drehen

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Verwendung

Wenn es um die Beschleunigung und die Rotation geht, dann dürfte die folgende easeRotateTo()-Methode genau das Richtige sein. Über die Parameter pZielWinkel, pZeit, pDirection und easing kann das Rotationsverhalten individuell angepasst werden. der Parameter pZielWinkelpZeit wird die Dauer der Rotationsbewegung festgelegt. Der Parameter pDirection legt die Rotationsrichtung fest, hierbei stehen long, short, cw oder ccw. Die Angabe long oder cw steht für eine Rotationsrichtung im Uhrzeigersinn und die Angabe short oder ccw entgegen dem Uhrzeigersinn. Der letzte Parameter easing legt die Beschleunigungsfunktion fest. Diese stammt aus dem Ease- und Tween-Klassen, welche einem seit Flash MX 2004 zur Verfügung stehen. Diese Methode eignet sich beispielsweise, um die Drehung einer Kompassnadel zu simulieren.

Code - ab Flash MX 2004
  1. MovieClip.prototype.easeRotateTo = function (pZielWinkel:Number, pZeit:Number, pDirection:String, easing:Function):Void
  2. {
  3. var winkelDiff:Number = (pZielWinkel - this._rotation) % 360;
  4. if (winkelDiff <= -180)
  5. {
  6. winkelDiff += 360;
  7. }
  8. else if (winkelDiff > 180)
  9. {
  10. winkelDiff -= 360;
  11. }
  12. if (winkelDiff < 0 && (pDirection == "long" || pDirection == "cw"))
  13. {
  14. winkelDiff += 360;
  15. }
  16. else if (winkelDiff > 0 && (pDirection == "long" || pDirection == "ccw"))
  17. {
  18. winkelDiff -= 360;
  19. }
  20. this.rotationTween.stop ();
  21. this.rotationTween = new mx.transitions.Tween (this, "_rotation", easing, this._rotation, this._rotation + winkelDiff, pZeit, true);
  22. };
  23. ASSetPropFlags (MovieClip.prototype, "easeRotateTo", 1);
HTML{ -->
Anwendung
  1. function rotieren ()
  2. {
  3. mc.easeRotateTo (Math.random () * 360, 1.5, "long", mx.transitions.easing.Strong.easeInOut);
  4. }
  5. setInterval(rotieren, 2000);
  6. rotieren ();
HTML{ -->

Caroline und Matthias Kannengiesser

Tags
    keine Tags
Kommentare
Bisher keine Kommentare