diff src/alice/test/topology/fishmodel/alpha/MakeFrame.java @ 109:96674c803853 working

set background
author sugi
date Sun, 15 Jul 2012 20:48:01 +0900
parents a8f77957a477
children aa9fc077c286
line wrap: on
line diff
--- a/src/alice/test/topology/fishmodel/alpha/MakeFrame.java	Sun Jul 15 20:46:42 2012 +0900
+++ b/src/alice/test/topology/fishmodel/alpha/MakeFrame.java	Sun Jul 15 20:48:01 2012 +0900
@@ -1,15 +1,22 @@
 package alice.test.topology.fishmodel.alpha;
 
 import java.awt.GraphicsConfiguration;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.IOException;
 
+import javax.imageio.ImageIO;
+import javax.media.j3d.Background;
 import javax.media.j3d.BoundingSphere;
 import javax.media.j3d.BranchGroup;
 import javax.media.j3d.Canvas3D;
 import javax.media.j3d.DirectionalLight;
+import javax.media.j3d.ImageComponent2D;
 
 import javax.swing.JFrame;
 import javax.swing.JPanel;
 import javax.vecmath.Color3f;
+import javax.vecmath.Point3d;
 import javax.vecmath.Vector3f;
 
 import com.sun.j3d.utils.universe.SimpleUniverse;
@@ -40,6 +47,7 @@
 		
 		universe = new SimpleUniverse(canvas);
 		universe.addBranchGraph(createLight());
+		universe.addBranchGraph(setBackground());
 		/*
 		key = new KeyInput();
 		canvas.addKeyListener(key);
@@ -52,6 +60,25 @@
 		camera.setNominalViewingTransform();
 	}
 	
+	private BranchGroup setBackground(){
+		BranchGroup scene = new BranchGroup();
+		BufferedImage img = null;
+		try {
+			img = ImageIO.read(new File("../image/image1.jpg"));
+		} catch (IOException e) {
+		  	e.printStackTrace();
+		}
+		ImageComponent2D image = 
+				new ImageComponent2D(ImageComponent2D.FORMAT_RGBA8,img);
+		Background background = new Background(image);
+		background.setImageScaleMode(Background.SCALE_FIT_ALL);
+		BoundingSphere bounds = new BoundingSphere(new Point3d(0.0, 0.0, 0.0), Double.POSITIVE_INFINITY);
+		background.setApplicationBounds(bounds);
+		scene.addChild(background);
+		return scene;
+		
+	}
+	
 	private BranchGroup createLight(){
 		BranchGroup scene = new BranchGroup();
 		Color3f light_color  = new Color3f(1.7f,1.7f,1.7f);