1 pièce(s) jointe(s)
Problème d'affectation de valeur dans tableau de vecteur 3D.
Bonjour.
J'ai une structure comme ceci :
Code:
1 2 3 4 5 6 7 8
| struct Map
{
SDL_Surface *tileset;
std::string nameTileset;
std::vector<TileProp> props;
std::vector<std::vector<std::vector<int> > > tableMap;
int nbtiles_largeur_monde, nbtiles_hauteur_monde, nbCalques, LARGEUR_TILE, HAUTEUR_TILE, nbtilesX, nbtilesY;
}; |
J'initialise toutes mes variables en faisant une lecture d'un fichier txt.
Là ou j'ai du mal c'est dans cette partie du code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| for (int a(0); a < map.nbCalques; a++)
{
map.tableMap.push_back(std::vector<std::vector<int> >(map.nbCalques - 1));
for (int b(0); b < map.nbtiles_hauteur_monde; b++)
{
map.tableMap[a].push_back(std::vector<int>(map.nbtiles_largeur_monde));
for (int c(0); c < map.nbtiles_largeur_monde; c++)
{
bufferFichierMap >> map.tableMap[a][b][c];
}
}
} |
En gros, j'aimerais un tableau de ce style : map.tableMap[Nombre de calques dans l'image] [Hauteur du monde] [Colonne du monde].
mon fichiers est comme ceci :
Citation:
Calque 1 :
90 90 90 90 90
90 90 90 90 90
90 90 90 90 90
90 90 90 90 90
90 90 90 90 90
Calque 2 :
26 27 26 27 26
39 40 39 40 39
26 27 26 27 26
39 40 39 40 39
26 27 26 27 26
par la suite je supprimerais la ligne avant la ligne Calque 2 : et la ligne Calque 2 : pour coller les 2 calques de cette façon :
Citation:
Calques :
90 90 90 90 90
90 90 90 90 90
90 90 90 90 90
90 90 90 90 90
90 90 90 90 90
26 27 26 27 26
39 40 39 40 39
26 27 26 27 26
39 40 39 40 39
26 27 26 27 26
mais ce code ne fonctionne pas :
Pièce jointe 187301
Merci par avance pour votre aide !