VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtLineFacadeInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <vrvCore/vrvCore.h>
12 #include <vrvCore/DtUniqueID.h>
15 
16 #include <matrix/vlVector.h>
17 #include <boost/thread/shared_mutex.hpp>
18 
19 #include <string>
20 #include <vector>
21 
22 namespace makVrv
23 {
24  class DtSceneObjectAgent;
25  class DtLineStyleUpdaterAgent;
26  class DtAgentManagerInterface;
27 
32  {
33  public:
35  DtLineFacadeInterface(DtAgentManagerInterface&, DtSceneObjectAgent* agent,
36  DtElementID id, int modelSet);
37 
39  DtLineFacadeInterface(DtAgentManagerInterface&, int modelSet, DtElementID id, bool distribute = true);
40 
42  virtual ~DtLineFacadeInterface();
43 
44  public:
46  virtual void setModelDefinition(const std::string&) = 0;
47 
50  virtual void setColor(float r, float g, float b, float a);
51 
53  virtual void setLineWidth(int) = 0;
54 
57  virtual void setPoints(const std::vector<DtVector>&, const DtVector& withOffset = DtVector::zero());
58 
60  virtual void addPoint(int index, const DtVector&);
61 
63  virtual void removePoint(int);
64 
66  virtual void setStipplePattern(unsigned int) = 0;
67 
69  virtual void setOrigin(const DtVector&);
70  virtual const DtVector& origin() const;
71 
75  virtual void setPoint(int iIndex, const DtVector&);
76 
78  virtual void setSolid(bool) = 0;
79 
81  virtual void setVisible(bool);
82 
84  virtual const std::vector<DtVector>& points() const;
85 
89  virtual void setScribed(bool);
90 
92  virtual void setPickable(bool);
93 
95  virtual bool pickable() const;
96 
99  virtual void setLineStyle(vrvTacticalGraphicUtilities::LineStyle);
100 
102  virtual vrvTacticalGraphicUtilities::LineStyle lineStyle() const;
103 
105  virtual void setArrowHeadPlacement(vrvTacticalGraphicUtilities::ArrowHeadPlacement);
106 
108  virtual vrvTacticalGraphicUtilities::ArrowHeadPlacement arrowHeadPlacement() const;
109 
111  virtual void setArrowStyle(vrvTacticalGraphicUtilities::ArrowStyle);
112 
114  virtual vrvTacticalGraphicUtilities::ArrowStyle arrowStyle() const;
115 
117  virtual void setSegmentEndArrow(int seg, bool flag) = 0;
118 
120  virtual void setSegmentStartArrow(int seg, bool flag) = 0;
121 
123  virtual void setArrowSize(double);
124 
126  virtual double arrowSize() const;
127 
130  virtual void setFixedWidthSizing(bool);
131 
133  virtual bool fixedWidthSizing() const;
134 
136  virtual makVrv::DtUniqueID uniqueId() const;
137 
139  virtual makVrv::DtElementID elementId() const;
140 
142  virtual int modelSet() const;
143 
145  virtual DtSceneObjectAgent* sceneObjectAgent();
146 
147  protected:
149  virtual void updateArrowFrequencyForSegment(int);
150 
151  protected:
153  DtSceneObjectAgent* mySceneObjectAgent;
155 
156  float myColor[4];
157 
162 
164  std::vector<DtVector> myControlPoints;
165 
169 
170  double myArrowSize;
172  bool myVisible;
174  };
175 }

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)