![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2011 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtEntityFacade.h,v $ $Revision: 1.68 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 #include <vrvCore/vrvCore.h> 00015 #include <vrvCore/DtEntity3dFacade.h> 00016 #include <vrvCore/DtEntity2dFacade.h> 00017 #include <vrvCore/DtModelSetRealizationManager.h> 00018 00019 namespace makVrv 00020 { 00025 class DtEntityFacade 00026 { 00027 public: 00028 00030 DtEntityFacade( DtAgentManagerInterface& sceneInterface, DtElementID id, 00031 const DtModelSetRealizationManager::ModelSetRealizations& modelSets, 00032 bool distribute = false); 00033 00035 virtual ~DtEntityFacade(); 00036 00040 00041 00043 virtual void setVisible(bool visible); 00044 00046 virtual bool visible() const; 00047 00049 virtual DtElementID elementId() const; 00050 00051 const DtEntity3dFacade* findFacadeFor3d() const; 00052 DtEntity3dFacade* findFacadeFor3d(); 00053 00054 const DtEntity3dFacade* findFacadeForColorized() const; 00055 DtEntity3dFacade* findFacadeForColorized(); 00056 00057 const DtEntity2dFacade* findFacadeFor2d() const; 00058 DtEntity2dFacade* findFacadeFor2d(); 00059 00061 00064 00065 00069 virtual void setPosition(const DtVector& position); 00070 00076 virtual DtVector position() const; 00077 00081 virtual void setVelocity(const DtVector& velocity); 00082 00087 virtual DtVector velocity() const; 00088 00090 virtual void setAcceleration(const DtVector& acceleration); 00091 00096 virtual DtVector acceleration() const; 00097 00099 virtual void setOrientation(const DtTaitBryan& orientation); 00100 00102 virtual DtTaitBryan orientation() const; 00103 00105 virtual void setAngularVelocity(const DtVector& angularVelocity); 00106 00108 virtual DtVector angularVelocity() const; 00109 00111 00115 00116 00119 virtual void setDeadReckoningEnabled(bool position, bool velocity, 00120 bool orientation); 00121 00123 virtual void setSmoothingEnabled(bool enabled); 00124 00126 virtual void setSmoothingPeriod(float period); 00127 00130 virtual void setGroundClampingMode( 00131 DtGroundClampingUpdater::GroundClampingMode mode); 00132 00134 00135 protected: 00136 00137 DtElementID myElementId; 00138 00139 DtEntity3dFacade* my3dFacade; 00140 DtEntity3dFacade* myColorizedFacade; 00141 DtEntity2dFacade* my2dFacade; 00142 }; 00143 } 00144 00145 #define DtEntityFacade_INL_ 00146 #include "DtEntityFacade.inl" 00147 #undef DtEntityFacade_INL_