View Javadoc

1   /* -------------------------------------------------------------------
2    * Java source file for the class SeekableRenderer
3    * 
4    * Copyright (c), 2003, Masahiro Takatsuka.
5    * All Rights Researved.
6    * 
7    * Original Author: Masahiro Takatsuka (masa@jbeans.net)
8    * $Author: takatsukam $
9    * 
10   * $Date: 2004/03/03 11:53:06 $
11   * 
12   * $Id: SeekableRenderer.java,v 1.3 2004/03/03 11:53:06 takatsukam Exp $
13   * 
14   * Reference:		Document no:
15   * ___				___
16   * 
17   * To Do:
18   * ___
19   * 
20  ------------------------------------------------------------------- */
21  
22  /* --------------------------- Package ---------------------------- */
23  package net.jbeans.j3d.renderer;
24  
25  /* ------------------ Import classes (packages) ------------------- *//package-summary/html">class="comment"> ------------------ Import classes (packages) ------------------- *//package-summary.html">class="comment">/* ------------------ Import classes (packages) ------------------- *//package-summary.html">class="comment"> ------------------ Import classes (packages) ------------------- */
26  import java.awt.event.*;
27  import javax.media.j3d.*;
28  import com.sun.j3d.loaders.*;
29  
30  import net.jbeans.j3d.universe.*;
31  
32  /* -------------------------- for main() -------------------------- */
33  import java.io.*;
34  import java.util.*;
35  import javax.swing.*;
36  import javax.media.j3d.*;
37  import com.sun.j3d.utils.geometry.*;
38  
39  import net.jbeans.ui.window.*;
40  import net.jbeans.ui.*;
41  
42  import net.jbeans.j3d.transform.*;
43  
44  /*====================================================================
45                 Implementation of class SeekableRenderer               
46  ====================================================================*/
47  /***
48   * generally describe SeekableRenderer in here
49   * 
50   * @version $Revision: 1.3 $
51   * @author Masahiro Takatsuka (masa@jbeans.net)
52   * @see ManipulatableRenderer
53   */
54  
55  public class SeekableRenderer extends ManipulatableRenderer {
56  	/***
57  	 * Constructs a new SeekableRenderer object.
58  	*/
59  	SeekableRenderer() {
60  		this("Seekable Renderer");
61  	}
62  
63  	/***
64  	* Constructs a new Renderer object.
65  	*                                         Masahiro Takatsuka/1999-Jun-11
66  	*/
67  	SeekableRenderer(String title) {
68  		super(title);
69  		((Universe)getUniverse()).setInitialNumChildren();
70  	}
71  
72    	protected Universe createUniverse(Canvas3D canvas3d) {
73    		return new SeekableUniverse(canvas3d);
74    	}
75  
76  	public void viewAll() {
77  		((SeekableUniverse) getUniverse()).viewAll();
78  	}
79  
80  	/***
81  	 *  This main method will be used when BasicRenderer is running as an application.
82  	 */
83  //  	public static void main(String[] args) {
84  //  		SeekableRenderer renderer = new SeekableRenderer() ;
85  //  		JFrame myFrame = new JFrame();
86  //  		myFrame.getContentPane().add(renderer);
87  //  		myFrame.setTitle(renderer.getName());
88  //  		myFrame.pack();
89  //  		myFrame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);		
90  //  		new WindowCloseAdapter(myFrame, WindowCloseAdapter.EXIT_ON_CLOSE);
91  //  		UiUtil.centerComponent(myFrame, null);
92  //  		myFrame.setVisible(true);
93  
94  //  		// Create the transform group node and initialize it to the
95  //  		// identity.  Enable the TRANSFORM_WRITE capability so that
96  //  		// our behavior code can modify it at runtime.  Add it to the
97  //  		// root of the subgraph.
98  //   		TransformGroup objTrans = new TransformGroup();
99  //  		// Create a simple shape leaf node, add it to the scene graph.
100 //  		ColorCube cube = new ColorCube(0.4);
101 //  		cube.setCapability(Shape3D.ALLOW_GEOMETRY_READ);
102 //  		cube.setCapability(Node.ALLOW_BOUNDS_READ);
103 //  		cube.setCapability(Node.ALLOW_LOCAL_TO_VWORLD_READ);		
104 //  		Enumeration enum = cube.getAllGeometries();
105 //  		Geometry geom;
106 //  		for(; enum.hasMoreElements();){
107 //  			geom = (Geometry) enum.nextElement();
108 //  			geom.setCapability(GeometryArray.ALLOW_COORDINATE_READ);
109 //  			geom.setCapability(GeometryArray.ALLOW_COUNT_READ);
110 //  			geom.setCapability(IndexedGeometryArray.ALLOW_COORDINATE_INDEX_READ);
111 //  			geom.setCapability(GeometryArray.ALLOW_FORMAT_READ);
112 //  		}
113 //      	objTrans.addChild(cube);
114 //  		objTrans.setCapability(Node.ALLOW_AUTO_COMPUTE_BOUNDS_READ);
115 //  		objTrans.setCapability(Node.ALLOW_AUTO_COMPUTE_BOUNDS_WRITE);
116 
117 //  		renderer.addGroup(objTrans);
118 //  	}
119 }