Mercurial > hg > jslab
diff examples/java3d/hello4.java @ 1:5df24c91468d
Oh my what a mess.
author | samer |
---|---|
date | Fri, 05 Apr 2019 16:26:00 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/java3d/hello4.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,57 @@ +import samer.core.*; +import javax.media.j3d.*; +import javax.vecmath.*; +import com.sun.j3d.utils.universe.*; +import com.sun.j3d.utils.behaviors.keyboard.*; + +public class hello4 extends util implements Agent +{ + BranchGroup root=new BranchGroup(); + Canvas3D canvas=new Canvas3D(null); + + public static void main(String[] args) + { + init(); + expose((new hello4()).canvas,"hello"); + } + + public hello4() + { + canvas=new Canvas3D(getGraphicsConfiguration()); + + Shell.print("stereo? "+ canvas.getStereoAvailable()); + Shell.print("antialiasing? "+ canvas.getSceneAntialiasingAvailable()); + // canvas.stopRenderer(); + + SimpleUniverse U = new SimpleUniverse(canvas); + TransformGroup tg = new TransformGroup(); + + addRotator(tg); + addKeyNavigator(tg,U.getViewingPlatform().getViewPlatformTransform()); + addBackground(root,new Background(0.1f,0.2f,0.15f)); + + Transform3D shrink=new Transform3D(); + shrink.setScale(0.6); + TransformGroup sg=new TransformGroup(shrink); + tg.addChild(sg); + sg.addChild(yoyoGroup()); + root.addChild(tg); + + root.compile(); + + U.getViewingPlatform().setNominalViewingTransform(); + U.addBranchGraph(root); + + Shell.registerAgent(this); + Shell.exposeCommands(this); + + //setViewPolicy(canvas.getView()); + } + + public void getCommands(Agent.Registry r) { r.add("start").add("stop"); } + public void execute(String cmd, Environment env) { + if (cmd.equals("start")) { canvas.startRenderer(); } + else if (cmd.equals("stop")) { canvas.stopRenderer(); } + } + +} \ No newline at end of file