VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgOverlaySegmentedLineModel.h
Go to the documentation of this file.
1 // /******************************************************************************
2 // ** Copyright (c) 2014 MAK Technologies, Inc.
3 // ** All rights reserved.
4 // ******************************************************************************/
5 
9 
10 #pragma once
11 
15 
16 namespace makVrv
17 {
18  class DtChannelManager;
19  class DtChannel;
20  class DtChannelConfiguration;
21  class DtModelDefinition;
22 
27  {
28  public:
31 
34 
36  virtual void setPosition( int vtx, const DtVector& position );
37 
39  virtual void removePosition( int vtx );
40 
42  virtual void setOrientation( int vtx, const DtTaitBryan& orientation );
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 setSegmentLightningStyle(unsigned int segmentIndex,
63  bool enableLightningStyle);
64 
66  virtual void setSegmentStartArrow(unsigned int segmentIndex,
67  bool enableArrow);
68 
70  virtual const std::vector<DtVector>& points() const;
71 
74  virtual void setGroup( int );
75 
77  virtual void setSegmentEndArrow(unsigned int segmentIndex,
78  bool enableArrow);
79 
82  virtual void setSegmentStipplePattern(unsigned int segmentIndex,
83  unsigned int stipplePattern, int repeatFactor);
84 
86  virtual void setSegmentWidth(unsigned int segmentIndex,
87  double width);
88 
90  virtual void setArrowSize(double);
91 
93  virtual void setLineStyle(int);
94 
96  virtual void setArrowStyle(int);
97 
100  virtual void setSegmentStartColor( unsigned int segmentIndex, float r,
101  float g, float b, float a );
102 
105  virtual void setSegmentEndColor( unsigned int segmentIndex, float r,
106  float g, float b, float a );
107 
109  virtual void setEventsEnabled( bool );
110 
112  virtual void setEventWidth(float width);
113 
114  // @name Inherited DtModel methods
115  // @{
116 
118  virtual void addToScene( const DtUniqueID& sceneObjectId, int modelSet, int visualizerType );
119 
121  virtual void removeFromScene();
122 
124  virtual void setModelDefinition( const std::string& str );
125 
127  virtual void setVisible( bool isVisible );
128 
130  virtual void setIsSupportModel(bool isSupport);
131 
132  // @}
133 
135  virtual void update();
136 
138  virtual void needsUpdate();
139 
142  virtual void setFixedWidthSizing(bool);
143 
144  protected:
148  virtual void moveInstancesFromChannelSpecific();
149 
153  virtual void moveInstancesToChannelSpecific();
154 
157  virtual void slot_channelCreated( DtChannel* channel);
158 
160  virtual void slot_channelDestroyed( DtChannelManager* channelManager, DtChannel* channel);
161 
164  virtual void slot_channelConfigurationModified(const std::string& deName,
165  const std::string& winName, const std::string& oldChannelName,
166  const DtChannelConfiguration& config);
167 
169  virtual void setupInstanceWithCurrentValues(DtOverlaySegmentedLineModelInstance*);
170 
171  protected:
176 
180 
181  typedef std::map<DtChannel*, DtOverlaySegmentedLineModelInstance*> ChannelInstances;
183 
187  std::vector<DtVector> myPoints;
188  double myArrowSize;
192  std::string myModelDefinition;
193  float myColor[4];
194  unsigned int myStipplePattern;
196  float myWidth;
198  int myGroup;
200  };
201 }
202 

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)