Page 1 sur 1
[Unity] Tableaux a deux dimensions
Posté : 09 mars 2022, 16:40
par MiGaNuTs
Bonjour,
J'aimerai pouvoir utiliser des tableaux a 2 dimensions sous Unity.
J'ai essayé de déclarer des trucs du genre array[0..10] of (Array [0..10] of int) mais ca ne veux pas.
Est ce parce que je l'ecrit mal, ou parce que ce n'est pas possible ?
Re: Unity : Tableaux a deux dimensions
Posté : 09 mars 2022, 16:54
par AC23
Bonjour,
Pour des tableaux multi dimensions la syntaxe est : <variable name> : ARRAY[ <1st dimension> ( , <next dimension> )+ ] OF <data type> ( := <initialization> )? ;
Exemple : monTableau : ARRAY[1..2, 1..2] OF INT;
Bien cordialement;
Edit: Rien à voir, mais quand j'utilise un tableau pour stocker plusieurs informations. Par exemple : Date, Heure, mesure1 , mesure2... Donc avec différents types de variable. Je déclare un Struct, ensuite un je fais un array de ce struct (donc un array à une dimension). Cela permet d'éviter de stocker la mauvaise valeur dans le mauvais endroit.
Exemple :
Mon struct:
TYPE structHistorique :
STRUCT
H_Date: DT;
H_Pres: REAL;
H_Mesure1: REAL;
H_Mesure2: INT;
END_STRUCT
END_TYPE
Mon array:
Historique : ARRAY [1..10] OF structHistorique;
L'utilisation:
Historique[index].H_Date := LaDateEtHaure;
Historique[index].H_Pres := LaPres;
...
Voilà, j'espère t'avoir aidé
Re: Unity : Tableaux a deux dimensions
Posté : 09 mars 2022, 22:26
par itasoft
slts,
A ce propos, on ne peut pas faire de tri sur tableau à deux dimension, je m'étais paluché un DFB , voir mon post si besoin
viewtopic.php?f=15&t=5475&p=38092&hilit ... 151#p38092
Re: Unity : Tableaux a deux dimensions
Posté : 10 mars 2022, 07:28
par Béryl
J'emploie aussi les structures même avec un seul type de variable, car les noms de variables sont plus parlants qu'avec des tableaux.
Ex : toto.titi:=True est plus lisible que toto[0]=True.
Et ça évite de passer par des alias, que je préfère éviter.
L'inconvénient (minime) étant que pour initialiser des tableaux de structure, il faut passer par une boucle, le MOVE n'étant pas possible, même s'il n'y a qu'un seul type de variable.
Re: Unity : Tableaux a deux dimensions
Posté : 10 mars 2022, 09:31
par AC23
Béryl a écrit : ↑10 mars 2022, 07:28
J'emploie aussi les structures même avec un seul type de variable, car les noms de variables sont plus parlants qu'avec des tableaux.
Ex : toto.titi:=True est plus lisible que toto[0]=True.
Et ça évite de passer par des alias, que je préfère éviter.
L'inconvénient (minime) étant que pour initialiser des tableaux de structure, il faut passer par une boucle, le MOVE n'étant pas possible, même s'il n'y a qu'un seul type de variable.
Très bonne remarque, c'est vrai que dans les rares cas où j'ai utilisé cette méthode. Je n'avais pas besoin de faire une initialisation (

).
Moi monsieur

, S'il est en ST c'est encore mieux

Re: Unity : Tableaux a deux dimensions
Posté : 10 mars 2022, 10:31
par itasoft
@AC23
la ligne d'appel
TRI_TABLES_AB_INT_0(true,TABLE_A_source,TABLE_B_source,TABLE_A_result,TABLE_B_result);
pour le fdb donner @mail en MP
Re: Unity : Tableaux a deux dimensions
Posté : 22 mars 2022, 18:04
par MiGaNuTs
Merci pour ces precisions

Pour me decoincer j'était parti sur un tableau de structures. A voir si je repasse sur un tableau 2d ou pas.
Pour le moment je vais continuer a profiter de mes vacances.
Re: Unity : Tableaux a deux dimensions
Posté : 22 mars 2022, 20:05
par steph68
Salut,
Autre alternative, tu peux simuler un tableau à 2 dimensions en utilisant un tableau à 1 dimension.
Exemple avec un tableau 2d:
déclaration:
utilisation:
Exemple avec un tableau 1d:
déclaration:
utilisation:
C'est utile si tu as des IHM qui ne savent adresser que du tableau 1d par exemple (cas des IHM Siemens).
@+