|
How to navigate the virtual world with mouse |
|
|
The three specific mouse behavior classes,MouseRotate,MouseTranslate and MouseZoom,
can be used to create a virtual universe in which the mouse is used for navigation.
Each of the specific mouse behavior classes has a constructor that takes a single
int flags parameter. When the MouseBehavior.INVERT_INPUTS is used as the argument to
this constructor, the mouse behavior responds in the opposite direction.
The example program MouseNavigatorApp uses instances of the three specific mouse
behavior classes for navigational interaction.
public BranchGroup createSceneGraph(SimpleUniverse su) {
BranchGroup objRoot = new BranchGroup();
TransformGroup vpTrans = null;
BoundingSphere mouseBounds = null;
vpTrans = su.getViewingPlatform().getViewPlatformTransform();
objRoot.addChild(new ColorCube(0.4));
mouseBounds = new BoundingSphere(new Point3d(), 1000.0);
MouseRotate myMouseRotate = new MouseRotate(MouseBehavior.INVERT_INPUT);
myMouseRotate.setTransformGroup(vpTrans);
myMouseRotate.setSchedulingBounds(mouseBounds);
objRoot.addChild(myMouseRotate);
MouseTranslate myMouseTranslate = new MouseTranslate(
MouseBehavior.INVERT_INPUT);
myMouseTranslate.setTransformGroup(vpTrans);
myMouseTranslate.setSchedulingBounds(mouseBounds);
objRoot.addChild(myMouseTranslate);
MouseZoom myMouseZoom = new MouseZoom(MouseBehavior.INVERT_INPUT);
myMouseZoom.setTransformGroup(vpTrans);
myMouseZoom.setSchedulingBounds(mouseBounds);
objRoot.addChild(myMouseZoom);
objRoot.compile();
return objRoot;
}
|
Related Tips
|
Page 1 of 0 ( 0 comments )
You can share your information about this topic using the form below!
Please do not post your questions with this form! Thanks.