Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 21-08-2003, 11:52   #1 (permalink)
Neuer User
 
Benutzerbild von apfel007
 
Registriert seit: May 2003
Ort: Hamburg
Beiträge: 161
Array auslesen

Moin !
Habe folgende Frage:

Was muß ich tun, damit in einer moviclip.prototype function ein Array komplett angenommen wird?
Das Array ist vorher erstellt und in der function sollen Werte ersetzt werden ...

array[1][2][3]

movieclip.prototype.Segmentvergebung = function(){

}

Wiso kann ich das Array im 1.Bild (Erstellung) komplett auslesen..

array[1][2] ----> x,x,x

und wenn ich das Gleiche in Bild 2 innerhalb der Funktion mache kommt folgendes heraus ...

array[1][2] ----> x x ist dann auch aus Deminsion 2 ?!?


Kann mir jemand sagen warum dass so ist ?

gruß apfel 007
apfel007 ist offline   Mit Zitat antworten
Alt 21-08-2003, 12:07   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Hast du das Array richtig dimensioniert? Bsp.:
ActionScript:
  1. meinArray = new Array();//z.B. meinArray[0]
  2. meinArray[0] = new Array();//z.B. meinArray[0][0]
  3. meinArray[0][0] = new Array();//z.B. meinArray[0][0][0]
  4.  
  Mit Zitat antworten
Alt 21-08-2003, 12:21   #3 (permalink)
Neuer User
 
Benutzerbild von apfel007
 
Registriert seit: May 2003
Ort: Hamburg
Beiträge: 161
Jo ich denke

jo ich denke, dass ich es richtig gemacht habe...
Bokel hat mal diese coole Sache gepostet...
habs auch schon von Hand probiert



ActionScript:
  1. _root.kreisenew Array()/// Hand
  2. for (var r = 1; r<=7; ++r) {
  3.     _root.kreise[r] = new Array();
  4.     for (var rr = 0; rr<=24; ++rr) {
  5.         kreise[r][rr] = new Array(4);
  6.     }
  7. }
  8.  
  9.  
  10. Array.createMultiDim = function( sizes_array, val) {  /// Bokel
  11.         var dimIdx = arguments[2] || 0;
  12.         var result_array = new Array();
  13.         var size = sizes_array[dimIdx];
  14.         //
  15.         if (++dimIdx < sizes_array.length) {
  16.                 while (size--) {
  17.                         result_array.push(Array.createMultiDim(sizes_array, val, dimIdx));
  18.                 }
  19.         } else {
  20.                 if( val !== undefined){
  21.                         while (size--) {
  22.                                 result_array.push( val);
  23.                         }
  24.                 }
  25.         }
  26.         return result_array;
  27. };
  28. _root.kreise = Array.createMultiDim([4, 24,4], 0);
ActionScript:
  1. _root.kreise = new
apfel007 ist offline   Mit Zitat antworten
Alt 21-08-2003, 12:27   #4 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Dann solltest du mal etwas mehr von deinem Script posten...
  Mit Zitat antworten
Alt 21-08-2003, 12:32   #5 (permalink)
Neuer User
 
Benutzerbild von apfel007
 
Registriert seit: May 2003
Ort: Hamburg
Beiträge: 161
Findest Du in dem Post von heut morgen...
is leider etwas länger ....hoffe Du steigst da durch ...
gruß apfel007
apfel007 ist offline   Mit Zitat antworten
Alt 21-08-2003, 15:39   #6 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Zitat:
....hoffe Du steigst da durch ...
Leider so nicht, poste die wichtigsten Teile noch mal im Zusammenhang, vor allem das mit der Segmentvergebungsfunktion und den vorher erzeugten Arrays.
  Mit Zitat antworten
Alt 21-08-2003, 16:36   #7 (permalink)
Neuer User
 
Benutzerbild von apfel007
 
Registriert seit: May 2003
Ort: Hamburg
Beiträge: 161
Talking das habe ich mir gedacht

Erstmal danke für Deine Gedult agedoubleju!
So, hab den Code runtergebrochen !

1.Bild
ActionScript:
  1. Array.createMultiDim = function( sizes_array, val) {
  2.         var dimIdx = arguments[2] || 0;
  3.         var result_array = new Array();
  4.         var size = sizes_array[dimIdx];
  5.         //
  6.         if (++dimIdx < sizes_array.length) {
  7.                 while (size--) {
  8.                         result_array.push(Array.createMultiDim(sizes_array, val, dimIdx));
  9.                 }
  10.         } else {
  11.                 if( val !== undefined){
  12.                         while (size--) {
  13.                                 result_array.push( val);
  14.                         }
  15.                 }
  16.         }
  17.         return result_array;
  18. };
  19.  
  20. ///kreis Array
  21. _root.kreise = Array.createMultiDim([4, 24,4], 0);
  22. for (var r1 = 1; r1<=4; ++r1) {
  23.     for (var rr2 = 6; rr2<=18; rr2 += 12) {
  24.         kreise[r1][rr2][0] = false;
  25.         kreise[r1][rr2][1] = false;}}

2.Bild
ActionScript:
  1. movieclip.prototype.Segmentvergebung = function() {
  2. ....
  3.  
  4. trace("kreis"+_root.kreise[1][12][2]);
  5. };
  6.  
  7. movieclip.prototype.makeLine = function() {
  8. ...
  9. this.Segmentvergebung();
  10. };
  11.  
  12. makeLine();
  13. stop();
apfel007 ist offline   Mit Zitat antworten
Alt 22-08-2003, 14:29   #8 (permalink)
Neuer User
 
Benutzerbild von apfel007
 
Registriert seit: May 2003
Ort: Hamburg
Beiträge: 161
Hallo !
Habe Prob gelöst!

Könnt es hier nachlesen!


http://www.flashforum.de/forum/showthread.php?s=&threadid=91918
apfel007 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 10:26 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele