VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgOverlayGreatCircleArcModel.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 <vrvOsg/vrvOsg.h>
15 #include <vrvUtil/signalslib.h>
16 
17 namespace makVrv
18 {
19 
24  {
25  public:
28 
31 
32  // @name Inherited DtOverlayGreatCircleArcModel methods
33  // @{
34 
36  virtual void setPosition(int index, const DtVector& position);
37 
39  virtual void setOrientation( int index, const DtTaitBryan& orientation );
40 
42  virtual const std::vector<DtVector>& points() const;
43 
45  virtual void setColor( float r, float g, float b, float a );
46 
48  virtual void setWidth( float width );
49 
51  virtual void setStipplePattern( unsigned int pattern, int repeatFactor );
52 
55  virtual void setStyleSegments(const std::vector<double>& segmentPercentages);
56 
58  virtual void setSegmentColor(unsigned int segmentIndex,
59  float r, float g, float b, float a);
60 
62  virtual void setSegmentStipplePattern(unsigned int segmentIndex,
63  unsigned int stipplePattern, int repeatFactor);
64 
66  virtual void setSegmentWidth(unsigned int segmentIndex, double width);
67 
70  virtual void setSegmentStartColor( unsigned int segmentIndex, float r,
71  float g, float b, float a );
72 
75  virtual void setSegmentEndColor( unsigned int segmentIndex, float r,
76  float g, float b, float a );
77 
81  virtual void setIsSupportModel(bool isSupport);
82 
84  virtual void setVisible(bool);
85 
88  virtual void setMaxSubdivisions( int subDivisions );
89 
93  virtual void setPreferredSubdivisionSize( double size );
94 
97  virtual void setHeightScale( double heightScale );
98  // @}
99 
101  virtual void setEventsEnabled( bool );
102 
104  virtual void setEventWidth(float width);
105 
107  // @{
108  virtual void setIsMeasurementTextRenderingEnabled(bool isDecorated);
109  virtual bool isMeasurementTextRenderingEnabled() const;
110  virtual void setIsScreenIntervaledTextRenderingEnabled(bool);
111  virtual void setScreenIntervaledTextCollection(const DtOverlayScreenIntervaledTextInstance::DtScreenIntervaledTextCollection&);
112  virtual void setScreenIntervaledTextPrefix(const std::string& prefixString);
113  virtual void setScreenIntervaledTextPostfix(const std::string& postfixString);
114  virtual void setScreenIntervaledTextInterval(int intervalInScreenSpaceCM);
115  virtual void setScreenIntervaledTextFont(const std::string& fontFile, float fontPointSize);
116  virtual void setScreenIntervaledTextColor(float r, float g, float b, float a);
117  virtual void setScreenIntervaledTextBackgroundColor(float r, float g, float b, float a);
118  // @}
119 
120  private:
121 
124 
127 
130 
132  virtual void setSegmentLightningStyle(unsigned int segmentIndex,
133  bool enableLightningStyle);
134 
136  virtual void setSegmentStartArrow(unsigned int segmentIndex,
137  bool enableArrow);
138 
140  virtual void setSegmentEndArrow(unsigned int segmentIndex,
141  bool enableArrow);
142 
144  virtual void setArrowSize(double);
145 
147  virtual void setLineStyle(int);
148 
150  virtual void setArrowStyle(int);
151 
153  virtual void setModelDefinition( const std::string& str );
154 
157  virtual void setGroup( int );
158 
159  protected:
160  // @name Inherited Dt3DGreatCircleArcModel methods
161  // @{
162 
164  virtual void addToScene( const DtUniqueID& sceneObjectId, DtModelSetId modelSet, int visualizerType );
165 
167  virtual void removeFromScene();
168 
169  // @}
170 
172  virtual void update();
173 
175  virtual void needsUpdate();
176 
179  virtual void setFixedWidthSizing(bool);
180 
181  protected:
182 
187 
188  boost::signalslib::connection mySignalPostUpdateConnection;
189  };
190 }
DtUniqueID mySceneObjectId
Definition: DtOsgOverlayGreatCircleArcModel.h:183
bool myEventsEnabled
Definition: DtOsgOverlayGreatCircleArcModel.h:184
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
Contains declaration of DtOverlayGreatCircleArcModel, which draws 3D great circle lines on a 2D overl...
voidpf void uLong size
Definition: ioapi.h:39
This class is a pure virtual class that all overlay great circle arc models must implement.
Definition: DtOverlayGreatCircleArcModel.h:21
boost::signalslib::connection mySignalPostUpdateConnection
Definition: DtOsgOverlayGreatCircleArcModel.h:188
float myEventWidth
Definition: DtOsgOverlayGreatCircleArcModel.h:185
OSG implementation of segmentable, stylizable 3D Great Circle Arc drawn on a 2D Overlay.
Definition: DtOsgOverlayGreatCircleArcModel.h:23
bool myNeedsUpdate
Definition: DtOsgOverlayGreatCircleArcModel.h:186
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
std::vector< DtUnicode > DtScreenIntervaledTextCollection
Definition: DtOverlayScreenIntervaledTextInstance.h:35
Contains DLL export macros.
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
DtModelSetId
Definition: DtModelSetEnums.h:19

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)