Interface TransformSensor
- All Superinterfaces:
X3DChildNode
,X3DEnvironmentalSensorNode
,X3DNode
,X3DSensorNode
- All Known Implementing Classes:
TransformSensor
TransformSensor generates output events when its targetObject enters, exits, and moves within a region in space (defined by a box).
Warning: this is an abstract interface that cannot be instantiated as a concrete object. Java programmers typically only need to use concrete objects provided by the
Package hint: This interface is defined by the X3D Java Language Binding Specification for the Scene Authoring Interface (SAI).
Warning: this is an abstract interface that cannot be instantiated as a concrete object. Java programmers typically only need to use concrete objects provided by the
org.web3d.x3d.jsail
classes.
TransformSensor node tooltip: (X3D version 3.2 or later) [X3DEnvironmentalSensorNode] TransformSensor generates output events when its targetObject enters, exits, and moves within a region in space (defined by a box).
- Hint: Each TransformSensor node behaves independently of all other TransformSensor nodes, so that every enabled TransformSensor node affected by targetObject motion sends output events.
- Hint: multiply instanced (DEF/USE) TransformSensor nodes in different locations use the union of all boxes to check for enter and exit, detecting enter and exit for all instances of the box, and sending enter/exit events appropriately. For non-overlapping bounding boxes, position_changed and orientation_changed events are calculated relative to the coordinate system associated with the bounding box in which the proximity was detected.
- Warning: results are undefined if boxes overlap for multiply instanced TransformSensor nodes.
- Warning: a TransformSensor node with a zero-volume box (i.e. any size dimension equal to 0.0) cannot generate events, equivalent to enabled=false.
- Warning: unlike TouchSensor nodes, there is no notion of a TransformSensor node lower in the scene graph grabbing events.
Package hint: This interface is defined by the X3D Java Language Binding Specification for the Scene Authoring Interface (SAI).
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionfloat[]
Provide array of 3-tuple float results from inputOutput SFVec3f field named center.Provide String value from inputOutput SFString field named description.boolean
Provide boolean value from inputOutput SFBool field named enabled.double
Provide double value in seconds from outputOnly SFTime field named enterTime.double
Provide double value in seconds from outputOnly SFTime field named exitTime.boolean
Provide boolean value from outputOnly SFBool field named isActive.Provide org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.float[]
Provide array of 4-tuple float results unit axis, angle (in radians) from outputOnly SFRotation field named orientation_changed.float[]
Provide array of 3-tuple float results from outputOnly SFVec3f field named position_changed.float[]
getSize()
Provide array of 3-tuple float results within allowed range of [0,infinity) from inputOutput SFVec3f field named size.Provide org.web3d.x3d.sai.Core.X3DNode instance (using a properly typed node) with acceptable node types limited to X3DGroupingNode|X3DShapeNode, from inputOutput SFNode field targetObject.setCenter
(float[] newValue) Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named center.setDescription
(String newValue) Accessor method to assign String value to inputOutput SFString field named description.setEnabled
(boolean newValue) Accessor method to assign boolean value to inputOutput SFBool field named enabled.setMetadata
(X3DMetadataObject newValue) Accessor method to assign org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.setSize
(float[] newValue) Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named size.setTargetObject
(X3DNode newValue) Accessor method to assign org.web3d.x3d.sai.Core.X3DNode instance (using a properly typed node) to inputOutput SFNode field targetObject.
-
Method Details
-
getCenter
float[] getCenter()Provide array of 3-tuple float results from inputOutput SFVec3f field named center.
Tooltip: Translation offset from origin of local coordinate system. *- Returns:
- value of center field
-
setCenter
Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named center.
Tooltip: Translation offset from origin of local coordinate system. *- Parameters:
newValue
- is new value for the center field.- Returns:
TransformSensor
- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
-
getDescription
String getDescription()Provide String value from inputOutput SFString field named description.
Tooltip: Author-provided prose that describes intended purpose of the node.- Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
- Specified by:
getDescription
in interfaceX3DEnvironmentalSensorNode
- Specified by:
getDescription
in interfaceX3DSensorNode
- Returns:
- value of description field
-
setDescription
Accessor method to assign String value to inputOutput SFString field named description.
Tooltip: Author-provided prose that describes intended purpose of the node.- Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
- Specified by:
setDescription
in interfaceX3DEnvironmentalSensorNode
- Specified by:
setDescription
in interfaceX3DSensorNode
- Parameters:
newValue
- is new value for the description field.- Returns:
TransformSensor
- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
-
getEnabled
boolean getEnabled()Provide boolean value from inputOutput SFBool field named enabled.
Tooltip: Enables/disables node operation. *- Specified by:
getEnabled
in interfaceX3DEnvironmentalSensorNode
- Specified by:
getEnabled
in interfaceX3DSensorNode
- Returns:
- value of enabled field
-
setEnabled
Accessor method to assign boolean value to inputOutput SFBool field named enabled.
Tooltip: Enables/disables node operation. *- Specified by:
setEnabled
in interfaceX3DEnvironmentalSensorNode
- Specified by:
setEnabled
in interfaceX3DSensorNode
- Parameters:
newValue
- is new value for the enabled field.- Returns:
TransformSensor
- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
-
getEnterTime
double getEnterTime()Provide double value in seconds from outputOnly SFTime field named enterTime.
Tooltip: Time event generated when targetObject enters the box region for sensor.- Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
- Returns:
- value of enterTime field
-
getExitTime
double getExitTime()Provide double value in seconds from outputOnly SFTime field named exitTime.
Tooltip: Time event generated when targetObject exits the box region for sensor.- Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
- Returns:
- value of exitTime field
-
getIsActive
boolean getIsActive()Provide boolean value from outputOnly SFBool field named isActive.
Tooltip: isActive true/false events are sent when triggering the sensor. isActive=true when targetObject enters the box region, isActive=false when targetObject exits the box region.- Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
- Specified by:
getIsActive
in interfaceX3DEnvironmentalSensorNode
- Specified by:
getIsActive
in interfaceX3DSensorNode
- Returns:
- value of isActive field
-
getMetadata
X3DMetadataObject getMetadata()Provide org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.- Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS /Part01/components/core.html#Metadata
- Specified by:
getMetadata
in interfaceX3DChildNode
- Specified by:
getMetadata
in interfaceX3DEnvironmentalSensorNode
- Specified by:
getMetadata
in interfaceX3DNode
- Specified by:
getMetadata
in interfaceX3DSensorNode
- Returns:
- value of metadata field
- See Also:
-
setMetadata
Accessor method to assign org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.- Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS /Part01/components/core.html#Metadata
- Specified by:
setMetadata
in interfaceX3DChildNode
- Specified by:
setMetadata
in interfaceX3DEnvironmentalSensorNode
- Specified by:
setMetadata
in interfaceX3DNode
- Specified by:
setMetadata
in interfaceX3DSensorNode
- Parameters:
newValue
- is new value for the metadata field.- Returns:
TransformSensor
- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).- See Also:
-
getOrientation
float[] getOrientation()Provide array of 4-tuple float results unit axis, angle (in radians) from outputOnly SFRotation field named orientation_changed.
Tooltip: Sends rotation event relative to center whenever the target object is contained within the box region and results change.- Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
- Returns:
- value of orientation_changed field
-
getPosition
float[] getPosition()Provide array of 3-tuple float results from outputOnly SFVec3f field named position_changed.
Tooltip: Sends translation event relative to center whenever the target object is contained within the box region and results change.- Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
- Returns:
- value of position_changed field
-
getSize
float[] getSize()Provide array of 3-tuple float results within allowed range of [0,infinity) from inputOutput SFVec3f field named size.
Tooltip: [0,+infinity) size of transformation-traccking box around center location, oriented within local transformation frame. *- Specified by:
getSize
in interfaceX3DEnvironmentalSensorNode
- Returns:
- value of size field
-
setSize
Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named size.
Tooltip: [0,+infinity) size of transformation-traccking box around center location, oriented within local transformation frame. *- Specified by:
setSize
in interfaceX3DEnvironmentalSensorNode
- Parameters:
newValue
- is new value for the size field.- Returns:
TransformSensor
- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
-
getTargetObject
X3DNode getTargetObject()Provide org.web3d.x3d.sai.Core.X3DNode instance (using a properly typed node) with acceptable node types limited to X3DGroupingNode|X3DShapeNode, from inputOutput SFNode field targetObject.
Tooltip: [X3DGroupingNode|X3DShapeNode] targetObject is the movable geometry represented by any valid X3DGroupingNode or X3DShapeNode which may enter or exit the box. *- Returns:
- value of targetObject field
-
setTargetObject
Accessor method to assign org.web3d.x3d.sai.Core.X3DNode instance (using a properly typed node) to inputOutput SFNode field targetObject.
Tooltip: [X3DGroupingNode|X3DShapeNode] targetObject is the movable geometry represented by any valid X3DGroupingNode or X3DShapeNode which may enter or exit the box. *- Parameters:
newValue
- is new value for the targetObject field.- Returns:
TransformSensor
- namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
-