![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 2012 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00009 00010 #pragma once 00011 00012 #include <vrvCore/vrvCore.h> 00013 #include <vrvCore/DtSceneObjectVisualizer.h> 00014 00015 class DtVector; 00016 00017 namespace makVrv 00018 { 00019 class DtIntervisibilityLineStateListener; 00020 class DtSegmentedLineModelAgent; 00021 class DtAttachableIntervisibilityUpdaterAgent; 00022 00026 class DT_DLL_VRVCORE DtIntervisibilityLineVisualizer : 00027 public DtSceneObjectVisualizer 00028 { 00029 public: 00031 DtIntervisibilityLineVisualizer(DtBaseConnection& simulation, 00032 DtStateListener& listener, int modelSet); 00033 00035 virtual ~DtIntervisibilityLineVisualizer(); 00036 00038 virtual void setVisibleColor(float r, float g, float b, float a); 00039 00041 virtual void setBlockedColor(float r, float g, float b, float a); 00042 00045 virtual void setStartPoint(const DtVector&); 00046 00049 virtual void setEndPoint(const DtVector&); 00050 00053 virtual void setStartAttachPoint(DtElementID); 00054 00056 virtual void setStartPointOffset(const DtVector&); 00057 00060 virtual void setEndAttachPoint(DtElementID); 00061 00063 virtual void setEndPointOffset(const DtVector&); 00064 00066 virtual void setSelected( bool b ); 00067 00069 virtual void resetSpatial(); 00070 00073 virtual void createModelAgents(); 00074 00075 protected: 00077 virtual void destroyModelAgents(); 00078 00081 virtual void setModelDefinitionForAgents(); 00082 00084 virtual DtSegmentedLineModelAgent* createLineAgent() = 0; 00085 00086 protected: 00087 DtIntervisibilityLineStateListener& myLineListener; 00088 DtSegmentedLineModelAgent* myLineModelAgent; 00089 DtAttachableIntervisibilityUpdaterAgent* myAttachableUpdaterAgent; 00090 }; 00091 } 00092