VR-Forces 4.2 Class Documentation
DtVrfObjectFacadeInterface.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrfGuiCore/vrfGuiCore.h>
14 
15 #include <vrvCore/DtUniqueID.h>
16 
17 #include <boost/signal.hpp>
18 #include <matrix/vlVector.h>
19 #include <matrix/geodCoord.h>
20 #include <matrix/3dBoundingVolume.h>
21 #include <matrix/vlTaitBryan.h>
22 #include <string>
23 #include <vlpi/entityType.h>
24 class DtReferenceEllipsoid;
25 
26 namespace makVrv
27 {
28  class DtDe;
29  class DtChannel;
30  class DtWindow;
31 }
32 
33 namespace makVrf
34 {
36  {
39  };
40 
41  class DtVrfObjectManipulationHandlerBaseClass;
42 
44  {
45  public:
46  DtVrfObjectFacadeInterface( makVrv::DtDe& de, int modelSet = -1 );
47 
48  virtual ~DtVrfObjectFacadeInterface();
49 
50  virtual const std::string& entityId() const
51  {
52  return myEntityId;
53  }
54 
55  virtual void setEntityId(const std::string& i)
56  {
57  myEntityId = i;
58  }
59 
60  virtual const DtGeodeticCoord& locationOffsetFromPrincipal() const;
61  virtual void setLocationOffsetFromPrincipal( const DtGeodeticCoord& offset );
62 
63  virtual double headingOffsetFromPrincipal() const;
64  virtual void setHeadingOffsetFromPrincipal( double offset );
65 
66  virtual const DtEntityType& entityType() const;
67 
68  virtual Dt3dBoundingVolume boundingVolume() const;
69 
70  virtual double altitudeOffsetFromPrincipal() const;
71  virtual void setAltitudeOffsetFromPrincipal( double offset );
72 
73  virtual makVrv::DtUniqueID uniqueID() const = 0;
74 
75  virtual makVrv::DtUniqueID sceneObjectId() const;
76  virtual void setSceneObjectId( const makVrv::DtUniqueID& id );
77 
78  virtual std::string displayName() const;
79  virtual void setDisplayName( const std::string& displayName );
80 
81  virtual const DtGeodeticCoord& currentGroundLocation() const;
82  virtual DtGeodeticCoord convertToGeodetic(const DtVector& v) const;
83 
84  virtual double currentHeading() const;
85  virtual void setCurrentHeading( double currentHeading );
86 
88  virtual void setSelected(bool);
89 
91  virtual std::string overlayName() const;
92 
94  virtual double currentAltitude() const;
95 
96  virtual DtVector localLocation() const;
97  virtual DtVector localLocation(const DtGeodeticCoord& geodLocation) const;
98 
100  virtual DtVector reviseLocation(const DtVector& loc) const;
101 
103  virtual DtTaitBryan localOrientation() const;
104 
105  public:
107 
108  virtual void setOrigin(const DtGeodeticCoord&);
109  virtual void setOrigin(const DtVector&);
110 
111  virtual void setPickable(bool) = 0;
112  virtual void setIndicatorVisible(bool) = 0;
113  virtual void setWidgetEventsEnabled(bool) = 0;
114  virtual void setHatLineVisible(bool) = 0;
115 
119  virtual void setVisible(bool);
120  virtual bool isVisible() const;
121 
123  virtual void setOrientation(const DtTaitBryan&) = 0;
124 
126  virtual void unrealizeFacades() = 0;
127 
129  virtual void realizeFacades() = 0;
130 
131  virtual bool hasNameChange() const
132  {
133  return myDisplayNameChanged;
134  }
135 
136  virtual bool hasLocationChange() const
137  {
138  return myLocationChanged;
139  }
140 
141  virtual bool hasAltitudeChange() const
142  {
143  return myAltitudeChanged;
144  }
145 
146  virtual bool hasHeadingChange() const
147  {
148  return myHeadingChanged;
149  }
150 
151  virtual void clearFlags();
152 
153  virtual void setAltitudeClampType(DtAltitudeClampType t);
154  virtual DtAltitudeClampType altitudeClampType() const
155  {
156  return myAltitudeClampType;
157  }
158 
159  virtual void setAltitudeAboveTerrain(double);
160  virtual double altitudeAboveTerrain() const
161  {
162  return myAltitudeAboveGL;
163  }
164 
165  virtual void setAltitudeAboveSeaLevel(double);
166  virtual double altitudeAboveSeaLevel() const
167  {
168  return myAltitudeAboveSL;
169  }
170 
171  virtual void setIsAnchor(bool);
172  virtual bool isAnchor() const
173  {
174  return myAnchor;
175  }
176 
177  virtual void setUserData(const std::string& userData);
178  virtual std::string userData() const;
179 
180  int modelSet() const
181  {
182  return myModelSetOnly;
183  }
184 
185  virtual DtVector clampToGround( const DtVector& localPosition ) const;
186  virtual DtGeodeticCoord clampToGround( const DtGeodeticCoord& localPosition ) const;
187 
188  protected:
189  virtual void setCurrentGroundLocation( const DtGeodeticCoord& currentGroundLocation );
190 
191  protected:
192  makVrv::DtDe& myDe;
193  makVrv::DtUniqueID mySceneObjectId;
194  std::string myDisplayName;
195  std::string myEntityId;
196 
200 
201  DtGeodeticCoord myCurrentGroundLocation;
203 
209 
213  bool myAnchor;
214  std::string myUserData;
215 
216  bool myVisible;
217 
219  DtEntityType myEntityType;
220  };
221 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)