![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 2010 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: DtEllipsoidStateVisualizer.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 *********************************************************************/ 00011 00012 #pragma once 00013 #include <vrvCore/vrvCore.h> 00014 #include <vrvCore/DtAttachableEllipsoidModelAgent.hpp> 00015 #include <vrvCore/DtRemoteGraphicVisualizerAttributes.h> 00016 #include <vrvCore/DtSceneObjectVisualizer.h> 00017 #include <vrvCore/DtVisibilityAdapter.h> 00018 00019 class DtTaitBryan; 00020 class DtVector; 00021 00022 namespace makVrv 00023 { 00024 class DtAttachableDeadReckonUpdaterAgent; 00025 00029 class DT_DLL_VRVCORE DtEllipsoidStateVisualizer : 00030 public DtSceneObjectVisualizer , 00031 public DtRemoteGraphicVisualizerAttributes 00032 { 00033 public: 00035 DtEllipsoidStateVisualizer(DtBaseConnection& simulation, 00036 DtStateListener& listener, int modelSet); 00037 00039 virtual ~DtEllipsoidStateVisualizer(); 00040 00042 virtual void setDimensions(const DtVector& dim); 00043 00045 virtual void setColor(float r,float g,float b,float a); 00046 00048 virtual void setFlashing(bool flashing); 00049 00051 virtual void setPosition(const DtVector& pos); 00052 00054 virtual void setOrientation(const DtTaitBryan& orientation); 00055 00061 virtual void setAttached(DtUniqueID id, int vtx, double percentage); 00062 00064 virtual void setHostId(const std::string& id, int vtx, double percentage); 00065 00067 virtual const DtStateVisualizer::TypeInfo& typeInfo() const; 00068 00070 static const DtStateVisualizer::TypeInfo& theTypeInfo(); 00071 00072 protected: 00074 virtual void setVisible(bool yesNo); 00075 00076 virtual void createModelAgents(); 00077 00078 virtual void destroyModelAgents(); 00079 00080 virtual void setModelDefinitionForAgents(); 00081 00082 protected: 00083 DtAttachableEllipsoidModelAgent* myEllipsoidModelAgent; 00084 DtAttachableDeadReckonUpdaterAgent* myAttachableUpdater; 00085 DtVisibilityAdapter<DtAttachableEllipsoidModelAgent>* myVisibilityAdapter; 00086 }; 00087 00088 typedef DtStateVisualizerCreatorTemplate<DtEllipsoidStateVisualizer> 00089 DtEllipsoidStateVisualizerCreator; 00090 }