Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363

    Array.. multidimensionali?

    Ciao!
    Devo associare ad una coppia di valori un'altra coppia di valori. Per fare un esempio, ad una coppia di coordinate x, y deve corrispondere un'altra coppia di coordinate a, b.

    Esempio

    codice:
     x    y     a    b
    ---------------------
     0    0     43  21
     0    1     12  23
     1    0     42  42
     1    1     52  21
     2    0     84  51
     2    1     16  73
     3    0     48  38
    .....
    Il numero di queste combinazioni è fisso. Io avevo pensato di creare un array in questo modo:

    Coord = New Array
    Coord[0,0] = [43,21]
    Coord[0,1] = [12,23]
    Coord[1,0] = [42,42]
    ecc...

    È corretto? Come faccio poi, dati due valori di x e y a recuperare i corrispondenti a e b?

    Grazie!

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    mi da l'impressione di non essere correttissimo sopratutto perchè [0,0] non è l'indice di un array...

    volendo usare un array bidimensionale la situazione dovrebbe essere questa

    var array = new Array([43, 21], [12, 23]);
    trace(array[0][0]); // output: 43
    trace(array[0][1]); // output: 21
    trace(array[1][0]); // output: 12
    trace(array[1][1]); // output: 23

    quindi ad ogni coppia di valori corrisponde un indice dell'array, e ad ognuno dei due valori corrisponde 0 o 1 a seconda di quello che vuoi richiamare

  3. #3
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Mmmm forse non è la soluzione giusta...
    Quello che devo ottenere è "mappare" la situazione che allego sotto.

    Cioè, ho sempre una coppia di valori, uno rosso e uno blu. A seconda di quali valori ho, devo ricavare altri due valori, memorizzati in corrispondenza dell'incrocio tra valore rosso e blu.

    Come fareste voi?

  4. #4
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Ops, l'allegato...
    Immagini allegate Immagini allegate

  5. #5
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Trovato!
    Potre usare un array in questo modo, usando gli indici in corrispondenza delle lettere (quindi 0=A, 1=B, ecc):

    Coord[0]=[23.34, 12.23, 12.23, 12.23];
    Coord[1]=[23.34, 12.23, 12.23, 12.23];
    Coord[2]=[23.34, 58.49, 64.82, 12.23];
    Ecc...

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da longline
    Trovato!
    Potre usare un array in questo modo, usando gli indici in corrispondenza delle lettere (quindi 0=A, 1=B, ecc):

    Coord[0]=[23.34, 12.23, 12.23, 12.23];
    Coord[1]=[23.34, 12.23, 12.23, 12.23];
    Coord[2]=[23.34, 58.49, 64.82, 12.23];
    Ecc...
    la cosa cambiava un po' rispetto a come l'hai esposta la prima volta direi che così può andare bene. volendo potresti anche usare un object comunque se vuoi mantenere le lettere come "desinenze"

    var obj:Object = new Object();
    obj.A = [23.34, 12.23, 12.23, 12.23];
    obj.B = [23.34, 12.23, 12.23, 12.23];
    obj.C = [23.34, 58.49, 64.82, 12.23];

    e poi ti ritrovi i valori in questo modo

    trace(obj.A[0]); //output 23.34
    trace(obj.C[2]); //output 64.82

    non l'ho provato ma dovrebbe essere ok...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.