Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19-12-2004, 19:38   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2002
Ort: Hamburg City
Beiträge: 67
Question Verbindungs- Linien zwischen mehreren Objekten

Hallo! Folgendes Problem.

Eine Linie zwischen 2 Punkte zu ziehen und sie dynamisch anzupassen ist einfach. (Vektoren)
Nun wolllte ich dieses Prinzip auf eine unbegrenzte Anzahl von Punkten anwenden. Jede Sekunde wird ein neuer Punkt generiert (dubliziert) und eine Linie dazu. Funktioniert auch. Nun zu dem eigentlichen Problem:

die Linien haben einen falschen Winkel! Es ist bestimmt eine einfache Lösung aber ich hänge im Moment einfach dran.. komme nicht weiter... Anbei die Datei zum download!! Hilfe!!
Angehängte Dateien
Dateityp: zip problem.zip (5,1 KB, 20x aufgerufen)
__________________
www.thirtyonefps.com
derChiller ist offline   Mit Zitat antworten
Alt 20-12-2004, 10:44   #2 (permalink)
Neuer User
 
Registriert seit: Oct 2002
Ort: Hamburg City
Beiträge: 67
hat niemand eine idee?
__________________
www.thirtyonefps.com
derChiller ist offline   Mit Zitat antworten
Alt 20-12-2004, 13:13   #3 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
höh, Flash5-Syntax, noch nix von den FlashMX-Zeichenfunktionen(moveTo, lineTo etc.) gehört????
...oder muss die swf flash5-kompatibel sein???

Gruß

Alois
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 20-12-2004, 13:17   #4 (permalink)
Neuer User
 
Registriert seit: Oct 2002
Ort: Hamburg City
Beiträge: 67
nein.. aber die linie soll im endeffekt noch mehr beinhalten..

aber so müsste es doch auch gehen oder?!!
__________________
www.thirtyonefps.com
derChiller ist offline   Mit Zitat antworten
Alt 20-12-2004, 19:29   #5 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
Zitat:
aber die linie soll im endeffekt noch mehr beinhalten..
...hmmm, was denn, etwas sehr komplexes wird durch Verzerrung ja auch nicht gerade schöner, etwas einfaches kann man ja auch coden, ich hab Dir die ganze sache (im Endeffekt halt nur ein paar Zeilen Code) jetzt mal im MX-Syntax gemacht...

Edit: ...ansonsten in Deinem 'grundlinie'-mc den Code folgendermassen ändern:
ActionScript:
  1. onClipEvent(load){
  2.     b = (a-1)
  3. }
  4. onClipEvent (enterFrame) {
  5.  
  6.     _x = _root["bubble" add a]._x;
  7.     _y = _root["bubble" add a]._y;
  8. this._rotation=0;
  9.     this._xscale = _root["bubble" add b]._x - _root["bubble" add a]._x
  10.     this._yscale = _root["bubble" add b]._y - _root["bubble" add a]._y
  11.  
  12. }
...aber ich hoffe Du erkennst auch den praktischen Vorteil des MX-Codes gegenüber den Flash5-Code
Angehängte Dateien
Dateityp: zip test.zip (4,5 KB, 16x aufgerufen)
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-

Geändert von Alois (20-12-2004 um 19:50 Uhr)
Alois ist offline   Mit Zitat antworten
Alt 21-12-2004, 13:09   #6 (permalink)
Neuer User
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 6.415
warum nich komplett in AS aufbauen? jeden punkt als vektor darstellen,
dann klappt das zeichnen und der winkel bestens
und wenn du über die vektoren noch per createEmptyMovieClip dir container für weiteren inhalt an den verbindungsstellen erstellst bist du doch wunschlos glücklich

hier nen crashkurs
ActionScript:
  1. //zwei vektoren,2d sieht man hoffentlich : )
  2. v1={x1:0,x2:10}
  3. v2={x1:10,x2:7}
  4. //dein nullvektor
  5. org={x1:0,x2:0}
  6. //vektoren strecken
  7. ratio=10
  8. draw=function(f,t,r){
  9.     lineStyle(0)
  10.     moveTo(f.x1*ratio,f.x2*ratio)
  11.     lineTo((f.x1+t.x1)*ratio,(f.x2+t.x2)*ratio)
  12. }
  13. draw(org,v1,ratio)
  14. draw(org,v2,ratio)
  15. //skalar berechnen
  16. skalar=function(v1,v2){
  17.     return v1.x1*v2.x1+v1.x2*v2.x2
  18. }
  19. //betrag eines vektors
  20. betrag=function(v){
  21.     return Math.sqrt(v.x1*v.x1+v.x2*v.x2)
  22. }
  23. //winkel zwischen 2 vektoren
  24. w=skalar(v1,v2)/( betrag(v1)*betrag(v2) )
  25. trace(Math.acos(w)*180/Math.PI)


grüße
deluxe
Deluxe ist offline   Mit Zitat antworten
Alt 21-12-2004, 16:16   #7 (permalink)
Neuer User
 
Registriert seit: Oct 2002
Ort: Hamburg City
Beiträge: 67
Ich danke euch!!
__________________
www.thirtyonefps.com
derChiller 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 11:01 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele