VR-Forces 4.0.4 Class Documentation
include/vrvCore/DtEntityArticulatedStateModelVisualizer.h
Go to the documentation of this file.
00001 /*****************************************************************************
00002  * Copyright (c) 2011 MAK Technologies, Inc.
00003  * All rights reserved.
00004  *****************************************************************************/
00005 /*****************************************************************************
00006  * $RCSfile: DtEntityArticulatedStateModelVisualizer.h,v $ $Revision: 1.43 $ $State: Exp $
00007  *****************************************************************************/
00008 
00014 
00015 #pragma once 
00016 #include <vrvCore/DtEntityStateVisualizer.h>
00017 
00018 class DtVector;
00019 class DtTaitBryan;
00020 
00021 namespace makVrv
00022 {
00023 
00024    class DtArticulatedModelAgent;
00025 
00028    class DT_DLL_VRVCORE DtEntityArticulatedStateModelVisualizer
00029       : public DtEntityStateVisualizer
00030    {
00031    public:
00032 
00034       DtEntityArticulatedStateModelVisualizer( DtBaseConnection& simulation,
00035          DtStateListener& listener, int modelSet );
00036 
00038       virtual ~DtEntityArticulatedStateModelVisualizer();
00039 
00041       virtual void setAutoSendMovingState(bool);
00042       bool autoSendMovingState() const
00043       {
00044          return myAutoSendMovingState;
00045       }
00046 
00048       virtual void setState( int stateNumber, int stateValue );
00049 
00051       virtual void setVisualizerDefinition(const DtVisualizerDefinition& visDef);
00052 
00054       virtual void setColorizedColor( float r, float g, float b, float alpha );
00055 
00057       virtual void setDisableModelScaling( bool b );
00058 
00060       virtual void setLocalModelScalingEnabled( bool enabled );
00061 
00063       virtual void setLocalModelScalingAmount( float localScl );
00064 
00066       virtual const DtStateVisualizer::TypeInfo& typeInfo() const;
00067 
00069       static const DtStateVisualizer::TypeInfo& theTypeInfo();
00070 
00071    protected:
00072 
00073       virtual void createModelAgents();
00074       virtual void destroyModelAgents();
00075       virtual void setModelDefinitionForAgents();
00076 
00077       virtual void updateColorBlending();
00078 
00080       virtual void setPartTranslation(int partNumber, 
00081          const DtVector& transform, const DtVector& velocity) ;
00082 
00084       virtual void setPartOrientation(int partNumber, 
00085          const DtTaitBryan& orientation, const DtVector& rotationalVelocity);
00086 
00088       virtual void setVelocity(const DtVector& v);
00089 
00090       void updateMoving( bool moving);
00091       virtual void setRelativeVelocity(const DtVector& v);
00092 
00093    protected:
00094 
00095       DtArticulatedModelAgent* myArticulatedModelAgent;
00096 
00097       bool myAutoSendMovingState;
00098       bool myMovingFlag;
00099       bool myAffectsBounds;
00100       bool myColorized;
00101 
00102       float myColorizedRed;
00103       float myColorizedGreen;
00104       float myColorizedBlue;
00105       float myColorizedAlpha;
00106 
00107       bool myDisableModelScaling;
00108       bool myEnableLocalModelScaling;
00109 
00110       float myLocalModelScalingAmount;
00111 
00112    };
00113 
00114 
00115    typedef DtStateVisualizerCreatorTemplate<DtEntityArticulatedStateModelVisualizer>
00116       DtEntityArticulatedStateModelVisualizerCreator;
00117 
00118 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)