class DtKinematicStateCS: DtKinematicStateCS contains the current kinematic state of an object in one Cartesian coordinate system. It may be local (database) coordinates, network (geocentric) coordinates, or in the coordinate system of the object's parent object. Orientation (in Eulers) and Orientation Type together represent the same information as the OrientationMatrix; these values are linked so that if one is changed, the other will be converted the next time it is accessed.
Euler angles represent angles of rotation about another coordinate system, but this information is not enough to create a 3x3 rotation matrix. We need to support 3 types of orientation matrices, all of them pre-multiply: matrices that represent our body system wrt a local database system; matrices that represent one body system wrt to another; and matrices that represent our bodySystem wrt geocentric coordinates. Each DtKinematicStateCS in the the DtKinematicState object (see kinState.h) uses a different orientation type, and so needs different routines to go between Eulers and matrices (DtDcms).
Orientation may be constrained about a given axis, resulting in less expensive routines to go between Euler angles and matrices. This is used for articulating parts such as guns and turrets.
|
| | DtKinematicStateCS (DtSimOrientationType orientationType, const DtString &name=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=NULL) |
| |
| | DtKinematicStateCS (DtSimOrientationType orientationType, const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL) |
| |
| | DtKinematicStateCS (const DtKinematicStateCS &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=NULL) |
| |
| | DtKinematicStateCS (const DtKinematicStateCS &orig, const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL) |
| |
| const DtKinematicStateCS & | operator= (const DtKinematicStateCS &orig) |
| |
| bool | operator== (const DtKinematicStateCS &) const |
| |
| bool | operator!= (const DtKinematicStateCS &rhs) const |
| |
| virtual | ~DtKinematicStateCS () |
| |
| virtual DtKinematicStateCS * | clone (const DtString &name=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=NULL) const |
| |
| virtual DtKinematicStateCS * | clone (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL) const |
| |
| virtual void | setUpdatesEnabled (bool) |
| |
| bool | updatesEnabled () const |
| |
| virtual const DtVector & | position () const |
| |
| virtual void | setPosition (const DtVector &position) |
| |
| virtual const DtVector & | velocity () const |
| |
| virtual void | setVelocity (const DtVector &velocity, bool recomputeSpeed=true) |
| |
| virtual DtReal | speed () const |
| |
| virtual void | setSpeed (DtReal speed) |
| |
| virtual const DtVector & | acceleration () const |
| |
| virtual void | setAcceleration (const DtVector &acceleration) |
| |
| virtual const DtTaitBryan & | orientation () const |
| |
| virtual void | setOrientation (const DtTaitBryan &orientation, DtRotationConstraint recomputeMatrix=RotateAboutX) |
| |
| virtual const DtDcm & | orientationMatrix () const |
| |
| virtual DtDcm | orientationMatrix (const DtTaitBryan &b) const |
| |
| virtual void | setOrientationMatrix (const DtDcm &orientationMatrix, bool recomputeEulers=true) |
| |
| virtual DtSimOrientationType | orientationType () const |
| |
| virtual void | setOrientationType (DtSimOrientationType orientationType) |
| |
| virtual DtRotationConstraint | rotationConstraint () const |
| |
| virtual void | setRotationConstraint (DtRotationConstraint contraint) |
| |
| virtual void | setCoordinateSystem (const Coordinate_System *coordinateSystem) |
| |
| virtual void | getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings) |
| |
| | DtReaderWriter () |
| |
| | DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) |
| |
| | DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) |
| |
| | DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) |
| |
| | DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) |
| |
| | DtReaderWriter (const DtReaderWriter &, DtReaderWriterRegistry *parentRegistry=NULL) |
| |
| const DtReaderWriter & | operator= (const DtReaderWriter &orig) |
| |
| bool | operator== (const DtReaderWriter &) const |
| |
| bool | operator!= (const DtReaderWriter &rhs) |
| |
| virtual | ~DtReaderWriter () |
| |
| virtual void | putSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename()) |
| |
| virtual void | postPutSelf () |
| |
| virtual void | prePutSelf () |
| |
| virtual void | postGetSelf () |
| |
| virtual void | preGetSelf () |
| |
| virtual void | writeSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename()) |
| |
| virtual DtSymbolString | name () const |
| |
| virtual void | addAlias (const DtSymbolString &alias) |
| |
| virtual void | addAlias (const DtString &alias) |
| |
| virtual bool | hasAlias (const DtSymbolString &alias) |
| |
| virtual const aliasContainer & | aliases () const |
| |
| virtual void | setReadonly (bool flag) |
| |
| bool | isReadonly () const |
| |
| virtual void | reset () |
| |
| virtual int | alignment () const |
| |
| virtual bool | variableIsBound () const |
| |
| virtual void | unbindVariable () |
| |
| virtual void | setName (const DtString &) |
| |
| virtual const char * | readerWriterType () const |
| |
| virtual const char * | xmlType () const |
| |
| virtual DtString | prettyPrint () const |
| |
| std::string | debugText () const |
| |
| virtual void | bindVariables (DtVariableBindingsList variableBindings) |
| |
virtual std::list
< DtVariableNameType > | unboundVariables () const |
| |
| bool | invalid () const |
| |
| virtual bool | hasChild (const DtReaderWriter *p) const |
| |
| virtual bool | hasVariableReference () const |
| |
| virtual void | bindLocalVariables (const DtVariableBindingsList &variableBindings) |
| |
| virtual void | recordUpdateTime () const |
| |
| virtual bool | wasUpdatedSince (DtTime t) const |
| |
| virtual bool | changedSinceLastChecked () |
| |
| virtual bool | peekChangedSinceLastChecked () const |
| |
| virtual void | putData (std::string &fp, int indentLevel=0) |
| |
| virtual DtlObjPtr | getData (DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings) |
| |
| virtual void | setValueSpecified (bool specified, bool recurse=false) |
| |
| virtual bool | valueSpecified () const |
| |
| virtual bool | isVariableReference () const |
| |
| virtual void | setIsVariableReference (bool value) |
| |
| virtual void | clearAllVariableReferenceFlags () |
| |
| virtual DtSymbolString | variableName () const |
| |
| virtual void | setVariableName (const DtSymbolString variableName) |
| |
| virtual const DtReaderWriter * | defaultRWValue () const |
| |
| virtual DtReaderWriter * | defaultRWValue () |
| |
| virtual void | setDefaultRWValue (DtReaderWriter *) |
| |
| virtual bool | checkAndSetDefaultRWValue (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference()) |
| |
| const DtReaderWriterRegistry & | registry () const |
| |
| DtReaderWriterRegistry & | registry () |
| |
| virtual DtPropertyInterface * | property () |
| |
| virtual const DtPropertyInterface * | property () const |
| |
| virtual DtString | toXml () const |
| |
| virtual DtRwVariableBindings * | generateVariableBindings () const |
| |
| virtual bool | toXml (const DtFilename &) const |
| |
| virtual bool | fromXml (const DtString &) |
| |
| virtual bool | fromXmlFile (const DtFilename &) |
| |
| virtual void | putSelf (DtEnvironmentSP, DtEnvValueSP parent) const |
| |
| virtual void | putData (DtEnvironmentSP, DtEnvValueSP value) const |
| |
| virtual void | putVariableReference (DtEnvironmentSP, DtEnvValueSP value) const |
| |
| 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()) |
| |
| virtual void | unrecognizedItem (const DtEnvironmentSP env, const DtEnvValueSP root, const SearchPaths &searchPaths, const DtVariableBindingsList &varBindings) |
| |
| virtual void | getVariableReference (DtEnvironmentSP, DtEnvValueSP value) |
| |