instantreality 1.0

Component:
Snapping
Status:
partly implemented
Structure type:
concrete
Standard:
Avalon

SnapIn

SnapIns are locations where SnapSensors can "snap in"

Inheritance

Code

XML encoding
<SnapIn id='default'
sticky='TRUE'
maxSticking='1'
transULimit='0 0 0'
transLLimit='0 0 0'
rotAxis='0 0 1'
rotULimit='0'
rotLLimit='0'
triggerName='Timer'
locationOffset='identity'
locationTranslation='0 0 0'
locationRotation='0 0 0 1'
visibleSize='1.0'
description=''
enabled='TRUE'
logFeature=''
 />
Classic encoding
SnapIn {
	id "default"
	sticky TRUE
	maxSticking 1
	transULimit 0 0 0
	transLLimit 0 0 0
	rotAxis 0 0 1
	rotULimit 0
	rotLLimit 0
	triggerName "Timer"
	locationOffset identity
	locationTranslation 0 0 0
	locationRotation 0 0 0 1
	visibleSize 1.0
	description ""
	enabled TRUE
	logFeature [""]
}

Interface

Filter: X3D only | Avalon only | All
id Name DataType PartType Default ValueType Description
SFNode highlightNode SFNode initializeOnly Node If two SnapSomethings are matched as compatible AND are close enough to "snap", the highlightNode is shown. Default is a red sphere.
SFString id SFString initializeOnly default SnapSensors keep an idList which is matched against ids of Snapins
SFNode indicatorNode SFNode initializeOnly Node If two SnapSomethings are matched as compatible the indicatorNode is shown. Default is a green sphere.
SFMatrix4f locationOffset SFMatrix4f initializeOnly identity offset of the SnapSomething relative to its parent node
SFRotation locationRotation SFRotation initializeOnly 0 0 0 1 rotation of the SnapSomething relative to its parent node
SFVec3f locationTranslation SFVec3f initializeOnly 0 0 0 translation of the SnapSomething relative to its parent node
SFVec3f rotAxis SFVec3f initializeOnly 0 0 1 free rotational axis (0 0 0 means no constrained rotation)
SFFloat rotLLimit SFFloat initializeOnly 0 [0, 2pi] lower angle limit.
SFFloat rotULimit SFFloat initializeOnly 0 [0, 2pi] upper angle limit.
SFNode standbyNode SFNode initializeOnly Node the standbyNode is selected when neither of indicator/highlight is shown. It defaults to nothing, so that it is invisible.
SFBool sticky SFBool initializeOnly TRUE if true, SnapSensors stick to this SnapIn and will follow this SnapIn on move.
SFVec3f transLLimit SFVec3f initializeOnly 0 0 0 lower translation limits that a SnapSensor is allowed to move away while sticky to this SnapIn
SFVec3f transULimit SFVec3f initializeOnly 0 0 0 upper translation limits that a SnapSensor is allowed to move away while sticky to this SnapIn
SFFloat visibleSize SFFloat initializeOnly 1.0 (-inf, inf) the scalation for the indicator nodes
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.
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.
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
SFInt32 maxSticking SFInt32 inputOutput 1 [-1, inf) Number of attachable SnapSensors. This works with sticky=TRUE only! -1 means unlimited SnapSensors attachable
SFNode metadata SFNode inputOutput MetadataObject container for payload metadata inside MetadataSet element
SFBool highlightActivated SFBool outputOnly Indicates if highlight is activated or not.
SFBool isActive SFBool outputOnly FALSE isActive true/false events are sent when the sensor gets active
SFBool snapped SFBool outputOnly fired if a sticky SnapSensor has snapped in
SFNode whichSnapped SFNode outputOnly fired if a sticky SnapSensor has snapped in