instantreality 1.0

Component:
PointingDeviceSensor
Status:
fully implemented
Structure type:
concrete
Standard:
X3D2.0

PlaneSensor

PlaneSensor converts pointing device motion into 2D translation parallel to the local Z=0 plane. Hint: create a LineSensor by constraining one axis: (minPosition.x=maxPosition.x) or (minPosition.y=maxPosition.y). Hint: Sensors are affected by peer nodes and children of peers. Hint: add transparent geometry to see the effect of the sensor.

Inheritance

Code

XML encoding
<PlaneSensor logFeature=''
enabled='TRUE'
description=''
triggerName='Timer'
axisRotation='0 0 1 0'
autoOffset='TRUE'
offset='0 0 0'
minPosition='0 0'
maxPosition='-1 -1'
 />
Classic encoding
PlaneSensor {
	logFeature [""]
	enabled TRUE
	description ""
	triggerName "Timer"
	axisRotation 0 0 1 0
	autoOffset TRUE
	offset 0 0 0
	minPosition 0 0
	maxPosition -1 -1
}

Interface

Filter: X3D only | Avalon only | All
id Name DataType PartType Default ValueType Description
SFBool autoOffset SFBool inputOutput TRUE Determines whether previous offset values are remembered/accumulated.
SFRotation axisRotation SFRotation inputOutput 0 0 1 0 The local sensor coordinate system is created by applying the axisRotation field value to the local coordinate system.
SFString description SFString inputOutput Text description to comment the sensor task. Can be used in run-time systems to give usefull feedback to the user and developer
SFBool enabled SFBool inputOutput TRUE Enables/disables the sensor node.
SFNode hitObject_changed SFNode outputOnly The next non-shared hit node's parent of type BoundedNode.
SFBool isActive SFBool outputOnly FALSE isActive true/false events are sent when the sensor gets active
SFBool isOver SFBool outputOnly Is pointing device over sensor's geometry?
MFString logFeature MFString inputOutput state, child, parent, route, eventIn, eventOut controls the logging of changes, state: log state changes (e.g. live), child: log child add/remove, parent: log parent add/remove, route: log route add/remove; eventIn: log receiving of events, eventOut: log sending of events: guiView, runtime system should create node-view, guiEdit: runtime system should create node-editeverything: log everything
SFVec2f maxPosition SFVec2f inputOutput -1 -1 minPosition and maxPosition clamp translations to a range of values measured from origin of Z=0 plane default maxPosition less then; minPosition means no clamping. Hint: create a LineSensor by constraining one axis (minPosition.x=maxPosition.x) or (minPosition.y=maxPosition.y).
SFNode metadata SFNode inputOutput MetadataObject container for payload metadata inside MetadataSet element
SFVec2f minPosition SFVec2f inputOutput 0 0 minPosition and maxPosition clamp translations to a range of values measured from origin of Z=0 plane default maxPosition less then; minPosition means no clamping. Hint: create a LineSensor by constraining one axis (minPosition.x=maxPosition.x) or (minPosition.y=maxPosition.y).
SFVec3f offset SFVec3f inputOutput 0 0 0 Sends event and remembers last value sensed.
MFVec3f touchPoints_changed MFVec3f outputOnly Events containing all 3D points on surface of underlying geometry, given in Sensor's local coordinate system.
SFVec3f trackPoint_changed SFVec3f outputOnly trackPoint_changed events give intersection point of bearing with sensor's virtual geometry.
SFVec3f translation_changed SFVec3f outputOnly translation_changed events equal sum of relative translation change plus offset value.
SFString triggerName SFString initializeOnly Timer Name of the dynamic context-slot, which is used by the run-time environment (e.g. Jobs) to trigger the node. Life-Nodes will automatically connect the context-eventOutput to the triggerSlot-eventInput Slot.
SFTime triggerSlot SFTime inputOnly slot which is used internally to connect a dynamic context-slot which name is set by the triggerName value. Its used automatically to install run-time environment trigger.