VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtWedgeVisualizer.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 
12 #include <vrvCore/vrvCore.h>
16 
18 
19 namespace makVrv
20 {
32  {
33  public:
35  DtWedgeVisualizer( DtBaseConnection& simulation, DtStateListener& listener,
36  DtSceneObjectAgent* sceneObject, DtModelSetId modelSet );
37 
39  virtual ~DtWedgeVisualizer();
40 
42  DtWedgeVisualizer() = delete;
43 
45  DtWedgeVisualizer( const DtWedgeVisualizer& ) = delete;
46 
48  DtWedgeVisualizer &operator=( const DtWedgeVisualizer& ) = delete;
49 
50  public:
52  virtual void initialize() override;
53 
59  virtual void setColor( float r, float g, float b, float a );
60  virtual void getColor( float& r, float& g, float& b, float& a ) const;
62 
66  // @{
67  virtual void setCentralVertexColor( float r, float g, float b, float a );
68  virtual void getCentralVertexColor( float& r, float& g, float& b, float& a ) const;
69  // @}
70 
76  // @{
77  virtual void setInsideColor( float r, float g, float b, float a );
78  virtual void getInsideColor( float& r, float& g, float& b, float& a ) const;
79  // @}
80 
84  // @{
85  virtual void setOutsideColor( float r, float g, float b, float a );
86  virtual void getOutsideColor( float& r, float& g, float& b, float& a ) const;
87  // @}
88 
92  // @{
93  virtual void setSelectedInsideColor( float r, float g, float b, float a );
94  virtual void getSelectedInsideColor( float& r, float& g, float& b, float& a ) const;
95  // @}
96 
100  // @{
101  virtual void setSelectedOutsideColor( float r, float g, float b, float a );
102  virtual void getSelectedOutsideColor( float& r, float& g, float& b, float& a ) const;
103  // @}
104 
108  virtual void setFilled( bool filled );
109  virtual bool isFilled();
111 
115  virtual void useDefaultColor();
116 
121  virtual void setFillStyle( vrvTacticalGraphicUtilities::FillStyle );
122 
124  virtual vrvTacticalGraphicUtilities::FillStyle fillStyle() const;
125 
129  virtual void setPenStyle( vrvTacticalGraphicUtilities::PenStyle );
130 
132  virtual unsigned short lineStipple() const;
133 
136  virtual void setStipplePattern( unsigned short );
137  virtual unsigned short stipplePattern();
139 
142  virtual void slot_setSelected(bool) override;
143 
146  virtual void setSolidFillCenter( bool );
147 
149  virtual void setFillPattern( const std::vector<unsigned int>& );
150 
156  virtual void setPixelLineWidth( int );
157  virtual int pixelLineWidth();
159 
162  virtual void setIsFriendlyForceColorOverrideEnabled(bool enabled);
163 
166  virtual bool isFriendlyForceColorOverrideEnabled() const;
167 
168  protected:
171  virtual void setInitialValuesFromVisualizerDefinition() override;
172 
175  virtual void connectToListenerSignals() override;
176 
178  virtual void updateColors() = 0;
179 
182  void setFriendlyForceColorStyle(vrvTacticalGraphicUtilities::FriendlyForceColorStyle style);
183 
184  protected:
186  float myDefaultColor[4];
187  float myColor[4];
188  float myInsideColor[4];
189  float myOutsideColor[4];
190  float mySelectedInsideColor[4];
191  float mySelectedOutsideColor[4];
192  float myCentralVertexColor[4];
193 
194  float myFillAlpha;
196 
197  bool myFilled;
203 
205  unsigned short myLineStipple;
206 
208 
211  };
212 }
bool myFillAlphaSet
Definition: DtWedgeVisualizer.h:199
bool mySolidFillCenter
Definition: DtWedgeVisualizer.h:198
vrvTacticalGraphicUtilities::FriendlyForceColorStyle myFriendlyForceColorStyle
Definition: DtWedgeVisualizer.h:209
DtTacticalGraphicStateListener & myWedgeListener
Definition: DtWedgeVisualizer.h:185
Interface for a Wedge Tactical Graphic Visualizer.
Definition: DtWedgeVisualizer.h:31
bool myIsFriendlyForceColorOverrideEnabled
Definition: DtWedgeVisualizer.h:210
The DtTacticalGraphicStateListener is a class that deals with basic TacticalGraphic process code (suc...
Definition: DtTacticalGraphicStateListener.h:27
double myDefaultLineWidth
Definition: DtWedgeVisualizer.h:195
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
vrvTacticalGraphicUtilities::FillStyle myFillStyle
Definition: DtWedgeVisualizer.h:207
Contains makVrv:DtTacticalGraphicStateListener class.
PenStyle
Definition: DtTacticalGraphicUtilities.h:71
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
unsigned short myLineStipple
Definition: DtWedgeVisualizer.h:205
Contains makVrv:DtStateVisualizer class.
Contains makVrv:DtBaseConnection class.
The DtStateVisualizer is an abstract class. Developers derive from this to create logic that &quot;directs...
Definition: DtStateVisualizer.h:30
Base class to provide boost signal/slot management.
bool myFilled
Definition: DtWedgeVisualizer.h:197
FillStyle
Definition: DtTacticalGraphicUtilities.h:82
FriendlyForceColorStyle
Enumeration used to specify the current friendly force color style By default, the friendly force col...
Definition: DtTacticalGraphicUtilities.h:107
float myFillAlpha
Definition: DtWedgeVisualizer.h:194
bool mySelectedInsideColorSet
Definition: DtWedgeVisualizer.h:200
bool myCentralVertexColorSet
Definition: DtWedgeVisualizer.h:202
DtModelSetId
Definition: DtModelSetEnums.h:19
bool mySelectedOutsideColorSet
Definition: DtWedgeVisualizer.h:201
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:26
int myLineWidth
Definition: DtWedgeVisualizer.h:204
Contains DLL export macros.

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)