bonjour à tous ! :jap:
c’est un peu vague, comme titre, mais je savais pas comment dire autrement…
En fait, je début avec java3d et je veux creer un plateau, composé d’objets élémentaires : les cases.
Une case a une méthode qui renvoit un branchGroup qui la contient :
public BranchGroup dessiner3d(){
//on créer un BranchGroup principal :
BranchGroup Case3d = new BranchGroup();
........
.....
return (Case3d);
}
Ca, sa marche sans problemes.
Apres, je fais un plateau, qui est composé d’un tableau à 2 dimension d’objets Case.
Mon problem, c’est que je voudrais avoir une méthode similaire, qui me revoit un BranchGroup qui contient l’objet plateau, mais je comprend pas comment je peux faire, vu qu’un BranchGoup ne peut pas contenir d’autres BranchGroup… :??:
Le seul moyen que j’ai trouvé, c’est de passer l’univers en parametre à une fonction du plateau pour lui ajouter le BranchGroup de chaque Case…
public void ajouterBranches(SimpleUniverse su){
BranchGroup[][] bg = new BranchGroup[taille][taille];
for (int h=0; h<taille; h++){
for (int v=0; v<taille; v++){
bg[h][v]= Case[h][v].dessiner3d();
bg[h][v].compile();
su.addBranchGraph(bg[h][v]);
}
}
}
mais cette méthode en fait ne me convient pas, car je ne peut pas traiter le plateau “comme un objet”, par exemple, je voudrais lui appliquer une rotation : par ma méhode il faut que j’applique la rotation à chaque case, et donc elles se superposent et donc ce n’est pas du tout ce que je veux.
En fait il me faut une méthode qui me renvoit un BranchGroup de l’objet tableau, mais je ne sais pas comment faire…
J’espere que j’ai été comprehensible, et que vous pourrez m’aider !
merci d’avance !