VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
lineTaskVisualization.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 #include "matrix/vlVector.h"
15 #include "vl/globalObjectDesignator.h"
16 
18 
19 namespace vrvControlToolkit
20 {
21  class DtLine3DObject;
22 }
23 
27 {
28 public:
29 
30  class LineVertex
31  {
32  public:
35 
39 
40  bool operator==(const LineVertex& rhs) const
41  {
42  return (location == rhs.location && attachedObject == rhs.attachedObject);
43  }
44  };
45 
46  DtLineTaskVisualization(const DtString& name, const DtString& taskComp,
47  DtVrfObject* taskedObject);
48  virtual ~DtLineTaskVisualization();
49 
51  virtual void setVertex(unsigned index, const DtVector& location);
52 
54  virtual void setVertices(const std::vector<DtVector>& locations);
55 
57  virtual void setVertex(unsigned index, const DtGlobalObjectDesignator& obj);
58 
60  virtual void setVertices(const std::vector<DtGlobalObjectDesignator>& objs);
61 
63  virtual void setVertices(const std::vector<LineVertex>& locations);
64 
66  virtual const std::vector<LineVertex>& vertices() const;
67 
69  virtual const LineVertex& vertex(unsigned index) const;
70 
72 
73  virtual bool arrowAtEnd() const;
74  virtual void setArrowAtEnd(bool drawArrow);
76 
78 
79  virtual bool arrowAtStart() const;
80  virtual void setArrowAtStart(bool drawArrow);
82 
84 
85  virtual unsigned thickness() const;
86  virtual void setThickness(unsigned thickness);
88 
89 protected:
90 
92  virtual bool isPublished() const;
93 
97 
99  virtual void createDrawControlObjects(DtExerciseConn* exConn);
100 
102  virtual void unpublishDrawControlObjects();
103 
105  virtual void updateDrawControlObjects();
106 
107 protected:
108 
110  std::vector<LineVertex> myVertices;
113  unsigned myThickness;
114 
116 
117  std::vector<vrvControlToolkit::DtLine3DObject*> mySegmentObjects;
118 };
119 
120 typedef DtBoost::shared_ptr<DtLineTaskVisualization> DtLineTaskVisualizationPtr;

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)