VR-Forces 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 #include <vrvCore/DtWidgetLabel.h>
14 
15 #include <vrvUtil/DtUnicode.h>
16 
18 
19 #include <vlutil/vlExceptions.h>
20 
21 namespace makVrv
22 {
23 
24  class DtProjectedWidgetModelAgent;
25  class DtWidgetAgent;
26  class DtWidgetLabelAgent;
27  class DtWidgetInstanceSignaler;
28  class DtObjectTypeStateListener;
29 
35  {
36  public:
39  DtSceneObjectAgent* sceneObject, DtModelSetId modelSet );
40 
42  virtual ~DtMilStdIconVisualizer();
43 
45  DtMilStdIconVisualizer() = delete;
46 
49 
51  DtMilStdIconVisualizer& operator=( const DtMilStdIconVisualizer& ) = delete;
52 
53  public:
54 
56  virtual void initialize() override;
57 
59  virtual void setModelDefinitionForAgents();
60 
70  virtual void slot_setSelected( bool selected ) override;
71 
73  virtual void setOutlineEnabled( bool enabled );
75  virtual bool outlineEnabled() const;
76 
78  virtual void setFillEnabled( bool enabled );
80  virtual bool fillEnabled() const;
81 
83  virtual void setDamageEnabled( bool enabled );
85  virtual bool damageEnabled() const;
86 
93  virtual void setIsPinned(bool myPinned);
94 
101  virtual bool isPinned() const;
102 
107  virtual void setBaseAltitudeToUseWhilePinned(double baseAltitude);
108 
113  virtual double baseAltitudeToUseWhilePinned();
114 
119  virtual void setFixedIconScalingEnabled(bool fixedScalingEnabled );
120 
123  virtual void setIconScale( float scale );
124 
126  virtual void setAltitudeSpecificConfigurations(
128 
130  virtual void setColorByAffiliationEnabled( bool enabled );
132  virtual bool colorByAffiliationEnabled() const;
133 
136  virtual void setForceId( int );
137 
138  virtual int forceId() const
139  {
140  return myForceId;
141  }
142 
145  virtual void setDamaged( bool );
146  virtual bool damaged() const
147  {
148  return myDamaged;
149  }
150 
152  virtual void setForceColor( float r, float g, float b, float a );
153  virtual void getForceColor( double& r, double& g, double& b, double& a );
154 
159 
160  virtual unsigned short outlineCharacterForUnitSymbolFont(
161  unsigned short outlineBase, int force ) const;
162 
163  virtual unsigned short fillCharacterForUnitSymbolFont(
164  unsigned short outlineBase, int force ) const;
165 
167  virtual DtUnicode generateSymbolString( float fillColor[4],
168  float outlineColor[4], unsigned int fillGlyph,
169  unsigned int outlineGlyph, bool damaged ) const;
170 
172  virtual unsigned short outlineGlyph() const;
173  virtual unsigned short fillGlyph() const;
174  virtual unsigned short damageGlyph() const;
175 
176  virtual void setPickable( bool b );
177 
179  virtual void rotateSymbolToHeading(double);
180 
182  virtual void setHasMouseCursor(bool);
183  virtual bool hasMouseCursor() const;
184 
185  protected:
186 
187  virtual DtObjectTypeStateListener& objectTypeStateListener();
188  virtual const DtObjectTypeStateListener& objectTypeStateListener() const;
189 
190  virtual bool fillCharacterByOutline( unsigned short outline,
191  unsigned short lower, unsigned short upper, unsigned short start,
192  bool equipment, unsigned short& fill ) const;
193 
194  virtual unsigned short forceOffset( int force ) const;
195 
200  virtual void displayChanged();
201 
202  virtual void createModelAgents();
203  virtual void destroyModelAgents();
204 
208  virtual void update();
209 
212  virtual void updateLabel();
213 
216  virtual void connectToListenerSignals() override;
217 
220  virtual void setInitialValuesFromVisualizerDefinition() override;
221 
222  protected:
223  DtProjectedWidgetModelAgent* myProjectIconPosition;
224  DtWidgetLabelAgent* myLabel;
233 
237 
240 
242  bool myDamaged;
245 
250 
252  unsigned int myHoveredGroupId; // hoverGroupSet
253  unsigned int mySelectedGroupId; // selectedGroupSet
254  unsigned int myGroupId; // iconsGroupSet
257  float myForceColor[4];
258  float myScale;
261  };
262 
263 }
Contains the DtAltitudeBasedScaleConfigurationRecord class declaration.
bool myFixedScalingEnabled
Definition: DtMilStdIconVisualizer.h:241
bool myDamageEnabledFlag
False
Definition: DtMilStdIconVisualizer.h:230
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:226
unsigned int mySelectedGroupId
Definition: DtMilStdIconVisualizer.h:253
double myBaseAltitudeToUseWhilePinned
The base altitude to use when determining the scale to use while pinned std::numeric_limits&lt;double&gt;:...
Definition: DtMilStdIconVisualizer.h:236
bool myDamaged
Definition: DtMilStdIconVisualizer.h:242
unsigned int myGroupId
Definition: DtMilStdIconVisualizer.h:254
DtUnicodeChar myDamageGlyph
Definition: DtMilStdIconVisualizer.h:248
DtWidgetLabelAgent * myLabel
Definition: DtMilStdIconVisualizer.h:224
OriginPlacementPolicy
Policy that determines where the origin of the label is.
Definition: DtWidgetLabel.h:40
DtUnicodeChar myFillGlyph
Definition: DtMilStdIconVisualizer.h:247
bool myColorByAffiliationFlag
True
Definition: DtMilStdIconVisualizer.h:232
DtProjectedWidgetModelAgent * myProjectIconPosition
Definition: DtMilStdIconVisualizer.h:223
bool myHasMouseCursor
Definition: DtMilStdIconVisualizer.h:244
unsigned int myHoveredGroupId
Definition: DtMilStdIconVisualizer.h:252
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
virtual int forceId() const
Definition: DtMilStdIconVisualizer.h:138
A single unicode character.
Definition: DtUnicodeChar.h:17
bool myPinnedFlag
whether or not the widget this visualizer controls is pinned
Definition: DtMilStdIconVisualizer.h:239
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains makVrv:DtStateVisualizer class.
Contains the makVrv::DtWidgetLabel class declaration.
makArchives::DtAltitudeBasedScaleConfigurationRecordCollection myLabelScalesByMinimumAltitude
Definition: DtMilStdIconVisualizer.h:259
bool myForceEffectsGlyphs
Definition: DtMilStdIconVisualizer.h:243
DtWidgetLabel::OriginPlacementPolicy myGlyphCenterPolicy
Definition: DtMilStdIconVisualizer.h:255
float myScale
Definition: DtMilStdIconVisualizer.h:258
The DtStateVisualizer is an abstract class. Developers derive from this to create logic that &quot;directs...
Definition: DtStateVisualizer.h:30
DtUnicode mySymbolString
Definition: DtMilStdIconVisualizer.h:249
The DtObjectTypeStateListener is a base class used by elements that have object types ( including ent...
Definition: DtObjectTypeStateListener.h:31
A visualizer for displaying a Military Standard Symbology Icon. A symbology icon is made up of severa...
Definition: DtMilStdIconVisualizer.h:34
bool myFillEnabledFlag
True
Definition: DtMilStdIconVisualizer.h:228
virtual bool damaged() const
Definition: DtMilStdIconVisualizer.h:146
DtObjectTypeStateListener * myObjectTypeStateListener
Definition: DtMilStdIconVisualizer.h:260
DtModelSetId
Definition: DtModelSetEnums.h:19
std::vector< DtAltitudeBasedScaleConfigurationRecord > DtAltitudeBasedScaleConfigurationRecordCollection
Definition: DtAltitudeBasedScaleConfigurationRecord.h:45
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:26
int myForceId
Definition: DtMilStdIconVisualizer.h:256
DtUnicodeChar myOutlineGlyph
Definition: DtMilStdIconVisualizer.h:246

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)