Classe cube3D:
import java.awt.*;
import javax.media.j3d.*;
import com.sun.j3d.utils.universe.SimpleUniverse;
import com.sun.j3d.utils.geometry.ColorCube;
/**
* Test cube 3D pour Java
*
* @author Philippe Laneres
* @version 1.1, 5/10/98
* @since Test1.1
*
* exemple complet : le cube
*/
public class Cube3D extends Applet {
public void init ( ) {
/** Création d'un composant de classe Canvas3D
* permettant de visualiser une scène 3D
* -- Canvas3D
*/
Canvas3D canvas = new Canvas3D (SimpleUniverse.getPreferredConfiguration ( ));
setLayout (new BorderLayout ( ));
add (canvas, BorderLayout.CENTER);
/** Création de la scène 3D à visualiser
* -- createSceneTree ( routine user )
*/
BranchGroup scene = createSceneTree ( );
/** Création d'un univers 3D
* rattaché au composant 3D
* -- SimpleUniverse
*/
SimpleUniverse universe = new SimpleUniverse (canvas);
/** Rattachement de la scène 3D à l'univers
* -- SimpleUniverse.addBranchGraph
*/
universe.addBranchGraph (scene);
/** Positionnement pour avoir une vue correcte
* sur la scène 3D (permet de voir une scène 3D
* contenue dans un cube d'1 unité de côté
* et centré sur le centre du repère i.e.
* recule l'oeil)
* -- SimpleUniverse.getViewingPlatform().setNominalViewingTransform()
*/
universe.getViewingPlatform ( ).setNominalViewingTransform ( );
}
public BranchGroup createSceneTree ( ) {
/** Racine de l'arbre des objets
* représentés dans la scène 3D
* -- BranchGroup
*/
BranchGroup root = new BranchGroup ( );
/** Création d'un cube coloré centré à l'origine
* dont deux des sommets opposés sont situés
* en (-0.5,-0.5,-0.5) et (0.5,0.5,0.5)
* -- ColorCube(0.5)
*/
ColorCube cube = new ColorCube (0.5);
/** Ajout du cube à la racine de l'arbre
* -- addChild
*/
root.addChild (cube);
return root;
}
}
Documentation