Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-01-2004, 16:44   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2003
Beiträge: 46
Zufällige Positionierung von MC´s ohne Überschneidungen

Gudn Abend zusammen,
ich hab folgendes Problem:

Ich habe mehrere Objekte mit zufälligen Koordinaten die auf der Bühne plaziert werden.
Die Kunst ist es nun sich überschneidene Objekte zu vermeiden.

d.h. bei jedem Objekt das auf der Bühne plaziert wird, muss geschaut werden ob es sich mit einem schon existierenden Objekt auf der Bühne überschneidet (also hitTest=true).
Wenn dies der Fall ist soll das Objekt um 10 Pixel nach unten verschoben werden.

Nun das Problem:
Wenn ich das Objekt um 10 Pixel nach unten schiebe kann es natürlich wieder passieren das das verschobene Objekt über einem anderen liegt. Also muss es wieder verschoben werden usw....

Schön und gut. Das funktioniert auch halbwegs...Allerdings hat man bei vielen Objekten irgendwann ein Laufzeitproblem
z.B. es liegen schon 50 Objekte auf der Bühne und ich füge Objekt 51 ein. Jetzt durchlaufe ich 50 mal den HitTest um zu schauen ob das 51zigste sich mit einem anderen überschneidet. Wenn ja verschiebe ich es und durchlaufe dann nochmal 50 mal den hitTest um zu schauen ob das verschobene 51zigste Objekt sich wieder mit einem anderen überschneidet usw...

Die Anzahl der Schleifendurchläufe beträgt bei meinem angehängten .fla:
(anzahlObjekte-1)/2*anzahlObjekte_zum_Quadrat

Die Anzahl der Schleifendurchläufe beträgt also bei 40 Objekten: 32800
bei 60 objekten schon 106200

Das kann es doch nicht sein, oder??
Hat jemand vielleicht eine Idee wie man den Positionsvergleich effizienter gestalten kann???

Das müsste doch irgendwie rekursiv gehen

Danke für die Hilfe...

________________________________________
ElectroCunt
________________________________________
Angehängte Dateien
Dateityp: rar positionierung.rar (2,2 KB, 6x aufgerufen)
ElectroCunt 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 15:44 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele