Public Member Functions |
| | DtAnimationModel (DtVrfObject *, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) |
| | DtAnimationModel (const DtAnimationModel &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) |
| DtAnimationModel & | operator= (const DtAnimationModel &orig) |
| virtual | ~DtAnimationModel () |
| virtual double | calculateOrientation (int frame, double dt, DtTaitBryan &, DtVector &rotationalVelocity) const |
| | Returns a new heading.
|
| virtual DtVector | calculateLocation (int frameA, int frameB=-1, double timePastFrameA=0) const |
| | Returns location in geocentric.
|
| virtual void | calculateSpeed (int frame, DtVector &velocity) const |
| | Calculates velocity in local coordinates for transitioning the object from the given frame to the next frame.
|
| virtual DtVector | targetPosition () const |
| | Returns reference point for the animation in geocentric coordinates.
|
| virtual DtVector | localReferencePosition () const |
| | Returns the reference point for the animation in local coordinates.
|
| virtual DtTaitBryan | targetOrientation () const |
| | Returns the reference orientation in geocentric coordinate system.
|
| virtual DtVector | groundClamp (const DtVector &) const |
| | Expects and returns geocentric vector clamped to the terrain.
|
| virtual DtVector | bodyOffsetVector (int frame) const |
| | Returns the body offset vector at the given frame.
|
| virtual DtTaitBryan | orientationOffset (int frame) const |
| | Returns the offset orientation at the given frame.
|
| virtual bool | groundClampHighFidelity (const DtVector &location, double heading, DtTaitBryan &newLocalOrienationTb, DtVector &newLocalLocation) const |
| | Ground clamps for three points, given geocentric location and topographic heading.
|
| virtual DtVector | velocityForFrame (int frame) const |
| | Returns the velocity for the given frame in local database coordinates.
|
| virtual DtVector | calculateRotationalVelocity (int frame, double dt) const |
| | Calculates the rotational velocity for the entity from the given frame to the next frame as bounded by dt.
|
| virtual DtVector | calculateRotationalVelocity (const DtTaitBryan ¤tFrame, int frame) const |
| | Calculates rotational velocity given the supplied local orientation to the orientation represented by the frame + delta time.
|
| virtual DtVector | heightAdjustedLocation (const DtVector &) const |
| | Adjusts location by bounding volume of entity. Input and output are in geocentric.
|
| virtual DtTaitBryan | orientationForFrame (int frame, double &heading) const |
| | Returns local orientation.
|
| virtual bool | canBeAnimated () const |
| | Returns true if there is enough information to start calculation.
|
| virtual int | animationRow (double, int frameHint=0) const |
| | Given the simulation time, return the animation row that matches.
|
| virtual int | animationRows () const |
| | Returns the number of rows in the animation model.
|
| virtual double | deltaTimeForFrame (int frame) const |
| | Returns the delta time to get to the next frame.
|
| virtual void | resetAnimationVariables () |
| | Resets animation variables so model can be animated again.
|
| virtual void | reset () |
| | Resets animation variables and clears out movement file.
|
| virtual void | setupForAnimation () |
| | Sets initial values based on current entity object.
|
| virtual double | simulationTime (int) const |
| | Returns the simulation time (scale adjusted) at the given animation row.
|
| virtual void | setFrameTime (double) |
| | Regardless of what time is set in the data file, allow each frame to only take this amount of time.
|
| virtual double | frameTime () const |
| | Returns frame time as set by developer via setFrameTime else will return the time difference between frame 1 and frame 0.
|
| virtual void | setAnimationFrame (int) |
| | Sets the animation frame to start animating at.
|
| virtual int | animationFrame () const |
| virtual void | setNeedsSetup (bool) |
| | True/false if the model still needs setup.
|
| virtual bool | needsSetup () const |
| virtual bool | simulate (double simulateFor, DtVector &newLocation, DtTaitBryan &newOrientation, DtVector &newVelocity, DtVector &newRotationalVelocity, bool debug=false) |
| | Simulates the animation for the give time.
|
| virtual void | setElapsedAnimationTime (double) |
| | The current elapsed total time of simulating.
|
| virtual double | elapsedAnimationTime () const |
| virtual void | setTransitionSpeed (double) |
| | Sets the speed to use to transition into this animation.
|
| virtual double | transitionSpeed () const |
| virtual void | setEntity (DtVrfObject *) |
| virtual DtVrfObject * | entity () const |
| virtual const char * | readerWriterType () const |
| | Used to supply a string type that this reader writer type is.
|
| virtual int | frameToTravelSpeed (int base, double speed) const |
| | Returns the frame at which the distance travelled is the transition speed.
|
| virtual double | lastSimulationTime () const |
| | Last amount of time simulated.
|
| virtual bool | isFinished () const |
| | Returns true if the animation is complete.
|
|
| virtual void | setTimeScale (double d) |
| virtual double | timeScale () const |
|
| virtual void | setReferencePoint (const DtVector &) |
| virtual DtVector | referencePoint () const |
|
| virtual void | setReferenceOrientation (const DtTaitBryan &) |
| virtual DtTaitBryan | referenceOrientation () const |
|
| virtual void | setTarget (const DtUUID &) |
| virtual DtSharedVrfObjectReference | target () |
| | Was: targetPoint.
|
|
| virtual void | setForceAutomaticOrientation (bool forceAuto) |
| virtual const bool | forceAutomaticOrientation () const |
|
| virtual void | setMoveOutHeading (double) |
| virtual double | moveOutHeading () const |
|
| virtual void | setScriptedMovementFile (const DtString &) |
| virtual const DtString & | scriptedMovementFile () const |
|
| virtual void | setClampType (int) |
| virtual int | clampType () const |
|
| virtual void | setCompletionRule (int) |
| virtual int | completionRule () const |
|
| virtual void | setFileConfiguration (const DtString &) |
| virtual const DtString & | fileConfiguration () const |
|
| virtual int | setObjectOffsetLocation (int row, const DtVector &) |
| virtual int | setObjectOffsetOrientation (int row, const DtTaitBryan &) |
| | If the row is -1 or > than the number of rows will add to the end, else will replace current value.
|
| virtual void | setTimeDeltaFromPreviousRow (int forRow, double timeDelta) |
| | Sets the time delta for the current row from the previous row. Does not effect any other row.
|
| virtual int | addAnimationRow (double deltaTime, double lateral, double range, double altitude, double headingOffset=0, double pitchOffset=0, double rollOffset=0) |
| | Adds a new data row into the system.
|
| virtual void | removeRow (int) |
| | Removes the current row.
|
| | DtReaderWriter () |
| | default constructor
|
| | DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) |
| | real constructor Setting the readonly flag prevents object from writing itself to the stream.
|
| | DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) |
| | DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) |
| | pseudo-copy constructor
|
| | DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) |
| | DtReaderWriter (const DtReaderWriter &, DtReaderWriterRegistry *parentRegistry=NULL) |
| | copy constructor
|
| const DtReaderWriter & | operator= (const DtReaderWriter &orig) |
| | assignment operator
|
| bool | operator== (const DtReaderWriter &) const |
| | Equivalence operator.
|
| bool | operator!= (const DtReaderWriter &rhs) |
| virtual | ~DtReaderWriter () |
| | destructor
|
| virtual void | postPutSelf () |
| | Called after either version of put self (file or environment). Default is no-op.
|
| virtual void | prePutSelf () |
| | Called before either version of put self (file or environment). Default is no-op.
|
| virtual void | getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference()) |
| | Top level to read itself from an input stream.
|
| virtual void | postGetSelf () |
| | Called after either version of getSelf (mtl or environment). Default is no-op.
|
| virtual void | preGetSelf () |
| | Called before either version of get self (file or environment). Default is no-op.
|
| virtual void | writeSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename()) |
| | Called from putSelf, calls myRegistry.putSelf which in turn calls putSelf on each reader/writer in the registry.
|
| virtual DtSymbolString | name () const |
| | Accessor for name of this readable/writable object.
|
| virtual void | addAlias (const DtSymbolString &alias) |
| | Add an alias as an alternative name for this object.
|
| virtual void | addAlias (const DtString &alias) |
| virtual bool | hasAlias (const DtSymbolString &alias) |
| virtual const aliasContainer & | aliases () const |
| virtual void | setReadonly (bool flag) |
| | Set read-only flag.
|
| bool | isReadonly () const |
| virtual int | alignment () const |
| | For those items that are sent over the network via HLA, this will give the network alignment.
|
| virtual bool | variableIsBound () const |
| virtual void | unbindVariable () |
| | Sets the myVariableIsBound flag to false.
|
| virtual void | setName (const DtString &) |
| | Set the name of the object.
|
| virtual const char * | xmlType () const |
| virtual DtString | prettyPrint () const |
| | Routine to return a human readable form of the reader/writer variable.
|
| std::string | debugText () const |
| virtual void | bindVariables (DtVariableBindingsList variableBindings) |
| | Runs a variable binding pass on this reader writer and any of its children.
|
virtual std::list
< DtVariableNameType > | unboundVariables () const |
| bool | invalid () const |
| virtual bool | hasChild (const DtReaderWriter *p) const |
| | Returns true if this variable has a child p in it's chain.
|
| virtual bool | hasVariableReference () const |
| | Returns true if this item or any item in the registry (recursive) is a variable reference.
|
| virtual void | bindLocalVariables (const DtVariableBindingsList &variableBindings) |
| | Checks to see if this RW object is a variable reference that can be bound using the provided bindings.
|
| virtual void | recordUpdateTime () const |
| | Can be implemented in subclasses to stamp the time when updated.
|
| virtual bool | wasUpdatedSince (DtTime t) const |
| | Can be implemented in subclasses to return true if an update occurred after the specified time.
|
| virtual void | putData (std::string &fp, int indentLevel=0) |
| | Deriving class overrides these to get/put class specific data.
|
| virtual DtlObjPtr | getData (DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings) |
| virtual void | setValueSpecified (bool specified, bool recurse=false) |
| | The specified flags are used for optional values.
|
| virtual bool | valueSpecified () const |
| virtual bool | isVariableReference () const |
| | Specifies whether or not this reader writer is really a variable that is specified elsewhere.
|
| virtual void | setIsVariableReference (bool value) |
| virtual void | clearAllVariableReferenceFlags () |
| | Clears out all variable reference flags from all readerwriter items in registry recursively.
|
| virtual DtSymbolString | variableName () const |
| | The variable name, if this object is a variable reference.
|
| virtual void | setVariableName (const DtSymbolString variableName) |
| virtual const DtReaderWriter * | defaultRWValue () const |
| | The default value to use if the reader/writer object is a variable and that variable is not specified.
|
| virtual DtReaderWriter * | defaultRWValue () |
| virtual void | setDefaultRWValue (DtReaderWriter *) |
| | Previous default value, if exists, will be removed and replaced with a clone of the supplied variable.
|
| virtual bool | checkAndSetDefaultRWValue (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference()) |
| | Give the stream, if the stream contains a default value then set it here.
|
| const DtReaderWriterRegistry & | registry () const |
| | Collection of child DtReaderWriter nodes owned by this object.
|
| DtReaderWriterRegistry & | registry () |
| virtual DtPropertyInterface * | property () |
| virtual const DtPropertyInterface * | property () const |
| virtual DtString | toXml () const |
| virtual bool | toXml (const DtFilename &) const |
| | Writes contents of xml result to the given filename.
|
| virtual bool | fromXml (const DtString &) |
| | Restores object from given xml string. Returns true if valid.
|
| virtual bool | fromXmlFile (const DtFilename &) |
| | Restires object from given xml file.
|
| virtual void | putSelf (DtEnvironmentSP, DtEnvValueSP parent) const |
| virtual void | putData (DtEnvironmentSP, DtEnvValueSP value) const |
| | Override to add attributes of actual data.
|
| virtual void | putVariableReference (DtEnvironmentSP, DtEnvValueSP value) const |
| | Called when the item is a variable reference.
|
| virtual void | getSelf (const DtEnvironmentSP, const DtEnvValueSP root, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList()) |
| virtual void | getData (const DtEnvironmentSP, const DtEnvValueSP, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList()) |
| | Gets data from the environment value.
|
| virtual void | unrecognizedItem (const DtEnvironmentSP env, const DtEnvValueSP root, const SearchPaths &searchPaths, const DtVariableBindingsList &varBindings) |
| | Called when the xml reader tries to parse an unknown reader/writer item. Default is a no-op.
|
| virtual void | getVariableReference (DtEnvironmentSP, DtEnvValueSP value) |
| | Called when the item is a variable reference.
|
The DtAnimationModel class will contain the interface allow for animated movement via an external file or points added to the class.
This class will also be able to read/write itself from a file. If there is data read from a file, any points added or replaced in that file will be written out as a delta to the file