public class PickRotateBehavior extends PickMouseBehavior implements MouseBehaviorCallback
1. Create your scene graph.
2. Create this behavior with root and canvas.
PickRotateBehavior behavior = new PickRotateBehavior(canvas, root, bounds); root.addChild(behavior);
The above behavior will monitor for any picking events on the scene graph (below root node) and handle mouse rotates on pick hits. Note the root node can also be a subgraph node of the scene graph (rather than the topmost).
buttonPress, conditions, currGrp, debug, mevent, pickCanvas, wakeupCondition
ALLOW_AUTO_COMPUTE_BOUNDS_READ, ALLOW_AUTO_COMPUTE_BOUNDS_WRITE, ALLOW_BOUNDS_READ, ALLOW_BOUNDS_WRITE, ALLOW_COLLIDABLE_READ, ALLOW_COLLIDABLE_WRITE, ALLOW_LOCAL_TO_VWORLD_READ, ALLOW_LOCALE_READ, ALLOW_PARENT_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING
ROTATE, TRANSLATE, ZOOM
Constructor and Description |
---|
PickRotateBehavior(BranchGroup root,
Canvas3D canvas,
Bounds bounds)
Creates a pick/rotate behavior that waits for user mouse events for
the scene graph.
|
PickRotateBehavior(BranchGroup root,
Canvas3D canvas,
Bounds bounds,
int pickMode)
Creates a pick/rotate behavior that waits for user mouse events for
the scene graph.
|
Modifier and Type | Method and Description |
---|---|
void |
setupCallback(PickingCallback callback)
Register the class @param callback to be called each
time the picked object moves
|
void |
transformChanged(int type,
Transform3D transform)
Callback method from MouseRotate
This is used when the Picking callback is enabled
|
void |
updateScene(int xpos,
int ypos)
Update the scene to manipulate any nodes.
|
getMode, getTolerance, initialize, processStimulus, setMode, setTolerance
getEnable, getNumSchedulingIntervals, getSchedulingBoundingLeaf, getSchedulingBounds, getSchedulingInterval, getView, getWakeupCondition, postId, setEnable, setSchedulingBoundingLeaf, setSchedulingBounds, setSchedulingInterval, updateNodeReferences, wakeupOn
cloneNode, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocale, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable
clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString
public PickRotateBehavior(BranchGroup root, Canvas3D canvas, Bounds bounds)
root
- Root of your scene graph.canvas
- Java 3D drawing canvas.bounds
- Bounds of your scene.public PickRotateBehavior(BranchGroup root, Canvas3D canvas, Bounds bounds, int pickMode)
root
- Root of your scene graph.canvas
- Java 3D drawing canvas.bounds
- Bounds of your scene.pickMode
- specifys PickTool.PICK_BOUNDS or PickTool.PICK_GEOMETRY.PickTool.setMode(int)
public void updateScene(int xpos, int ypos)
updateScene
in class PickMouseBehavior
xpos
- Current mouse X pos.ypos
- Current mouse Y pos.public void transformChanged(int type, Transform3D transform)
transformChanged
in interface MouseBehaviorCallback
type
- will be one of ROTATE, TRANSLATE or ZOOMpublic void setupCallback(PickingCallback callback)
Copyright © 2016–2022 SciJava. All rights reserved.