Package javax.media.j3d
Class WakeupOnCollisionMovement
- java.lang.Object
-
- javax.media.j3d.WakeupCondition
-
- javax.media.j3d.WakeupCriterion
-
- javax.media.j3d.WakeupOnCollisionMovement
-
public final class WakeupOnCollisionMovement extends WakeupCriterion
Class specifying a wakeup when the specified object moves while in collision with any other object in the scene graph.
-
-
Field Summary
Fields Modifier and Type Field Description static int
USE_BOUNDS
Use geometric bounds as an approximation in computing collisions.static int
USE_GEOMETRY
Use geometry in computing collisions.
-
Constructor Summary
Constructors Constructor Description WakeupOnCollisionMovement(Bounds armingBounds)
Constructs a new WakeupOnCollisionMovement criterion.WakeupOnCollisionMovement(Node armingNode)
Constructs a new WakeupOnCollisionMovement criterion.WakeupOnCollisionMovement(Node armingNode, int speedHint)
Constructs a new WakeupOnCollisionMovement criterion.WakeupOnCollisionMovement(SceneGraphPath armingPath)
Constructs a new WakeupOnCollisionMovement criterion.WakeupOnCollisionMovement(SceneGraphPath armingPath, int speedHint)
Constructs a new WakeupOnCollisionMovement criterion.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Bounds
getArmingBounds()
Returns the bounds object used in specifying the collision condition.SceneGraphPath
getArmingPath()
Returns the path used in specifying the collision condition.Bounds
getTriggeringBounds()
Retrieves the Bounds object that caused the collisionSceneGraphPath
getTriggeringPath()
Retrieves the path describing the object causing the collision.-
Methods inherited from class javax.media.j3d.WakeupCriterion
hasTriggered
-
Methods inherited from class javax.media.j3d.WakeupCondition
allElements, triggeredElements
-
-
-
-
Field Detail
-
USE_GEOMETRY
public static final int USE_GEOMETRY
Use geometry in computing collisions.- See Also:
- Constant Field Values
-
USE_BOUNDS
public static final int USE_BOUNDS
Use geometric bounds as an approximation in computing collisions.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
WakeupOnCollisionMovement
public WakeupOnCollisionMovement(SceneGraphPath armingPath)
Constructs a new WakeupOnCollisionMovement criterion.- Parameters:
armingPath
- the path used to arm collision detection- Throws:
java.lang.IllegalArgumentException
- if object associated with the SceneGraphPath is other than a Group, Shape3D, Morph, or BoundingLeaf node.
-
WakeupOnCollisionMovement
public WakeupOnCollisionMovement(SceneGraphPath armingPath, int speedHint)
Constructs a new WakeupOnCollisionMovement criterion.- Parameters:
armingPath
- the path used to arm collision detectionspeedHint
- one of USE_GEOMETRY or USE_BOUNDS, specifies how accurately Java 3D will perform collision detection- Throws:
java.lang.IllegalArgumentException
- if hint is not one of USE_GEOMETRY or USE_BOUNDS.java.lang.IllegalArgumentException
- if object associated with the SceneGraphPath is other than a Group, Shape3D, Morph, or BoundingLeaf node.
-
WakeupOnCollisionMovement
public WakeupOnCollisionMovement(Node armingNode)
Constructs a new WakeupOnCollisionMovement criterion.- Parameters:
armingNode
- the Group, Shape, or Morph node used to arm collision detection- Throws:
java.lang.IllegalArgumentException
- if object is under a SharedGroup node or object is other than a Group, Shape3D, Morph or BoundingLeaf node.
-
WakeupOnCollisionMovement
public WakeupOnCollisionMovement(Node armingNode, int speedHint)
Constructs a new WakeupOnCollisionMovement criterion.- Parameters:
armingNode
- the Group, Shape, or Morph node used to arm collision detectionspeedHint
- one of USE_GEOMETRY or USE_BOUNDS, specifies how accurately Java 3D will perform collision detection- Throws:
java.lang.IllegalArgumentException
- if hint is not one of USE_GEOMETRY or USE_BOUNDS.java.lang.IllegalArgumentException
- if object is under a SharedGroup node or object is other than a Group, Shape3D, Morph or BoundingLeaf node.
-
WakeupOnCollisionMovement
public WakeupOnCollisionMovement(Bounds armingBounds)
Constructs a new WakeupOnCollisionMovement criterion.- Parameters:
armingBounds
- the bounds object used to arm collision detection
-
-
Method Detail
-
getArmingPath
public SceneGraphPath getArmingPath()
Returns the path used in specifying the collision condition.- Returns:
- the SceneGraphPath object generated when arming this criterion---null implies that a bounds object armed this criteria
-
getArmingBounds
public Bounds getArmingBounds()
Returns the bounds object used in specifying the collision condition.- Returns:
- the Bounds object generated when arming this criterion---null implies that a SceneGraphPath armed this criteria
-
getTriggeringPath
public SceneGraphPath getTriggeringPath()
Retrieves the path describing the object causing the collision.- Returns:
- the SceneGraphPath that describes the triggering object.
- Throws:
java.lang.IllegalStateException
- if not called from within the a behavior's processStimulus method which was awoken by a collision.
-
getTriggeringBounds
public Bounds getTriggeringBounds()
Retrieves the Bounds object that caused the collision- Returns:
- the colliding Bounds object.
- Throws:
java.lang.IllegalStateException
- if not called from within the a behavior's processStimulus method which was awoken by a collision.
-
-