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;
64 virtual void setTopographicOffsetBetweenPoints(
const DtGeodeticCoord&
origin,
const DtGeodeticCoord& originWithOffset,
bool resetLocation =
true);
65 virtual void setTopographicOffsetFromPrincipal(
const DtVector&,
bool resetLocation =
true);
66 const DtVector& topographicOffsetFromPrincipal()
const;
68 virtual DtVector convertGeodeticOffsetFromOriginToTopographicOffsetFromOrigin(
const DtGeodeticCoord&)
const;
69 virtual DtGeodeticCoord locationFromTopographicOffsetFromCenterPoint(
const DtGeodeticCoord&
origin)
const;
70 virtual DtVector convertGeodeticOffsetToTopographicOffset(
const DtGeodeticCoord&
origin,
const DtGeodeticCoord& position)
const;
72 virtual double headingOffsetFromPrincipal()
const;
73 virtual void setHeadingOffsetFromPrincipal(
double offset );
75 virtual double pitchOffsetFromPrincipal()
const;
76 virtual void setPitchOffsetFromPrincipal(
double offset );
78 virtual const DtEntityType& entityType()
const;
80 virtual Dt3dBoundingVolume boundingVolume(
int modelSet = 0)
const;
82 virtual DtGeodeticCoord modifyPointByTopographicOffset(
const DtGeodeticCoord&
origin,
const DtVector& topographicOffset)
const;
83 virtual double altitudeOffsetFromPrincipal()
const;
84 virtual void setAltitudeOffsetFromPrincipal(
double offset,
bool resetLocation =
true );
88 virtual std::vector<makVrv::DtUniqueID> modelUniqueIDs()
const = 0;
92 virtual void setOverrideIdsToIgnore(
const std::vector<makVrv::DtUniqueID>& overrideIgnore);
95 virtual const std::vector<makVrv::DtUniqueID>& idsToIgnore()
const;
100 virtual std::string displayName()
const;
101 virtual void setDisplayName(
const std::string& displayName );
103 virtual void setUUID(
const DtUUID&);
104 virtual const DtUUID& uuid()
const;
106 virtual DtGeodeticCoord currentGeodeticOrigin()
const;
109 virtual DtGeodeticCoord currentGeodeticPosition()
const;
111 virtual DtGeodeticCoord convertToGeodetic(
const DtVector& v)
const;
113 virtual double currentHeading()
const;
114 virtual void setCurrentHeading(
double currentHeading );
115 virtual void setHeadingChanged(
bool b);
117 virtual double currentPitch()
const;
118 virtual void setCurrentPitch(
double currentPitch );
119 virtual void setPitchChanged(
bool b);
122 virtual void setSelected(
bool);
128 return myAttachPoint;
133 return myAttachOrientation;
141 virtual bool attachedTo()
const;
142 virtual void detach();
145 virtual std::string overlayName()
const;
148 virtual double currentAltitude()
const;
151 virtual DtVector centerOfMass()
const;
153 virtual DtVector geocentricLocation()
const;
154 virtual DtVector localLocation()
const;
155 virtual DtVector localLocation(
const DtGeodeticCoord& geodLocation)
const;
158 virtual double initialAltitudeAboveTerrain()
const;
161 virtual DtVector reviseLocation(
const DtVector& loc,
int clampType = -1)
const;
164 virtual DtTaitBryan localOrientation()
const;
177 return std::map<std::string, std::string>();
181 return std::map<int, DtString>();
191 virtual void setOrigin(
const DtGeodeticCoord&);
192 virtual void setOrigin(
const DtVector&);
194 virtual void setSymbolNameVisible(
bool) = 0;
196 virtual void setPickable(
bool) = 0;
197 virtual void setIndicatorVisible(
bool) = 0;
198 virtual void setWidgetEventsEnabled(
bool) = 0;
199 virtual void setHatLineVisible(
bool) = 0;
204 virtual void setVisible(
bool,
bool updateOffsets =
true);
205 virtual bool isVisible()
const;
208 virtual void setTopographicOrientation(
const DtTaitBryan&) = 0;
209 virtual void setLocalOrientation(
const DtTaitBryan&) = 0;
212 virtual void unrealizeFacades(
bool willRecreate =
false) = 0;
215 virtual void realizeFacades() = 0;
219 return myDisplayNameChanged;
224 myLocationChanged =
false;
229 return myLocationChanged;
234 return myAltitudeChanged;
239 return myHeadingChanged;
244 return myPitchChanged;
247 virtual void clearFlags();
252 return myAltitudeClampType;
255 virtual void setAltitudeAboveTerrain(
double);
258 return myAltitudeAboveGL;
261 virtual void setAltitudeAboveSeaLevel(
double);
264 return myAltitudeAboveSL;
267 virtual void setIsAnchor(
bool);
273 virtual void setUserData(
const std::string& userData);
274 virtual std::string userData()
const;
277 return myUserDataChanged;
282 return myModelSetOnly;
287 return ((myModelSetOnly == -1) || (i == myModelSetOnly));
298 virtual void setEmbarkationAllowed(
bool);
299 bool embarkationAllowed()
const;
315 return (myAltitudeClampType ==
NoClamp);
320 myClampToClosestPolygon = b;
325 return myClampToClosestPolygon;
329 virtual void setCurrentGroundLocation(
const DtGeodeticCoord& currentGroundLocation );
double myAltitudeOffsetFromPrincipal
Definition: vrfObjectFacadeInterface.h:338
DtTaitBryan myOrientation
geodetic coords
Definition: vrfObjectFacadeInterface.h:341
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
virtual bool isAnchor() const
Definition: vrfObjectFacadeInterface.h:268
IntersectProperties
The IntersectProperties enum is a flag set that indicates the.
Definition: DtIntersector.h:135
bool userDataChanged() const
Definition: vrfObjectFacadeInterface.h:275
std::vector< makVrv::DtUniqueID > myModelIds
Definition: vrfObjectFacadeInterface.h:370
bool myClampToClosestPolygon
Definition: vrfObjectFacadeInterface.h:360
double myAltitudeAboveSL
Definition: vrfObjectFacadeInterface.h:351
std::vector< makVrv::DtUniqueID > myOverrideIdsToIgnore
Definition: vrfObjectFacadeInterface.h:372
virtual bool hasAltitudeChange() const
Definition: vrfObjectFacadeInterface.h:232
virtual bool hasNameChange() const
Definition: vrfObjectFacadeInterface.h:217
virtual std::map< std::string, std::string > extendedData() const
Definition: vrfObjectFacadeInterface.h:175
std::vector< makVrv::DtElementID > myUnifiedIgnoreList
Definition: vrfObjectFacadeInterface.h:368
voidpf uLong int origin
Definition: ioapi.h:42
virtual const std::string & entityId() const
Definition: vrfObjectFacadeInterface.h:54
DtVector myTopographicOffsetFromPrincipal
Definition: vrfObjectFacadeInterface.h:374
bool doNotClamp() const
Definition: vrfObjectFacadeInterface.h:313
boost::signals2::signal< void(DtVrfObjectFacadeInterface *)> signal_visualized
Definition: vrfObjectFacadeInterface.h:184
bool myPitchChanged
Definition: vrfObjectFacadeInterface.h:347
virtual double altitudeAboveSeaLevel() const
Definition: vrfObjectFacadeInterface.h:262
int modelSet() const
Definition: vrfObjectFacadeInterface.h:280
Definition: vrfObjectFacadeInterface.h:42
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
virtual std::map< int, DtString > extendedLabels() const
Definition: vrfObjectFacadeInterface.h:179
virtual void setExtendedData(const std::map< std::string, std::string > &)
For subclasses to implement...
Definition: vrfObjectFacadeInterface.h:167
bool myDisplayNameChanged
Definition: vrfObjectFacadeInterface.h:343
bool clampToClosestPolygon() const
Definition: vrfObjectFacadeInterface.h:323
Definition: vrfObjectFacadeInterface.h:40
double myAltitudeAboveGL
Definition: vrfObjectFacadeInterface.h:352
makVrv::DtUniqueID mySceneObjectId
Definition: vrfObjectFacadeInterface.h:333
Contains makVrv:DtIntersector, makVrv:DtIntersectorLineSegment, and makVrv:DtIntersectorResult classe...
makVrv::DtDe & myDe
Definition: vrfObjectFacadeInterface.h:332
DtVrfObjectFacadeInterface * attachedToObject() const
Definition: vrfObjectFacadeInterface.h:136
bool myHeadingChanged
Definition: vrfObjectFacadeInterface.h:346
virtual bool hasPitchChange() const
Definition: vrfObjectFacadeInterface.h:242
DtGeodeticCoord myCurrentGroundLocation
Definition: vrfObjectFacadeInterface.h:340
bool myUserDataChanged
Definition: vrfObjectFacadeInterface.h:348
Definition: vrfObjectFacadeInterface.h:47
bool myAnchor
Definition: vrfObjectFacadeInterface.h:353
DtUUID myUUID
Definition: vrfObjectFacadeInterface.h:361
std::string myDisplayName
Definition: vrfObjectFacadeInterface.h:334
Definition: DtIntersector.h:139
bool myAltitudeChanged
Definition: vrfObjectFacadeInterface.h:345
virtual DtAltitudeClampType altitudeClampType() const
Definition: vrfObjectFacadeInterface.h:250
std::string myEntityId
Definition: vrfObjectFacadeInterface.h:335
DtAltitudeClampType myAltitudeClampType
Definition: vrfObjectFacadeInterface.h:350
int myModelSetOnly
Definition: vrfObjectFacadeInterface.h:358
DtVector myAttachPoint
Definition: vrfObjectFacadeInterface.h:365
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
virtual bool hasLocationChange() const
Definition: vrfObjectFacadeInterface.h:227
Definition: vrfObjectFacadeInterface.h:41
virtual void setClampToClosestPolygon(bool b)
Definition: vrfObjectFacadeInterface.h:318
virtual void setEntityId(const std::string &i)
Definition: vrfObjectFacadeInterface.h:59
bool supportsModelSet(int i) const
Definition: vrfObjectFacadeInterface.h:285
std::string myUserData
Definition: vrfObjectFacadeInterface.h:354
DtVrfObjectFacadeInterface * myAttachedTo
Definition: vrfObjectFacadeInterface.h:364
virtual void setDoNotClamp(bool b)
Definition: vrfObjectFacadeInterface.h:301
Contains makVrv::DtUniqueID type.
const DtTaitBryan & attachedOrientation()
Definition: vrfObjectFacadeInterface.h:131
DtTaitBryan myOrientationOffset
Definition: vrfObjectFacadeInterface.h:337
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
boost::signals2::signal< void(DtVrfObjectFacadeInterface *)> signal_originChanged
Definition: vrfObjectFacadeInterface.h:185
bool myEmbarkationAllowed
Definition: vrfObjectFacadeInterface.h:362
DtTaitBryan myAttachOrientation
Definition: vrfObjectFacadeInterface.h:366
voidpf uLong offset
Definition: ioapi.h:42
boost::signals2::signal< void(DtVrfObjectFacadeInterface *, bool)> signal_selected
Definition: vrfObjectFacadeInterface.h:186
virtual bool hasHeadingChange() const
Definition: vrfObjectFacadeInterface.h:237
DtEntityType myEntityType
Definition: vrfObjectFacadeInterface.h:359
virtual void mergeExtendedData(const std::map< std::string, std::string > &)
Definition: vrfObjectFacadeInterface.h:171
bool myLocationChanged
Definition: vrfObjectFacadeInterface.h:344
bool myVisible
Definition: vrfObjectFacadeInterface.h:356
std::set< makVrv::DtUniqueID > myDIGuyIdsIgnored
Definition: vrfObjectFacadeInterface.h:369
virtual void clearLocationChange()
Definition: vrfObjectFacadeInterface.h:222
DtAltitudeClampType
Definition: vrfObjectFacadeInterface.h:38
virtual double altitudeAboveTerrain() const
Definition: vrfObjectFacadeInterface.h:256
const DtVector & attachedPoint() const
Definition: vrfObjectFacadeInterface.h:126