![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 2010 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: Dt2DTriangleStateVisualizer.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 *********************************************************************/ 00011 00012 #pragma once 00013 #include <vrvCore/DtStateVisualizer.h> 00014 #include <vrvCore/DtRemoteGraphicVisualizerAttributes.h> 00015 #include <vrvCore/DtWindowPolygonAgent.hpp> 00016 #include <vrvCore/DtVisibilityAdapter.h> 00017 00018 namespace makVrv 00019 { 00022 class DT_DLL_VRVCORE Dt2DTriangleStateVisualizer : public DtStateVisualizer, 00023 public DtRemoteGraphicVisualizerAttributes 00024 { 00025 public: 00027 Dt2DTriangleStateVisualizer(DtBaseConnection& simulation, 00028 DtStateListener& listener, int modelSet); 00029 00031 virtual ~Dt2DTriangleStateVisualizer(); 00032 00034 virtual void setColor(float r,float g,float b,float a); 00035 00037 virtual void setFlashing(bool flashing); 00038 00041 virtual void setVertex(unsigned int index, double x, double y); 00042 00045 virtual void setFillPattern(unsigned int pattern); 00046 00048 virtual void setFill(bool fill); 00049 00051 virtual const DtStateVisualizer::TypeInfo& typeInfo() const; 00052 00054 static const DtStateVisualizer::TypeInfo& theTypeInfo(); 00055 00056 protected: 00060 virtual void setVisible(bool yesNo); 00061 00063 virtual void createModelAgents(); 00064 00072 virtual void destroyModelAgents(); 00073 00075 virtual void setModelDefinitionForAgents(); 00076 00077 protected: 00078 00079 DtWindowPolygonAgent* myPolygonAgent; 00080 DtVisibilityAdapter<DtWindowPolygonAgent>* myVisibilityAdapter; 00081 }; 00082 00083 typedef DtStateVisualizerCreatorTemplate<Dt2DTriangleStateVisualizer> 00084 Dt2DTriangleStateVisualizerCreator; 00085 }