H3D API  2.4.1
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
H3D::StereoInfo Class Reference

The StereoInfo nis a bindable node that contains information used when rendering the scene in stereo. More...

#include <H3D/StereoInfo.h>

Inheritance diagram for H3D::StereoInfo:
Inheritance graph

Public Member Functions

 StereoInfo (Inst< SFSetBind > _set_bind=0, Inst< SFNode > _metadata=0, Inst< SFTime > _bindTime=0, Inst< SFBool > _isBound=0, Inst< SFFloat > _interocularDistance=0, Inst< SFFloat > _focalDistance=0, Inst< SFRotation > _headTilt=0, Inst< SFFloat > _matrixViewShift=0, Inst< SFFloat > _matrixProjShift=0, Inst< SFBool > _swapEyes=0)
 Constructor.
 
void updateViewShift (float _matrixViewShift)
 Function for updating the matrixViewShift.
 
void updateProjShift (float _matrixProjShift)
 Function for updating the matrixProjShift.
 
- Public Member Functions inherited from H3D::X3DBindableNode
 X3DBindableNode (const string &_bindable_stack_name, Inst< SFSetBind > _set_bind=0, Inst< SFNode > _metadata=0, Inst< SFTime > _bindTime=0, Inst< SFBool > _isBound=0)
 Constructor.
 
virtual ~X3DBindableNode ()
 Destructor.
 
virtual void initialize ()
 Initialize this bindable stack, toStackTop is done.
 
virtual void toStackTop ()
 Move this instance to the stack top.
 
virtual void removeFromStack ()
 Remove the bindable node from the stack.
 
bool isStackTop ()
 Is this node at the top of the stack.
 
- Public Member Functions inherited from H3D::X3DChildNode
 X3DChildNode (Inst< SFNode > _metadata=0)
 Constructor.
 
- Public Member Functions inherited from H3D::X3DNode
 X3DNode (Inst< SFNode > _metadata=0)
 Constructor.
 
X3DMetadataObjectgetMetadataByName (const string &_name)
 Given a name, the first X3DMetadataObject in the metadata field that matches that name is returned. More...
 
- Public Member Functions inherited from H3D::Node
 Node ()
 Constructor.
 
virtual Nodeclone (bool deepCopy=true, DeepCopyMap *deepCopyMap=NULL)
 Returns a new instance of this node type with the same state as this one. More...
 
virtual ~Node ()
 Destructor.
 
X3DPrototypeInstancegetProtoInstanceParent ()
 If this node is the root node in the proto body of a X3DPrototypeInstance then this will return that node. More...
 
void setProtoInstanceParent (X3DPrototypeInstance *p)
 Set the X3DPrototypeInstance this node is the the root node if applicaple.
 
virtual void render ()
 the render() function is used for the depth-first rendering traversal of the scene-graph. More...
 
virtual void traverseSG (TraverseInfo &ti)
 traverseSG is called once per scenegraph loop on the scene in order to traverse the scenegraph. More...
 
virtual bool lineIntersect (const Vec3f &from, const Vec3f &to, LineIntersectResult &result)
 Detect intersection between a line segment and the Node. More...
 
virtual void closestPoint (const Vec3f &p, NodeIntersectResult &result)
 Find closest point on Node to p. More...
 
virtual bool movingSphereIntersect (H3DFloat radius, const Vec3f &from, const Vec3f &to, NodeIntersectResult &result)
 Detect collision between a moving sphere and the Node. More...
 
virtual string defaultXMLContainerField ()
 Returns the default xml containerField attribute value. More...
 
virtual FieldgetField (const string &_name) const
 return a pointer to the field specified by name within this instance
 
int addDestructCallback (void(*func)(Node *, void *), void *args)
 Add a callback function to be run on destruction of node. More...
 
int removeDestructCallback (void(*func)(Node *, void *), void *args)
 Add a callback function to be run on destruction of node. More...
 

Static Public Member Functions

static StereoInfogetActive ()
 Convenience function to get the top of the StereoInfo stack.
 
- Static Public Member Functions inherited from H3D::X3DBindableNode
static X3DBindableNodegetActive (const string &bindable_stack_name)
 Returns the active bindable instance, i.e. More...
 
static const StackType & getStack (const string &bindable_stack_name)
 Get the stack for a given name.
 
static const StackMapType & getStackMap ()
 Return the map of all bindable nodes available.
 
- Static Public Member Functions inherited from H3D::Node
static unsigned int nrNodesAlive ()
 Returns the nr of nodes currently alive, i.e. nodes created but not destructed.
 
static int nrNodesCreated ()
 Returns the number of nodes created in total since the start of the program.
 

Public Attributes

H3DUniquePtr< SFFloatinterocularDistance
 The interocularDistance field specifies eye separation distance in metres, e.g. More...
 
