Java Reference
In-Depth Information
Figure 50. Code segment and result for Util.java
1.
public BranchGroup createSceneGraph()
2.
{
3.
BranchGroup objRoot = new BranchGroup();
4.
5.
Transform3D trans3d = new Transform3D();
6.
trans3d.setTranslation(new Vector3f(0.5f,0.5f,-0.5f));
7.
TransformGroup trans = new TransformGroup(trans3d);
8.
Material material = new Material(new Color3f(0.0f,0.0f,0.0f), new Color3f(0.5f,0.5f,0.0f),
9.
new Color3f(0.0f,0.0f,0.0f), new Color3f(1.0f,1.0f,1.0f), 100f);
10.
Appearance appearance = new Appearance(); appearance.setMaterial(material);
11.
Sphere sphere = new Sphere(0.3f, appearance);
12.
objRoot.addChild(trans); trans.addChild(sphere);
13.
14.
Material material1 = new Material(new Color3f(0.0f,0.0f,0.0f), new Color3f(0.2f,0.0f,0.9f),
15.
new Color3f(0.0f,0.0f,0.0f), new Color3f(1.0f,1.0f,1.0f), 100f);
16.
Appearance appearance1 = new Appearance(); appearance1.setMaterial(material1);
17.
trans3d.setTranslation(new Vector3f(-0.5f,0.5f,-0.5f));
18.
TransformGroup trans1 = new TransformGroup(trans3d);
19.
Cylinder cylinder = new Cylinder(0.2f,0.5f, appearance1);
20.
objRoot.addChild(trans1); trans1.addChild(cylinder);
21.
22.
Material material2 = new Material(new Color3f(0.0f,0.0f,0.0f), new Color3f(0.0f,0.5f,0.9f),
23.
new Color3f(0.0f,0.0f,0.0f), new Color3f(1.0f,1.0f,1.0f), 100f);
24.
Appearance appearance2 = new Appearance(); appearance2.setMaterial(material2);
25.
trans3d.setTranslation(new Vector3f(-0.5f,-0.5f,-0.5f));
26.
TransformGroup trans2 = new TransformGroup(trans3d);
27.
Box box = new Box(0.2f,0.2f,0.2f,appearance2);
28.
objRoot.addChild(trans2); trans2.addChild(box);
29.
30.
Material material3 = new Material(new Color3f(0.0f,0.0f,0.0f), new Color3f(0.4f,0.1f,0.3f),
31.
new Color3f(0.0f,0.0f,0.0f), new Color3f(1.0f,1.0f,1.0f), 100f);
32.
Appearance appearance3 = new Appearance(); appearance3.setMaterial(material3);
33.
trans3d.setTranslation(new Vector3f(0.5f,-0.5f,-0.5f));
34.
TransformGroup trans3 = new TransformGroup(trans3d);
35.
Cone cone = new Cone(0.2f, 0.5f);
36.
cone.setAppearance(appearance3);
37.
objRoot.addChild(trans3); trans3.addChild(cone);
38.
39. DirectionalLight light = new DirectionalLight(new Color3f(1.0f,1.0f,0.0f), new Vector3f(-1f,0f,-
1f));
40.
light.setInfluencingBounds(new BoundingSphere(new Point3d(), 1000d));
41.
trans.addChild(light);
42.
43.
return objRoot;
44. }
Search WWH ::




Custom Search