Test Java3D

cube3D

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
LANERES Philippe