18 #include <boost/signal.hpp>
19 #include <matrix/vlVector.h>
20 #include <matrix/geodeticCoord.h>
21 #include <matrix/3dBoundingVolume.h>
22 #include <matrix/vlTaitBryan.h>
24 #include <vlpi/entityType.h>
27 class DtReferenceEllipsoid;
45 class DtVrfObjectManipulationHandlerBaseClass;
54 virtual const std::string& entityId()
const
59 virtual void setEntityId(
const std::string& i)
64 virtual const DtGeodeticCoord& locationOffsetFromPrincipal()
const;
65 virtual void setLocationOffsetFromPrincipal(
const DtGeodeticCoord&
offset,
bool resetLocation =
true );
67 virtual double headingOffsetFromPrincipal()
const;
68 virtual void setHeadingOffsetFromPrincipal(
double offset );
70 virtual const DtEntityType& entityType()
const;
72 virtual Dt3dBoundingVolume boundingVolume(
int modelSet = 0)
const;
74 virtual double altitudeOffsetFromPrincipal()
const;
75 virtual void setAltitudeOffsetFromPrincipal(
double offset,
bool resetLocation =
true );
79 virtual std::vector<makVrv::DtUniqueID> modelUniqueIDs()
const = 0;
83 virtual void setOverrideIdsToIgnore(
const std::vector<makVrv::DtUniqueID>& overrideIgnore);
86 virtual const std::vector<makVrv::DtUniqueID>& idsToIgnore()
const;
91 virtual std::string displayName()
const;
92 virtual void setDisplayName(
const std::string& displayName );
94 virtual void setUUID(
const DtUUID&);
95 virtual const DtUUID& uuid()
const;
97 virtual DtGeodeticCoord currentGeodeticOrigin()
const;
100 virtual DtGeodeticCoord currentGeodeticPosition()
const;
102 virtual DtGeodeticCoord convertToGeodetic(
const DtVector& v)
const;
104 virtual double currentHeading()
const;
105 virtual void setCurrentHeading(
double currentHeading );
106 virtual void setHeadingChanged(
bool b);
109 virtual void setSelected(
bool);
113 virtual bool attachedTo()
const;
114 virtual void detach();
117 virtual std::string overlayName()
const;
120 virtual double currentAltitude()
const;
123 virtual DtVector centerOfMass()
const;
125 virtual DtVector geocentricLocation()
const;
126 virtual DtVector localLocation()
const;
127 virtual DtVector localLocation(
const DtGeodeticCoord& geodLocation)
const;
130 virtual double initialAltitudeAboveTerrain()
const;
136 virtual DtTaitBryan localOrientation()
const;
139 virtual void setExtendedData(
const std::map<std::string, std::string>&)
143 virtual void mergeExtendedData(
const std::map<std::string, std::string>&)
147 virtual std::map<std::string, std::string> extendedData()
const
149 return std::map<std::string, std::string>();
151 virtual std::map<int, DtString> extendedLabels()
const
153 return std::map<int, DtString>();
161 virtual void setOrigin(
const DtGeodeticCoord&);
162 virtual void setOrigin(
const DtVector&);
164 virtual void setSymbolNameVisible(
bool) = 0;
166 virtual void setPickable(
bool) = 0;
167 virtual void setIndicatorVisible(
bool) = 0;
168 virtual void setWidgetEventsEnabled(
bool) = 0;
169 virtual void setHatLineVisible(
bool) = 0;
174 virtual void setVisible(
bool);
175 virtual bool isVisible()
const;
178 virtual void setTopographicOrientation(
const DtTaitBryan&) = 0;
179 virtual void setLocalOrientation(
const DtTaitBryan&) = 0;
182 virtual void unrealizeFacades() = 0;
185 virtual void realizeFacades() = 0;
187 virtual bool hasNameChange()
const
189 return myDisplayNameChanged;
192 virtual void clearLocationChange()
194 myLocationChanged =
false;
197 virtual bool hasLocationChange()
const
199 return myLocationChanged;
202 virtual bool hasAltitudeChange()
const
204 return myAltitudeChanged;
207 virtual bool hasHeadingChange()
const
209 return myHeadingChanged;
212 virtual void clearFlags();
217 return myAltitudeClampType;
220 virtual void setAltitudeAboveTerrain(
double);
221 virtual double altitudeAboveTerrain()
const
223 return myAltitudeAboveGL;
226 virtual void setAltitudeAboveSeaLevel(
double);
227 virtual double altitudeAboveSeaLevel()
const
229 return myAltitudeAboveSL;
232 virtual void setIsAnchor(
bool);
233 virtual bool isAnchor()
const
238 virtual void setUserData(
const std::string& userData);
239 virtual std::string userData()
const;
240 bool userDataChanged()
const
242 return myUserDataChanged;
247 return myModelSetOnly;
250 bool supportsModelSet(
int i)
const
252 return ((myModelSetOnly == -1) || (i == myModelSetOnly));
263 virtual void setEmbarkationAllowed(
bool);
264 bool embarkationAllowed()
const;
266 virtual void setDoNotClamp(
bool b)
278 bool doNotClamp()
const
280 return (myAltitudeClampType ==
NoClamp);
283 virtual void setClampToClosestPolygon(
bool b)
285 myClampToClosestPolygon = b;
288 bool clampToClosestPolygon()
const
290 return myClampToClosestPolygon;
294 virtual void setCurrentGroundLocation(
const DtGeodeticCoord& currentGroundLocation );