![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: $ $Revision: $ $State: $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 #include <vrvCore/DtPointFeatureVisualizer.h> 00015 #include <vrvUtil/DtSignalConnectionManager.h> 00016 00017 class DtVector; 00018 00019 namespace makVrv 00020 { 00021 00022 class DtAttachableCuboidModelAgent; 00023 class DtCylinderModelAgent; 00024 class DtEllipsoidArcModelAgent; 00025 class DtOverlayPolygonModelAgent; 00026 class DtSceneObjectAgent; 00027 00031 class DT_DLL_VRVCORE DtDefaultPointFeatureVisualizer : public DtPointFeatureVisualizer 00032 { 00033 public: 00034 DtDefaultPointFeatureVisualizer(DtDe& de, DtPointFeature* feature); 00035 00036 virtual ~DtDefaultPointFeatureVisualizer(); 00037 00039 virtual void visualize( int modelSet ); 00040 00042 virtual std::vector<DtUniqueID> findSceneObjectIds() const; 00043 00045 virtual void setColor(const float rgba[4]); 00046 00048 virtual void setOutlineColor(const float rgba[4]); 00049 00051 virtual void setHighlighted(bool highlighted); 00052 00053 protected: 00054 00056 void updatePosition(const DtVector& position); 00057 00059 void create3dModels(int modelSet); 00060 00062 void create2dModels(int modelSet); 00063 00064 void updateHighlights(); 00065 00066 protected: 00067 00068 DtDe& myDe; 00069 00070 bool myHighlightedFlag; 00071 float myOutlineColor[4]; 00072 00073 DtSignalConnectionManager myConnections; 00074 DtSceneObjectAgent* my3dAgent; 00075 DtSceneObjectAgent* my2dAgent; 00076 00078 DtEllipsoidArcModelAgent* mySphereModel; 00079 DtAttachableCuboidModelAgent* myCubeModel; 00080 DtCylinderModelAgent* myCylinderModel; 00081 00083 DtOverlayPolygonModelAgent* my2dOutlinePolygon; 00084 DtOverlayPolygonModelAgent* my2dFilledPolygon; 00085 }; 00086 00087 } 00088