H3DUniquePtr< SFFloatfocalDistance
 The focalDistance field specifies the distance in meters at which objects in the scene will appear to be at zero parallax. More...
 
H3DUniquePtr< SFRotationheadTilt
 The headTilt field specifies how the head is oriented in relation to to the current X3DViewpointNode viewing direction. More...
 
H3DUniquePtr< SFFloatmatrixViewShift
 The matrixViewShift field specifies the view matrix stereo shift. More...
 
H3DUniquePtr< SFFloatmatrixProjShift
 The matrixViewShift field specifies the projection matrix stereo shift. More...
 
H3DUniquePtr< SFBoolswapEyes
 The swapEyes field specifies if the eyes should be swapped in the current stereo mode. More...
 
- Public Attributes inherited from H3D::X3DBindableNode
H3DUniquePtr< SFSetBindset_bind
 Input field to bind or unbind the node. More...
 
H3DUniquePtr< SFTimebindTime
 The bindTime field is the time at which the Viewpoint node is bound or unbound. More...
 
H3DUniquePtr< SFBoolisBound
 Output field telling if this node is bound or not. More...
 
- Public Attributes inherited from H3D::X3DNode
H3DUniquePtr< SFNodemetadata
 Meta data about the node. More...
 

Static Public Attributes

static H3DNodeDatabase database
 The H3DNodeDatabase for this node.
 
- Static Public Attributes inherited from H3D::X3DBindableNode
static H3DNodeDatabase database
 The H3DNodedatabase for this node.
 
- Static Public Attributes inherited from H3D::X3DNode
static H3DNodeDatabase database
 The H3DNodeDatabase for this node.
 

Additional Inherited Members

- Public Types inherited from H3D::Node
typedef std::map< Node *, Node * > DeepCopyMap
 A map type used during a deep copy clone() to map from original nodes to cloned nodes.
 
- Protected Member Functions inherited from H3D::Node
void cloneFieldValue (Field &_from, Field &_to, bool deepCopy, DeepCopyMap &deepCopyMap)
 A helper function for the clone() method. More...
 
- Static Protected Member Functions inherited from H3D::Node
static NodegetClonedInstance (Node *original, bool deepCopy, DeepCopyMap &deepCopyMap)
 A helper function for nodes that implement clone() More...
 
- Static Protected Attributes inherited from H3D::X3DBindableNode
static StackMapType stack
 The bindable stack.
 

Detailed Description

The StereoInfo nis a bindable node that contains information used when rendering the scene in stereo.

The interocularDistance field specifies eye separation distance in metres, e.g. the distance between your two eyes.

The focalDistance field specifies the distance in metres at which objects in the scene will appear to be at zero parallax.

Examples:

Member Data Documentation

◆ focalDistance

H3DUniquePtr< SFFloat > H3D::StereoInfo::focalDistance

The focalDistance field specifies the distance in meters at which objects in the scene will appear to be at zero parallax.

Access type: inputOutput
Default value: 0.6

Referenced by H3D::H3DWindowNode::render(), and StereoInfo().

◆ headTilt

H3DUniquePtr< SFRotation > H3D::StereoInfo::headTilt

The headTilt field specifies how the head is oriented in relation to to the current X3DViewpointNode viewing direction.

The rotation is specified in local coordinate space of the viewpoint with the viewing direction being along the negative z axis and up begin positive y.

Access type: inputOutput
Default value: Rotation(1,0,0,0)

Referenced by H3D::X3DViewpointNode::setupViewMatrix(), and StereoInfo().

◆ interocularDistance

H3DUniquePtr< SFFloat > H3D::StereoInfo::interocularDistance

The interocularDistance field specifies eye separation distance in metres, e.g.

the distance between your two eyes.

Access type: inputOutput
Default value: 0.06

Referenced by H3D::X3DViewpointNode::setupViewMatrix(), and StereoInfo().

◆ matrixProjShift

H3DUniquePtr< SFFloat > H3D::StereoInfo::matrixProjShift

The matrixViewShift field specifies the projection matrix stereo shift.

Access type: inputOutput
Default value: 0.0

Referenced by StereoInfo(), and updateProjShift().

◆ matrixViewShift

H3DUniquePtr< SFFloat > H3D::StereoInfo::matrixViewShift

The matrixViewShift field specifies the view matrix stereo shift.

Access type: inputOutput
Default value: 0.03

Referenced by H3D::X3DViewpointNode::setupViewMatrix(), StereoInfo(), and updateViewShift().

◆ swapEyes

H3DUniquePtr< SFBool > H3D::StereoInfo::swapEyes

The swapEyes field specifies if the eyes should be swapped in the current stereo mode.

This will make the image for the left eye appear in the place that normally used for right eye

Access type: inputOutput
Default value: false

Referenced by H3D::H3DWindowNode::render(), and StereoInfo().


The documentation for this class was generated from the following files: