Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 05-01-2006, 13:11   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2002
Beiträge: 597
Rotation um 360° mit easing gibt Probleme

Hallo,

ich bin momentan nur ein bisschen beim Testscribbeln.
Hab also folgendes Script:

PHP-Code:
MovieClip.prototype.easeRot = function(rotspeed) {
   
this.rot rot;
   
this.speed speed;
   
this.onEnterFrame = function() {
      
trace(this._rotation)
      var 
dx Math.round(this.rot-this._rotation);
      
this._rotation += dx/this.speed;
      if(
dx <=2){
          
delete this.onEnterFrame;      
          
this._rotation this.rot;
          
trace(this._rotation);
      }
      
     
   };
};

mc.easeRot(1805); 
Funktioniert soweit wunderbar. Wenn ich jetzt aber um mehr als 180° drehen will, dann dreht das Ding komplett durch. Weiß jemand warum ?

Danke
Randy ist offline   Mit Zitat antworten
Alt 05-01-2006, 13:20   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hallo!
Das hat damit zu tun, dass eine Rotation über 180° Minuswerte ausgibt.
PHP-Code:
MovieClip.prototype.easeRot = function(rotspeed) {
    
this.rot rot;
    
this.speed speed;
    
this.onEnterFrame = function() {
        
this._rotation>=this.r=this._rotation this.r=360+this._rotation;
        var 
dx Math.round(this.rot-this.r);
        
this._rotation += dx/this.speed;
        if (
dx<=2) {
            
delete this.onEnterFrame;
            
this._rotation this.rot;
        }
    };
};
mc.easeRot(2805); 
edit: ...mehr als 360° sind so jetzt allerdings auch nicht drin.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++

Geändert von Der Frager (05-01-2006 um 13:22 Uhr)
Der Frager ist offline   Mit Zitat antworten
Alt 05-01-2006, 13:21   #3 (permalink)
pensionist
 
Benutzerbild von troner
 
Registriert seit: Jan 2003
Ort: Thalheim b. Wels
Beiträge: 568
hallo

rotation wird zum negativ wert wenn es sich über 180 grad dreht!

das wird dann spätestens bei deiner if(dx < 2) zum problem weil natürlich sofort kleiner wird!

mfg

Geändert von troner (05-01-2006 um 13:23 Uhr)
troner ist offline   Mit Zitat antworten
Alt 05-01-2006, 13:23   #4 (permalink)
Neuer User
 
Registriert seit: Nov 2002
Beiträge: 597
Ich bedanke mich
Funktioniert.
Randy ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 03:30 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele