VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions
makVrv::DtArticulatedModel Class Referenceabstract

An articulated model manipulator for controlling an articulated model.

Inheritance diagram for makVrv::DtArticulatedModel:
Inheritance graph
[legend]

Public Types

enum  AnimationState { START, STOP, PAUSE, RESUME }
 
typedef std::vector< intPartList
 

Public Member Functions

 DtArticulatedModel (DtDe &, DtUniqueID id)
 
virtual ~DtArticulatedModel ()
 
virtual void setModelScalingEnabled (bool b)=0
 
virtual void setModelDefinition (const std::string &def)=0
 
virtual void setLocalModelScalingEnabled (bool enabled)=0
 
virtual void setLocalModelScalingAmount (float localScl)=0
 
virtual const std::string & className () const =0
 
virtual void setAnimationFrame (const std::string &animationName, int frameIndex)=0
 
virtual void setAnimationRange (const std::string &animationName, int firstFrameIndex, int lastFrameIndex)=0
 
virtual void setAnimationSpeed (const std::string &animationName, double framesPerSecond)=0
 
virtual void setAnimationState (const std::string &animationName, AnimationState mode)=0
 
virtual void getParts (PartList &parts) const =0
 
virtual bool hasPart (int partId) const =0
 
virtual void setUvOffset (const std::string &annotation, float uOffset, float vOffset)=0
 
virtual void setDynamicSensorRegion (const std::string &region, bool state)=0
 
virtual void weaponFired (const DtUnicode &munitionModelDefName)=0
 
virtual bool dynamicSensorRegion (const std::string &region)=0
 
virtual void setLinkageConfigPair (const std::string &linkageName, const std::string &configName)=0
 
virtual bool findPartPositionAndOrientation (int partNumber, DtVector &position, DtQuat &ori)=0
 
virtual bool supportsMultithreadedLoad ()
 
virtual void setPartTranslation (int partNumber, const DtVector &transform, const DtVector &velocity)=0
 
virtual void setPartOrientation (int partNumber, const DtTaitBryan &orientation, const DtVector &rotationalVelocity)=0
 
virtual void setPartRotationalVelocity (int partNumber, const DtVector &rotationalVelocity, bool forceUpdate)=0
 
virtual void setPartVisibility (int partNumber, bool onOff)=0
 
virtual void setState (int stateNumber, int stateValue)=0
 
virtual void setLightpointMaxDistance (float distance)=0
 
virtual void setLightPointGroup (const std::string &groupName)=0
 
virtual void setLightPointGroupIntensity (const std::string &groupName, float intensity)=0
 
- Public Member Functions inherited from makVrv::DtModel
 DtModel (DtDe &de, DtUniqueID id)
 
virtual ~DtModel ()
 
DtModelInstancecreateModelInstance (const std::string &modelDefName, bool realize=true)
 
virtual const std::string & modelDefinitionName ()
 
virtual void saveModelToFile (const std::string &filename)
 
virtual DtUniqueID uniqueId () const
 
unsigned int transformSize () const
 
virtual void setPosition (int vtx, const DtVector &position)
 
virtual const DtVectorposition (int vtx=0) const
 
virtual void removePosition (int vtx)
 
virtual void setPositionOffset (const DtVector &positionOffset)
 
virtual const DtVectorpositionOffset () const
 
virtual void setOrientation (int vtx, const DtTaitBryan &orientation)
 
virtual void setPositionAndOrientation (int vtx, const DtVector &positionOffset, const DtTaitBryan &orientation)
 
virtual const DtTaitBryan & orientation (int vtx=0) const
 
virtual void setOrientationOffset (const DtTaitBryan &orientationOffset)
 
virtual const DtTaitBryan & orientationOffset () const
 
virtual void enableColorBlending (bool b)
 
virtual void setBlendColor (float r, float g, float b, float a)
 
virtual void getBlendColor (float &r, float &g, float &b, float &a)
 
virtual bool colorBlendingEnabled () const
 
virtual void setColor (float r, float g, float b, float a)
 
virtual void enableLighting (bool l)
 
virtual DtModelSetId modelSet () const
 
const DtVectorboundingBoxExtents () const
 
void getBoundingBoxExtents (double &x, double &y, double &z) const
 
const DtVectorboundingBoxCenter () const
 
virtual void getBoundingBoxCenter (double &x, double &y, double &z) const
 
virtual void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
 
void setContributesToBound (bool trueOrFalse)
 
bool contributesToBound () const
 
DtDede ()
 
virtual void setModelInstance (DtModelInstance *modelInstance)
 
virtual void promoteBackgroundModelInstance (const DtModelDefinition &defintion)
 
virtual void setVisible (bool isVisible)
 
virtual bool visible () const
 
DtUniqueID sceneObjectId () const
 
virtual void addedToSceneObjectAsProp (const DtUniqueID &sceneObj)
 
virtual void addedToSceneObject (const DtUniqueID &sceneObj, DtModelSetId modelSet, int visualizerType)
 
virtual void setElementId (DtElementID id)
 
virtual void removedFromSceneObject ()
 
virtual void setIsSupportModel (bool isSupport)=0
 
virtual void setSolid (bool isSolid)
 
virtual bool isProp ()
 
virtual void updateMinLastFrameDistance (float distance)
 
virtual void resetLastFrameDistance ()
 
virtual float minLastFrameDistance () const
 
virtual DtModelInstancemodelInstance ()
 
virtual const DtModelInstancemodelInstance () const
 
int visualizerType () const
 
virtual void backgroundLoad ()
 
virtual void foregroundLoad ()
 
virtual bool isActivelyBackgroundLoading ()
 
virtual DtLoaderHandlegetLoadQueueHandle ()
 

Additional Inherited Members

- Public Attributes inherited from makVrv::DtModel
boost::signalslib::signal
< void(DtModel *)> 
signal_modelToBeDestroyed
 
boost::signalslib::signal
< void(DtModel *)> 
signal_modelChanged
 
boost::signalslib::signal
< bool(DtModel *, bool),
SlotReturnOR
signal_visibilityChangeRequested
 
boost::signalslib::signal
< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceCreated
 
boost::signalslib::signal
< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceToBeDestroyed
 
- Protected Types inherited from makVrv::DtModel
typedef std::vector
< ObjectTransform
TransformList
 
- Protected Member Functions inherited from makVrv::DtModel
virtual void addToScene (const DtUniqueID &sceneObjectId, DtModelSetId modelSet, int visualizerType)=0
 
virtual void addToSceneAsProp (const DtUniqueID &sceneObjectId)
 
virtual void removeFromScene ()=0
 
virtual void initializeModelInstance ()
 
void slot_modelInstanceChanged (DtModelInstance *instance)
 
virtual void waitAndClearLoadHandle ()
 
virtual void removedFromLoadQueue ()
 
virtual void setDoneBackgroundLoading ()
 
virtual void setActivelyBackgroundLoading ()
 
- Protected Attributes inherited from makVrv::DtModel
DtLoaderHandlemyInLoadQueueHandle
 
DtDemyDe
 
const DtUniqueID myUniqueId
 
DtUniqueID myElementId
 
DtUniqueID myParentSceneObjectID
 
bool myColorBlendingEnabled
 
DtModelInstancemyBackgroundModelInstance
 
float myMinLastFrameDistance
 
TransformList myTransforms
 
DtModelInstancemyModelInstance
 
DtModelSetId myModelSet
 
int myVisualizerType
 
bool myContributesToBound
 
bool myIsPropFlag
 
float myBlendColor [4]
 
bool myVisibleFlag
 
DtVector myPositionOffset
 
DtTaitBryan myOrientationOffset
 
std::string myModelDefinitionName
 
bool myRequireModelInstance = true
 
- Static Protected Attributes inherited from makVrv::DtModel
static bool theInittedState
 

Member Typedef Documentation

Member Enumeration Documentation

Enumerator
START 
STOP 
PAUSE 
RESUME 

Constructor & Destructor Documentation

makVrv::DtArticulatedModel::DtArticulatedModel ( DtDe ,
DtUniqueID  id 
)

CTOR.

virtual makVrv::DtArticulatedModel::~DtArticulatedModel ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtArticulatedModel::setModelScalingEnabled ( bool  b)
pure virtual

Indicate whether or not this model may be model-scaled Default is false.

Implemented in makVrv::DtOsgArticulatedModel, and makVrv::DtDeprecatedOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setModelDefinition ( const std::string &  def)
pure virtual

Override the set model definition function. Use this to parse a model after it is loaded.

Reimplemented from makVrv::DtModel.

Implemented in makVrv::DtOsgArticulatedModel, makVrf::DtVrfOsgArticulatedModel, and DtVrfOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setLocalModelScalingEnabled ( bool  enabled)
pure virtual

Indicates whether local model scaling for the model is enabled. Local model scaling overrides generic (global) model scaling. Default is false.

Implemented in makVrv::DtOsgArticulatedModel, and makVrv::DtDeprecatedOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setLocalModelScalingAmount ( float  localScl)
pure virtual

Sets the amount of local scaling to apply to the model. Only applies when local model scaling is enabled.

Implemented in makVrv::DtOsgArticulatedModel, and makVrv::DtDeprecatedOsgArticulatedModel.

virtual const std::string& makVrv::DtArticulatedModel::className ( ) const
pure virtual

Get the class name of the model instance owner. This is used to control how model instances are created.

Reimplemented from makVrv::DtModel.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setPartTranslation ( int  partNumber,
const DtVector transform,
const DtVector velocity 
)
pure virtual

Update the part translation.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setPartOrientation ( int  partNumber,
const DtTaitBryan &  orientation,
const DtVector rotationalVelocity 
)
pure virtual

Rotate the part.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setPartRotationalVelocity ( int  partNumber,
const DtVector rotationalVelocity,
bool  forceUpdate 
)
pure virtual

Set just rotational velocity for part with the option to force an update next frame (default) or not.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setPartVisibility ( int  partNumber,
bool  onOff 
)
pure virtual

Update the part translation.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setState ( int  stateNumber,
int  stateValue 
)
pure virtual

Set the state on the model.

Implemented in makVrv::DtOsgArticulatedModel, and DtVrfOsgMultipleArticulatedModel.

virtual void makVrv::DtArticulatedModel::setLightpointMaxDistance ( float  distance)
pure virtual

Specify the maximum range at which lightpoints on this model will be visible. This sets ALL lightpoints to the same range.

Implemented in makVrv::DtOsgArticulatedModel, and makVrv::DtDeprecatedOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setLightPointGroup ( const std::string &  groupName)
pure virtual

Set the light point group that this model's light points belong to.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setLightPointGroupIntensity ( const std::string &  groupName,
float  intensity 
)
pure virtual

Set the intensity of a light point group.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setAnimationFrame ( const std::string &  animationName,
int  frameIndex 
)
pure virtual

Set the current frame of an animation.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setAnimationRange ( const std::string &  animationName,
int  firstFrameIndex,
int  lastFrameIndex 
)
pure virtual

Set the animation range.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setAnimationSpeed ( const std::string &  animationName,
double  framesPerSecond 
)
pure virtual

Set the animation speed.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setAnimationState ( const std::string &  animationName,
AnimationState  mode 
)
pure virtual

Set the animation state(mode).

Implemented in makVrv::DtOsgArticulatedModel, and makVrv::DtDeprecatedOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::getParts ( PartList parts) const
pure virtual

Get the part list.

Implemented in makVrv::DtOsgArticulatedModel.

virtual bool makVrv::DtArticulatedModel::hasPart ( int  partId) const
pure virtual

Check if the articulated model has a part with the provided part id.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setUvOffset ( const std::string &  annotation,
float  uOffset,
float  vOffset 
)
pure virtual

Groups using a texture atlas are identified using an annotation (ex. annotation label_char_1). setUvOffset is used to set the offset into the atlas texture for the group indicated by the annotation.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setDynamicSensorRegion ( const std::string &  region,
bool  state 
)
pure virtual

Set the state of a dynamic sensor region.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::weaponFired ( const DtUnicode munitionModelDefName)
pure virtual

let the model know when a weapon was fired and what the model definition for the munition is

Implemented in makVrv::DtOsgArticulatedModel.

virtual bool makVrv::DtArticulatedModel::dynamicSensorRegion ( const std::string &  region)
pure virtual

Get the state of a dynamic sensor region.

Implemented in makVrv::DtOsgArticulatedModel.

virtual void makVrv::DtArticulatedModel::setLinkageConfigPair ( const std::string &  linkageName,
const std::string &  configName 
)
pure virtual

Configure an entity according to a (linkageName, configName) pair. Additional entity state may be configured via a metafile referenced by the DtModelDefinition. The linkageName is the name of the linkage within the metafile, either the NodeName or the Annotation. The configName is how the linkage of the entity is to be configured using data a from the configName mappings of the FeatureData for the linkage according to the FeatureName tag.

Implemented in makVrv::DtOsgArticulatedModel.

virtual bool makVrv::DtArticulatedModel::findPartPositionAndOrientation ( int  partNumber,
DtVector position,
DtQuat ori 
)
pure virtual

Finds the absolute position and orientation of a part. This function is more efficient than calling both the position and orientation functions.

Implemented in makVrv::DtOsgArticulatedModel.

virtual bool makVrv::DtArticulatedModel::supportsMultithreadedLoad ( )
virtual

controls if the model is loaded in the background

Reimplemented from makVrv::DtModel.


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

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)