Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 30-05-2005, 10:40   #1 (permalink)
Self-proclaimed Genius
 
Benutzerbild von genesys
 
Registriert seit: Jul 2002
Ort: schweiz
Beiträge: 282
globalToLocal localToGlobal

Hi!

Hab wiedermal n kleines Problem

Folgendes:
Zu einem gewissen Zeitpunkt befindet sich innerhalb eines movieclips ein dummyobjekt. Ich moechte nun in einem anderen Movieclip an dem Ort, an dem sich dieses Dummyobjekt zu diesem Zeitpunkt befindet (von der Buehne aus gesehen), ein anderes Objekt hinklonen.

Dazu muss ich ja zuerst die lokalen koordinaten des dummyobjekts in globale umwandeln und dann zu lokalen des zweiten Objekts - richtig? Ich versuche das folgendermassen:

ActionScript:
  1. point = new Object();
  2.     point.x=_parent.world.path.interest.pointclone._x;
  3.     point.y=_parent.world.path.interest.pointclone._y;
  4.     _parent.world.path.interest.pointclone.removeMovieClip();
  5.     localToGlobal(point);
  6.     _parent.world.path.globalToLocal(point);
  7.     _parent.world.path.attachMovie("punkt", "position"+i,i);
  8.     trace(_parent.world.path["position"+i]._x);
  9.     _parent.world.path["position"+i]._x=point.x;
  10.     _parent.world.path["position"+i]._y=point.y;


aber irgendwie klappt das nicht . . . hab das mit dem globalToLocal wohl falsch verstanden . . . kann mir jemand helfen? Dankeschoen!
__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt - Albert Einstein
genesys ist offline   Mit Zitat antworten
Alt 30-05-2005, 11:00   #2 (permalink)
Eisverkäufer
 
Benutzerbild von AlexSchliebner
 
Registriert seit: Aug 2003
Ort: München
Beiträge: 81
Du brauchst den MC, von dem der Punkt stammt, zum umwandeln.

Ändere Deinen Code folgendermaßen:
ActionScript:
  1. point = new Object();
  2.     point.x=_parent.world.path.interest.pointclone._x;
  3.     point.y=_parent.world.path.interest.pointclone._y;
  4.     _parent.world.path.interest.pointclone.localToGlobal(point);
  5.     _parent.world.path.interest.pointclone.removeMovieClip();
  6.     _parent.world.path.globalToLocal(point);
  7.     _parent.world.path.attachMovie("punkt", "position"+i,i);
  8.     trace(_parent.world.path["position"+i]._x);
  9.     _parent.world.path["position"+i]._x=point.x;
  10.     _parent.world.path["position"+i]._y=point.y;
AlexSchliebner ist offline   Mit Zitat antworten
Alt 30-05-2005, 15:50   #3 (permalink)
Self-proclaimed Genius
 
Benutzerbild von genesys
 
Registriert seit: Jul 2002
Ort: schweiz
Beiträge: 282
super! das hat geklappt! demnach muss man vor localToGlobal und globalToLocal immer den Pfad zu dem Movieclip angeben, dessen lokale koordinaten fuer die Transformation verwendet werden sollen?
inwiefern spielt dann der Movieclip, dessen _x und _y koordinaten in point.x und point.y gespeichert wurden eine rolle?
Und wie funktioniert die transformation genau? guckt die funktion einfach alle unterobjekte von point durch und transformiert diejenigen, welche durch _x und _y koordinaten zugewiesen wurden?
__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt - Albert Einstein
genesys ist offline   Mit Zitat antworten
Alt 30-05-2005, 17:01   #4 (permalink)
Eisverkäufer
 
Benutzerbild von AlexSchliebner
 
Registriert seit: Aug 2003
Ort: München
Beiträge: 81
Bei der Konvertierung spielen 3 Faktoren eine Rolle:
  • das lokale Koordinatensystem: das ist der Pfad vor der Funktion
  • das globale Koordinatensystem: das ist gegeben (muß nicht übergeben werden)
  • der zu konvertierende Punkt: der Parameter der Funktion
über den Pfad kann die relative Verschiebung der einzelnen MCs zueinander ermittelt werden. Dann müssen die Koordinaten des Punktes noch addiert werden - fertig.

Flashintern läuft die Berechnung aber vielleicht anders.
AlexSchliebner 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 17:04 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele