VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtMilStdIconVisualizer.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
13 
14 #include <vrvUtil/DtUnicode.h>
15 
17 
18 #include <vlutil/vlExceptions.h>
19 
20 namespace makVrv
21 {
22 
23  class DtProjectedWidgetModelAgent;
24  class DtWidgetAgent;
25  class DtWidgetLabelAgent;
26  class DtWidgetInstanceSignaler;
27  class DtObjectTypeStateListener;
28 
34  {
35  public:
36 
39  DtStateListener& listener, int modelSet );
40 
43  DtSceneObjectAgent* sceneObject, int modelSet );
44 
46  virtual ~DtMilStdIconVisualizer();
47 
49  DtMilStdIconVisualizer() = delete;
50 
53 
55  DtMilStdIconVisualizer& operator=( const DtMilStdIconVisualizer& ) = delete;
56 
57  public:
58 
60  virtual void initialize() override;
61 
63  virtual void setModelDefinitionForAgents();
64 
74  virtual void slot_setSelected( bool selected ) override;
75 
77  virtual void setOutlineEnabled( bool enabled );
79  virtual bool outlineEnabled() const;
80 
82  virtual void setFillEnabled( bool enabled );
84  virtual bool fillEnabled() const;
85 
87  virtual void setDamageEnabled( bool enabled );
89  virtual bool damageEnabled() const;
90 
97  virtual void setIsPinned(bool myPinned);
98 
105  virtual bool isPinned() const;
106 
111  virtual void setBaseAltitudeToUseWhilePinned(double baseAltitude);
112 
117  virtual double baseAltitudeToUseWhilePinned();
118 
123  virtual void setFixedIconScalingEnabled(bool fixedScalingEnabled );
124 
127  virtual void setIconScale( float scale );
128 
130  virtual void setAltitudeSpecificConfigurations(
132 
134  virtual void setColorByAffiliationEnabled( bool enabled );
136  virtual bool colorByAffiliationEnabled() const;
137 
140  virtual void setForceId( int );
141 
142  virtual int forceId() const
143  {
144  return myForceId;
145  }
146 
149  virtual void setDamaged( bool );
150  virtual bool damaged() const
151  {
152  return myDamaged;
153  }
154 
156  virtual void setForceColor( float r, float g, float b, float a );
157  virtual void getForceColor( double& r, double& g, double& b, double& a );
158 
163 
164  virtual unsigned short outlineCharacterForUnitSymbolFont(
165  unsigned short outlineBase, int force ) const;
166 
167  virtual unsigned short fillCharacterForUnitSymbolFont(
168  unsigned short outlineBase, int force ) const;
169 
171  virtual DtUnicode generateSymbolString( float fillColor[4],
172  float outlineColor[4], unsigned int fillGlyph,
173  unsigned int outlineGlyph, bool damaged ) const;
174 
176  virtual unsigned short outlineGlyph() const;
177  virtual unsigned short fillGlyph() const;
178  virtual unsigned short damageGlyph() const;
179 
180  virtual void setPickable( bool b );
181 
183  virtual void rotateSymbolToHeading(double);
184 
186  virtual void setHasMouseCursor(bool);
187  virtual bool hasMouseCursor() const;
188 
189  protected:
190 
191  virtual DtObjectTypeStateListener& objectTypeStateListener();
192  virtual const DtObjectTypeStateListener& objectTypeStateListener() const;
193 
194  virtual bool fillCharacterByOutline( unsigned short outline,
195  unsigned short lower, unsigned short upper, unsigned short start,
196  bool equipment, unsigned short& fill ) const;
197 
198  virtual unsigned short forceOffset( int force ) const;
199 
204  virtual void displayChanged();
205 
206  virtual void createModelAgents();
207  virtual void destroyModelAgents();
208 
212  virtual void update();
213 
216  virtual void updateLabel();
217 
220  virtual void connectToListenerSignals() override;
221 
224  virtual void setInitialValuesFromVisualizerDefinition() override;
225 
226  protected:
227  DtProjectedWidgetModelAgent* myProjectIconPosition;
228  DtWidgetLabelAgent* myLabel;
237 
241 
244 
246  bool myDamaged;
249 
254 
256  unsigned int myHoveredGroupId; // hoverGroupSet
257  unsigned int mySelectedGroupId; // selectedGroupSet
258  unsigned int myGroupId; // iconsGroupSet
259  unsigned int myGlyphCenterPolicy;
261  float myForceColor[4];
262  float myScale;
265  };
266 
267 }
bool myFixedScalingEnabled
Definition: DtMilStdIconVisualizer.h:245
bool myDamageEnabledFlag
False
Definition: DtMilStdIconVisualizer.h:234
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
bool myOutlineFlag
True
Definition: DtMilStdIconVisualizer.h:230
unsigned int mySelectedGroupId
Definition: DtMilStdIconVisualizer.h:257
double myBaseAltitudeToUseWhilePinned
The base altitude to use when determining the scale to use while pinned std::numeric_limits&lt;double&gt;:...
Definition: DtMilStdIconVisualizer.h:240
bool myDamaged
Definition: DtMilStdIconVisualizer.h:246
unsigned int myGroupId
Definition: DtMilStdIconVisualizer.h:258
DtUnicodeChar myDamageGlyph
Definition: DtMilStdIconVisualizer.h:252
DtWidgetLabelAgent * myLabel
Definition: DtMilStdIconVisualizer.h:228
DtUnicodeChar myFillGlyph
Definition: DtMilStdIconVisualizer.h:251
bool myColorByAffiliationFlag
True
Definition: DtMilStdIconVisualizer.h:236
DtProjectedWidgetModelAgent * myProjectIconPosition
Definition: DtMilStdIconVisualizer.h:227
bool myHasMouseCursor
Definition: DtMilStdIconVisualizer.h:248
unsigned int myHoveredGroupId
Definition: DtMilStdIconVisualizer.h:256
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:38
virtual int forceId() const
Definition: DtMilStdIconVisualizer.h:142
A single unicode character.
Definition: DtUnicodeChar.h:17
bool myPinnedFlag
whether or not the widget this visualizer controls is pinned
Definition: DtMilStdIconVisualizer.h:243
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains makVrv:DtStateVisualizer class.
std::vector< DtDynamicScaleConfiguration > DtDynamicScaleConfigurationCollection
Definition: DtEntitySettingsRecord.h:54
bool myForceEffectsGlyphs
Definition: DtMilStdIconVisualizer.h:247
float myScale
Definition: DtMilStdIconVisualizer.h:262
The DtStateVisualizer is an abstract class. Developers derive from this to create logic that &quot;directs...
Definition: DtStateVisualizer.h:32
DtUnicode mySymbolString
Definition: DtMilStdIconVisualizer.h:253
unsigned int myGlyphCenterPolicy
Definition: DtMilStdIconVisualizer.h:259
The DtObjectTypeStateListener is a base class used by elements that have object types ( including ent...
Definition: DtObjectTypeStateListener.h:30
makArchives::DtDynamicScaleConfigurationCollection myLabelScalesByMinimumAltitude
Definition: DtMilStdIconVisualizer.h:263
A visualizer for displaying a Military Standard Symbology Icon. A symbology icon is made up of severa...
Definition: DtMilStdIconVisualizer.h:33
bool myFillEnabledFlag
True
Definition: DtMilStdIconVisualizer.h:232
virtual bool damaged() const
Definition: DtMilStdIconVisualizer.h:150
DtObjectTypeStateListener * myObjectTypeStateListener
Definition: DtMilStdIconVisualizer.h:264
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:25
int myForceId
Definition: DtMilStdIconVisualizer.h:260
DtUnicodeChar myOutlineGlyph
Definition: DtMilStdIconVisualizer.h:250
Contains the DtEntitySettingsRecord class declaration.

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)