| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Jan 2007
Beiträge: 2
|
Hallo ihr guten Freaks! Ich komme hier mal wieder nicht weiter. Ich will mandelbrotsche Schirmbäume erzeugen, schaffe es jedoch nicht, dass die erzeugten mcs verschachtelt werden: astFunktion= function(astName, tiefe, x, y, neigung, level, maxLevel) { _root.createEmptyMovieClip(astName, tiefe); // Positionieren: _root[astName]._x = x; _root[astName]._y = y; // Drehen: _root[astName]._rotation = neigung; // Skalieren: _root[astName]._xscale = _root[astName]._yscale = 50+random(40); // Zeichnen _root[astName].lineStyle (1, 0x000000); _root[astName].moveTo (0, 0); _root[astName].lineTo (0, -100); // Solange die maximale Rekursionstiefe noch nicht erreicht ist // werden jeweils 2 weitere Äste erstellt: if(level<maxLevel){ // Linker Ast: astFunktion(astName+".l", tiefe+1, 0, -100, Math.random() * -45, level+1, maxLevel); // Rechter Ast: astFunktion(astName+".r", tiefe+2, 0, -100, Math.random() * 45, level+1, maxLevel); }; } Ich weiß dass diese Lösung mit astName+".l" quatsch ist. allerdings ist der pfad der erzeugten clips richtig. wenn ich das trace, dann kommt z.B. "_level0.astName.l" etc. Aber "astName.l" befindet sich trotzdem nicht in "astName". eigentlich müsste es ja so laufen: der erste mc wird erzeugt mit _root[astName1], der zweite mit _root[astName1][astName2] usw... wie geht das fällt euch da was ein?Danke schonmal Grüße nelson |
| | |
| | #2 (permalink) |
| liebt Skorpionin Registriert seit: Apr 2003
Beiträge: 1.258
|
Natürlich landen alle MovieClips auf _root wenn du die Methode createEmptyMovieClip auf _root anwendest: Code: _root.createEmptyMovieClip(astName, tiefe); Du könntest Grundast und neuen Ast getrennt übergeben: Code: astFunktion= function(ast, neuerAst, tiefe, x, y, neigung, level, maxLevel) {
ast.createEmptyMovieClip(neuerAst, tiefe); |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Jan 2007
Beiträge: 2
|
Danke für die Antwort. Vom Prinzip her hast Du natürlich recht, das hab ich mir auch schon überlegt. Bloß müsste da bei jedem Durchlauf eine Variable dazu kommen, denn das ganze soll ja immer weiter verschachtelt werden. Bei maxLevel=9 gibt es z.B. Äste mit pfaden wie _root.stamm.l.l.r.l.l.l.r.l.r . Was ich auch schon probiert habe, ist "ast" z.B. mit "stamm.l.r" zu füllen und den mc dann mit _root[ast].creatEmptyMovieClip(neuerAst, tiefe) zu erzeugen. das funktioniert aber nicht. die frage ist also: wie kann ich den Pfad einer Anweisung aus beliebig vielen Variablen zusammensetzen? vielleicht irgendwie mit nem Array? |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |