| 
    H3D API
    2.4.1
    
   | 
 
The SplinePositionInterpolator2D node non-linearly interpolates among a list of 2D vectors to produce an SFVec2f value_changed event. More...
#include <H3D/SplinePositionInterpolator2D.h>

Classes | |
| struct | SFValue | 
| The SFValue field updates the interpolated value from the fields routed to it.  More... | |
Public Member Functions | |
| SplinePositionInterpolator2D (Inst< SFNode > _metadata=0, Inst< SFFloat > _set_fraction=0, Inst< MFFloat > _key=0, Inst< MFVec2f > _keyValue=0, Inst< MFVec2f > _keyVelocity=0, Inst< SFValue > _value_changed=0, Inst< SFBool > _closed=0, Inst< SFBool > _normalizeVelocity=0) | |
| Construtor.  | |
  Public Member Functions inherited from H3D::X3DInterpolatorNode | |
| X3DInterpolatorNode (Inst< SFNode > _metadata=0, Inst< SFFloat > _set_fraction=0, Inst< MFFloat > _key=0) | |
| Constructor.  | |
| int | lookupKey (H3DFloat f, H3DFloat &w) | 
| Utility function for Interpolator nodes to be able to find the index for the key pair to interpolate between for a given fraction value f.  More... | |
  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.  | |
| X3DMetadataObject * | getMetadataByName (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 Node * | clone (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.  | |
| X3DPrototypeInstance * | getProtoInstanceParent () | 
| 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 Field * | getField (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... | |
Public Attributes | |
| H3DUniquePtr< MFVec2f > | keyValue | 
| The values to interpolate between.  More... | |
| H3DUniquePtr< MFVec2f > | keyVelocity | 
| KeyVelocity values, if left empty they are calculated using the keyValues.  More... | |
| H3DUniquePtr< SFBool > | closed | 
| Specifies if the loop is Open or Closed.  More... | |
| H3DUniquePtr< SFBool > | normalizeVelocity | 
| Specifies if the Velocity should be normalized.  More... | |
| H3DUniquePtr< SFValue > | value_changed | 
| The interpolated result value.  More... | |
  Public Attributes inherited from H3D::X3DInterpolatorNode | |
| H3DUniquePtr< SFFloat > | set_fraction | 
| The set_fraction inputOnly field receives an SFFloat event and causes the interpolator node function to evaluate, resulting in a value_changed output event of the specified type with the same timestamp as the set_fraction event.  More... | |
| H3DUniquePtr< MFFloat > | key | 
| The key field contains the list of key times, which could appear as: key [0 0.25 0.65 0.75 1] to indicate there are five key frames in this node.  More... | |
  Public Attributes inherited from H3D::X3DNode | |
| H3DUniquePtr< SFNode > | metadata | 
| Meta data about the node.  More... | |
Static Public Attributes | |
| static H3DNodeDatabase | database | 
| The H3DNodeDatabase for this node.  | |
  Static Public Attributes inherited from H3D::X3DInterpolatorNode | |
| 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.  | |
  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.  | |
  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 Node * | getClonedInstance (Node *original, bool deepCopy, DeepCopyMap &deepCopyMap) | 
| A helper function for nodes that implement clone()  More... | |
The SplinePositionInterpolator2D node non-linearly interpolates among a list of 2D vectors to produce an SFVec2f value_changed event.
The keyValue, keyVelocity, and key fields shall each have the same number of values.
Examples:
| H3DUniquePtr< SFBool > H3D::SplinePositionInterpolator2D::closed | 
Specifies if the loop is Open or Closed.
Access type: inputOutput Default value: FALSE 
  
Referenced by H3D::SplinePositionInterpolator2D::SFValue::update().
| H3DUniquePtr< MFVec2f > H3D::SplinePositionInterpolator2D::keyValue | 
The values to interpolate between.
Access type: inputOutput
Referenced by SplinePositionInterpolator2D().
| H3DUniquePtr< MFVec2f > H3D::SplinePositionInterpolator2D::keyVelocity | 
KeyVelocity values, if left empty they are calculated using the keyValues.
Access type: inputOutput
Referenced by SplinePositionInterpolator2D().
| H3DUniquePtr< SFBool > H3D::SplinePositionInterpolator2D::normalizeVelocity | 
Specifies if the Velocity should be normalized.
Default value: FALSE 
Access type: inputOutput
Referenced by H3D::SplinePositionInterpolator2D::SFValue::update().
| H3DUniquePtr< SFValue > H3D::SplinePositionInterpolator2D::value_changed | 
The interpolated result value.
Access type: outputOnly
Referenced by SplinePositionInterpolator2D().