annotate src/alice/test/topology/aquarium/MakeFrame.java @ 140:b51d3bf971e7 working

add function (refresh)
author sugi
date Thu, 20 Sep 2012 01:32:46 +0900
parents 87f1a30a8c82
children 4c71bbfe557d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
134
53aff28cde6b change package
sugi
parents: 132
diff changeset
1 package alice.test.topology.aquarium;
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
2
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
3 import java.awt.GraphicsConfiguration;
109
96674c803853 set background
sugi
parents: 107
diff changeset
4 import java.awt.image.BufferedImage;
96674c803853 set background
sugi
parents: 107
diff changeset
5 import java.io.File;
96674c803853 set background
sugi
parents: 107
diff changeset
6 import java.io.IOException;
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
7
109
96674c803853 set background
sugi
parents: 107
diff changeset
8 import javax.imageio.ImageIO;
96674c803853 set background
sugi
parents: 107
diff changeset
9 import javax.media.j3d.Background;
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
10 import javax.media.j3d.BoundingSphere;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
11 import javax.media.j3d.BranchGroup;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
12 import javax.media.j3d.Canvas3D;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
13 import javax.media.j3d.DirectionalLight;
109
96674c803853 set background
sugi
parents: 107
diff changeset
14 import javax.media.j3d.ImageComponent2D;
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
15
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
16 import javax.swing.JFrame;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
17 import javax.swing.JPanel;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
18 import javax.vecmath.Color3f;
109
96674c803853 set background
sugi
parents: 107
diff changeset
19 import javax.vecmath.Point3d;
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
20 import javax.vecmath.Vector3f;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
21
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
22 import com.sun.j3d.utils.universe.SimpleUniverse;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
23 import com.sun.j3d.utils.universe.ViewingPlatform;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
24
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
25 public class MakeFrame {
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
26
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
27 private int fSizeX = 800;
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
28 private int fSizeY = 800;
85
79816f4ec4dc minor change
sugi
parents: 84
diff changeset
29 private Canvas3D canvas;
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
30 private SimpleUniverse universe;
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
31 private JFrame frame;
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
32 private ObjectList list = new ObjectList();
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
33
110
aa9fc077c286 remove host from checkFishLocation
sugi
parents: 109
diff changeset
34 public MakeFrame(String str){
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
35 frame = new JFrame(str);
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
36 frame.setSize(fSizeX,fSizeY);
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
37 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
38
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
39 JPanel cp = new JPanel();
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
40 cp.setLayout(null);
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
41 frame.add(cp);
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
42
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
43 GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration();
82
5cf20458b9e0 paste texture on the object
sugi
parents: 81
diff changeset
44 canvas = new Canvas3D(config);
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
45 canvas.setBounds(0,0,fSizeX,fSizeY);
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
46 cp.add(canvas);
82
5cf20458b9e0 paste texture on the object
sugi
parents: 81
diff changeset
47
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
48 universe = new SimpleUniverse(canvas);
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
49 universe.addBranchGraph(createLight());
109
96674c803853 set background
sugi
parents: 107
diff changeset
50 universe.addBranchGraph(setBackground());
132
1044a79ce4ef delete cs from OutputCodeSegment
sugi
parents: 127
diff changeset
51
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
52 canvas.addKeyListener(new KeyInputCodeSegment(this));
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
53 frame.setVisible(true);
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
54
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
55 ViewingPlatform camera = universe.getViewingPlatform();
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
56 camera.setNominalViewingTransform();
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
57 }
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
58
109
96674c803853 set background
sugi
parents: 107
diff changeset
59 private BranchGroup setBackground(){
96674c803853 set background
sugi
parents: 107
diff changeset
60 BranchGroup scene = new BranchGroup();
96674c803853 set background
sugi
parents: 107
diff changeset
61 BufferedImage img = null;
96674c803853 set background
sugi
parents: 107
diff changeset
62 try {
96674c803853 set background
sugi
parents: 107
diff changeset
63 img = ImageIO.read(new File("../image/image1.jpg"));
96674c803853 set background
sugi
parents: 107
diff changeset
64 } catch (IOException e) {
96674c803853 set background
sugi
parents: 107
diff changeset
65 e.printStackTrace();
96674c803853 set background
sugi
parents: 107
diff changeset
66 }
96674c803853 set background
sugi
parents: 107
diff changeset
67 ImageComponent2D image =
96674c803853 set background
sugi
parents: 107
diff changeset
68 new ImageComponent2D(ImageComponent2D.FORMAT_RGBA8,img);
96674c803853 set background
sugi
parents: 107
diff changeset
69 Background background = new Background(image);
96674c803853 set background
sugi
parents: 107
diff changeset
70 background.setImageScaleMode(Background.SCALE_FIT_ALL);
96674c803853 set background
sugi
parents: 107
diff changeset
71 BoundingSphere bounds = new BoundingSphere(new Point3d(0.0, 0.0, 0.0), Double.POSITIVE_INFINITY);
96674c803853 set background
sugi
parents: 107
diff changeset
72 background.setApplicationBounds(bounds);
96674c803853 set background
sugi
parents: 107
diff changeset
73 scene.addChild(background);
96674c803853 set background
sugi
parents: 107
diff changeset
74 return scene;
96674c803853 set background
sugi
parents: 107
diff changeset
75
96674c803853 set background
sugi
parents: 107
diff changeset
76 }
96674c803853 set background
sugi
parents: 107
diff changeset
77
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
78 private BranchGroup createLight(){
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
79 BranchGroup scene = new BranchGroup();
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
80 Color3f light_color = new Color3f(1.7f,1.7f,1.7f);
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
81 Vector3f light_direction = new Vector3f(0.2f,-0.2f,-0.6f);
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
82 DirectionalLight light = new DirectionalLight(light_color,light_direction);
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
83 BoundingSphere bounds = new BoundingSphere();
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
84 light.setInfluencingBounds(bounds);
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
85 scene.addChild(light);
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
86 return scene;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
87 }
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
88
89
e269cedd8bae Test two fish
sugi
parents: 88
diff changeset
89 public void register(MakeObject obj){
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
90 list.table.add(obj);
89
e269cedd8bae Test two fish
sugi
parents: 88
diff changeset
91 BranchGroup group = obj.createBranch();
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
92 this.universe.addBranchGraph(group);
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
93
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
94 }
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
95
111
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
96 public SimpleUniverse getUniverse(){
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
97 return this.universe;
92
8e3c1217aad4 add KeyInput
sugi
parents: 89
diff changeset
98 }
8e3c1217aad4 add KeyInput
sugi
parents: 89
diff changeset
99
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
100 public Canvas3D getCanvas(){
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
101 return this.canvas;
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
102 }
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
103
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
104 public JFrame getJFrame(){
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
105 return this.frame;
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
106 }
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
107
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
108 public ObjectList getList(){
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
109 return this.list;
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
110 }
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
111
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
112 }