VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEnvironmentalLineVisualizer.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2023 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
9 
10 #pragma once
11 
15 #include <matrix/vlVector.h>
16 
17 namespace makVrv
18 {
19  class DtTacticalGraphicStateListener;
20 
21  namespace vrvTacticalGraphicUtilities
22  {
24  }
25 
30  public DtStateVisualizer
31  {
32  public:
35  DtSceneObjectAgent* sceneObject, DtModelSetId modelSet );
36 
39 
41  virtual void initialize() override;
42 
48  virtual void setColor(float r, float g, float b, float a);
49 
52  virtual void useDefaultColor();
53 
55  virtual void getColor(float& r, float& g, float& b, float& a) const;
56 
58  virtual void setSelectedColor( float r, float g, float b, float a );
59  virtual void getSelectedColor( float& r, float& g, float& b, float& a ) const;
60 
62  virtual void updateColors() = 0;
64 
69  virtual void addVertex(int index, const DtVector&);
70 
72  virtual void removeVertex(int index);
73 
75  virtual void modifyVertex(int index, const DtVector&);
76 
79  virtual void setVertexList(
82 
85  virtual void slot_setSelected(bool) override;
86 
90  virtual void setSegmentEndArrow( int seg, bool flag ) = 0;
91 
93  virtual void setSegmentStartArrow( int seg, bool flag ) = 0;
94 
96  virtual void setArrowSize( double );
97 
99  virtual double arrowSize() const;
100 
102  virtual void setArrowHeadPlacement( vrvTacticalGraphicUtilities::ArrowHeadPlacement, bool force );
103 
105  virtual vrvTacticalGraphicUtilities::ArrowHeadPlacement arrowHeadPlacement() const;
106 
108  virtual void setArrowStyle( vrvTacticalGraphicUtilities::ArrowStyle );
109 
111  virtual vrvTacticalGraphicUtilities::ArrowStyle arrowStyle() const;
113 
117  virtual void setPixelLineWidth( int );
118 
120  virtual void setStipplePattern(unsigned short);
121 
123  virtual unsigned short stipplePattern() const;
124 
127  virtual void setPenStyle(vrvTacticalGraphicUtilities::PenStyle);
128 
131  virtual void setLineStyle(vrvTacticalGraphicUtilities::LineStyle);
132 
135  virtual void setFixedWidthSizing(bool);
136 
138  virtual bool fixedWidthSizing() const;
139 
142  virtual void setIsFriendlyForceColorOverrideEnabled(bool enabled);
143 
146  virtual bool isFriendlyForceColorOverrideEnabled() const;
147 
148  protected:
151  virtual void setSolid(bool);
152 
155  void setFriendlyForceColorStyle(vrvTacticalGraphicUtilities::FriendlyForceColorStyle style);
156 
158  virtual void updateArrowFrequencyForSegment( int );
159 
162  virtual void setInitialValuesFromVisualizerDefinition() override;
163 
166  virtual void connectToListenerSignals() override;
167 
169  virtual void createModelAgents() override;
171  virtual void destroyModelAgents() override;
173  virtual void setModelDefinitionForAgents() override;
174  protected:
177 
178  DtVector myPointOffset;
179 
180  float myDefaultColor[4];
181  float myColor[4];
182  float mySelectedColor[4];
183 
187  double myArrowSize;
188  unsigned short myLineStipple;
190  bool mySolid;
194  };
195 }
std::vector< DtVector > VertexList
Definition: DtEnvironmentalStateListener.h:33
unsigned short myLineStipple
Definition: DtEnvironmentalLineVisualizer.h:188
ArrowHeadPlacement
Definition: DtTacticalGraphicUtilities.h:59
vrvTacticalGraphicUtilities::LineStyle myLineStyle
Definition: DtEnvironmentalLineVisualizer.h:186
vrvTacticalGraphicUtilities::ArrowHeadPlacement myArrowHeadPlacement
Definition: DtEnvironmentalLineVisualizer.h:185
The DtTacticalGraphicStateListener is a class that deals with basic TacticalGraphic process code (suc...
Definition: DtTacticalGraphicStateListener.h:27
bool myFixedWidthSizing
Definition: DtEnvironmentalLineVisualizer.h:189
LineStyle
Default line Styles.
Definition: DtTacticalGraphicUtilities.h:28
DtVector myPointOffset
Definition: DtEnvironmentalLineVisualizer.h:178
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
double myArrowSize
Definition: DtEnvironmentalLineVisualizer.h:187
ArrowStyle
Definition: DtTacticalGraphicUtilities.h:46
PenStyle
Definition: DtTacticalGraphicUtilities.h:71
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains makVrv:DtStateVisualizer class.
DtTacticalGraphicStateListener * myLineListener
Definition: DtEnvironmentalLineVisualizer.h:175
Contains makVrv:DtEnvironmentalStateListener class.
The DtStateVisualizer is an abstract class. Developers derive from this to create logic that &quot;directs...
Definition: DtStateVisualizer.h:30
bool mySolid
Definition: DtEnvironmentalLineVisualizer.h:190
DtEnvironmentalLineVisualizer display a line that contains at least two points.
Definition: DtEnvironmentalLineVisualizer.h:29
vrvTacticalGraphicUtilities::FriendlyForceColorStyle myFriendlyForceColorStyle
Definition: DtEnvironmentalLineVisualizer.h:192
DtEnvironmentalStateListener::VertexList myVertices
Definition: DtEnvironmentalLineVisualizer.h:176
FriendlyForceColorStyle
Enumeration used to specify the current friendly force color style By default, the friendly force col...
Definition: DtTacticalGraphicUtilities.h:107
vrvTacticalGraphicUtilities::ArrowStyle myArrowStyle
Definition: DtEnvironmentalLineVisualizer.h:184
Contains makVrv:DtLineStyleGeometryManager.
DtModelSetId
Definition: DtModelSetEnums.h:19
int myPixelLineWidth
Definition: DtEnvironmentalLineVisualizer.h:191
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:26
bool myIsFriendlyForceColorOverrideEnabled
Definition: DtEnvironmentalLineVisualizer.h:193

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)