|
H3D API
2.4.1
|
This abstract node type is the base node type from which all Sequencers are derived. More...
#include <H3D/X3DSequencerNode.h>

Classes | |
| class | KeyValues |
| Each value in the keyValue field corresponds in order to the parameter value in the key field. More... | |
| class | ValueChanged |
| ValueChanged is a specialized class used to evaluate and set the value_changed field depending on the input to the class. More... | |
Public Member Functions | |
| X3DSequencerNode (Inst< SFNode > _metadata=0, Inst< SFBool > _next=0, Inst< SFBool > _previous=0, Inst< SFFloat > _set_fraction=0, Inst< MFFloat > _key=0) | |
| Constructor. | |
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< SFBool > | next |
| Receipt of next event triggers next output value in keyValue array, next goes to initial element after last. More... | |
| H3DUniquePtr< SFBool > | previous |
| Receipt of previous event triggers previous output value in keyValue array, previous goes to last element after first. More... | |
| H3DUniquePtr< SFFloat > | set_fraction |
| The set_fraction inputOnly field receives an SFFloat event and causes the sequencing function to evaluate, resulting in a value_changed output event with the same timestamp as the set_fraction event. More... | |
| H3DUniquePtr< MFFloat > | key |
| Each value in the keyValue field corresponds in order to the parameter value in the key field. 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::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... | |
This abstract node type is the base node type from which all Sequencers are derived.
The specified X3D sequencer nodes are designed for discrete events along a timeline. Each of these nodes defines a piecewise-linear function, f(t), on the interval (-infinity, +infinity). The piecewise-linear function is defined by n values of t, called key, and the n corresponding values of f(t), called keyValue. The keys shall be monotonically non-decreasing, otherwise the results are undefined. The keys are not restricted to any interval.
Each of these nodes evaluates f(t) given any value of t (via the fraction field) as follows: Let the n keys t0, t1, t2, ..., tn-1 partition the domain (-infinity, +infinity) into the n+1 subintervals given by (-infinity, t0), [t0, t1), [t1, t2), ... , [tn-1, +infinity). Also, let the n values v0, v1, v2, ..., vn-1 be the values of f(t) at the associated key values. The discrete value sequencing function, f(t), is defined to be:
f(t) = vn, if tn <= t < tn-1 = v0, if t <= t0, = vn-1, if t >= tn-1
| H3DUniquePtr< MFFloat > H3D::X3DSequencerNode::key |
Each value in the keyValue field corresponds in order to the parameter value in the key field.
The keys shall be monotonically non-decreasing, otherwise the results are undefined. The keys are not restricted to any interval.
Access type: inputOutput
Default value: -
| H3DUniquePtr< SFBool > H3D::X3DSequencerNode::next |
Receipt of next event triggers next output value in keyValue array, next goes to initial element after last.
Access type: inputOnly
Default value: -
Referenced by H3D::BooleanSequencer::BooleanSequencer(), and H3D::IntegerSequencer::IntegerSequencer().
| H3DUniquePtr< SFBool > H3D::X3DSequencerNode::previous |
Receipt of previous event triggers previous output value in keyValue array, previous goes to last element after first.
Access type: inputOnly
Default value: -
Referenced by H3D::BooleanSequencer::BooleanSequencer(), and H3D::IntegerSequencer::IntegerSequencer().
| H3DUniquePtr< SFFloat > H3D::X3DSequencerNode::set_fraction |
The set_fraction inputOnly field receives an SFFloat event and causes the sequencing function to evaluate, resulting in a value_changed output event with the same timestamp as the set_fraction event.
Access type: inputOnly
Default value: -
Referenced by H3D::BooleanSequencer::BooleanSequencer(), and H3D::IntegerSequencer::IntegerSequencer().