annotate src/alice/test/topology/aquarium/MakeFrame.java @ 170:6a69891b7232 working

change view point
author sugi
date Thu, 27 Dec 2012 14:38:42 +0900
parents 36dc63d1bdcf
children 23d6a775a643
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.IOException;
146
36dc63d1bdcf read image from jar
sugi
parents: 142
diff changeset
6 import java.net.URL;
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.DirectionalLight;
109
96674c803853 set background
sugi
parents: 107
diff changeset
13 import javax.media.j3d.ImageComponent2D;
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
14
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
15 import javax.swing.JFrame;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
16 import javax.swing.JPanel;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
17 import javax.vecmath.Color3f;
109
96674c803853 set background
sugi
parents: 107
diff changeset
18 import javax.vecmath.Point3d;
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
19 import javax.vecmath.Vector3f;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
20
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
21 import com.sun.j3d.utils.universe.SimpleUniverse;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
22
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
23 public class MakeFrame {
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
24
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
25 private int fSizeX = 800;
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
26 private int fSizeY = 800;
141
4c71bbfe557d add mouse event
sugi
parents: 140
diff changeset
27 private ViewChange canvas;
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
28 private JFrame frame;
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
29 private ObjectList list = new ObjectList();
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
30
170
6a69891b7232 change view point
sugi
parents: 146
diff changeset
31 public MakeFrame(String str,float x){
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
32 frame = new JFrame(str);
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
33 frame.setSize(fSizeX,fSizeY);
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
34 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
35
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
36 JPanel cp = new JPanel();
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
37 cp.setLayout(null);
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
38 frame.add(cp);
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
39
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
40 GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration();
170
6a69891b7232 change view point
sugi
parents: 146
diff changeset
41 canvas = new ViewChange(x,0.01f,config);
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
42 canvas.setBounds(0,0,fSizeX,fSizeY);
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
43 cp.add(canvas);
82
5cf20458b9e0 paste texture on the object
sugi
parents: 81
diff changeset
44
141
4c71bbfe557d add mouse event
sugi
parents: 140
diff changeset
45 canvas.universe.addBranchGraph(createLight());
4c71bbfe557d add mouse event
sugi
parents: 140
diff changeset
46 canvas.universe.addBranchGraph(setBackground());
132
1044a79ce4ef delete cs from OutputCodeSegment
sugi
parents: 127
diff changeset
47
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
48 canvas.addKeyListener(new KeyInputCodeSegment(this));
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
49 frame.setVisible(true);
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
50
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
51 }
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
52
109
96674c803853 set background
sugi
parents: 107
diff changeset
53 private BranchGroup setBackground(){
96674c803853 set background
sugi
parents: 107
diff changeset
54 BranchGroup scene = new BranchGroup();
96674c803853 set background
sugi
parents: 107
diff changeset
55 BufferedImage img = null;
96674c803853 set background
sugi
parents: 107
diff changeset
56 try {
146
36dc63d1bdcf read image from jar
sugi
parents: 142
diff changeset
57 URL url = getClass().getClassLoader().getResource("image1.jpg");
36dc63d1bdcf read image from jar
sugi
parents: 142
diff changeset
58 img = ImageIO.read(url);
109
96674c803853 set background
sugi
parents: 107
diff changeset
59 } catch (IOException e) {
96674c803853 set background
sugi
parents: 107
diff changeset
60 e.printStackTrace();
96674c803853 set background
sugi
parents: 107
diff changeset
61 }
96674c803853 set background
sugi
parents: 107
diff changeset
62 ImageComponent2D image =
96674c803853 set background
sugi
parents: 107
diff changeset
63 new ImageComponent2D(ImageComponent2D.FORMAT_RGBA8,img);
96674c803853 set background
sugi
parents: 107
diff changeset
64 Background background = new Background(image);
96674c803853 set background
sugi
parents: 107
diff changeset
65 background.setImageScaleMode(Background.SCALE_FIT_ALL);
170
6a69891b7232 change view point
sugi
parents: 146
diff changeset
66 BoundingSphere bounds = new BoundingSphere(new Point3d(), 10.0);
109
96674c803853 set background
sugi
parents: 107
diff changeset
67 background.setApplicationBounds(bounds);
96674c803853 set background
sugi
parents: 107
diff changeset
68 scene.addChild(background);
96674c803853 set background
sugi
parents: 107
diff changeset
69 return scene;
96674c803853 set background
sugi
parents: 107
diff changeset
70
96674c803853 set background
sugi
parents: 107
diff changeset
71 }
96674c803853 set background
sugi
parents: 107
diff changeset
72
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
73 private BranchGroup createLight(){
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
74 BranchGroup scene = new BranchGroup();
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
75 Color3f light_color = new Color3f(1.7f,1.7f,1.7f);
170
6a69891b7232 change view point
sugi
parents: 146
diff changeset
76 Vector3f light_direction = new Vector3f(0.0f,0.0f,-1.0f);
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
77 DirectionalLight light = new DirectionalLight(light_color,light_direction);
170
6a69891b7232 change view point
sugi
parents: 146
diff changeset
78 BoundingSphere bounds = new BoundingSphere(new Point3d(), 10.0);
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
79 light.setInfluencingBounds(bounds);
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
80 scene.addChild(light);
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
81 return scene;
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
82 }
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
83
89
e269cedd8bae Test two fish
sugi
parents: 88
diff changeset
84 public void register(MakeObject obj){
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
85 list.table.add(obj);
89
e269cedd8bae Test two fish
sugi
parents: 88
diff changeset
86 BranchGroup group = obj.createBranch();
141
4c71bbfe557d add mouse event
sugi
parents: 140
diff changeset
87 this.canvas.universe.addBranchGraph(group);
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
88 }
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
89
141
4c71bbfe557d add mouse event
sugi
parents: 140
diff changeset
90 public ViewChange getCanvas(){
88
33a19ca88e43 Singleton is removed .
sugi
parents: 85
diff changeset
91 return this.canvas;
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
92 }
140
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
93
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
94 public JFrame getJFrame(){
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
95 return this.frame;
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
96 }
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
97
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
98 public ObjectList getList(){
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
99 return this.list;
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
100 }
b51d3bf971e7 add function (refresh)
sugi
parents: 138
diff changeset
101
81
02dfb6c72632 This is movement test
sugi
parents:
diff changeset
102 }