21 #include <matrix/vlVector.h>
22 #include <matrix/geodeticCoord.h>
23 #include <matrix/3dBoundingVolume.h>
24 #include <matrix/vlTaitBryan.h>
26 #include <vlpi/entityType.h>
29 #include <boost/signals2.hpp>
33 class DtReferenceEllipsoid;
52 class DtVrfObjectManipulationHandlerBaseClass;
71 virtual void setTopographicOffsetBetweenPoints(
const DtGeodeticCoord&
origin,
const DtGeodeticCoord& originWithOffset,
bool resetLocation =
true);
72 virtual void setTopographicOffsetFromPrincipal(
const DtVector&,
bool resetLocation =
true);
73 const DtVector& topographicOffsetFromPrincipal()
const;
75 virtual DtVector convertGeodeticOffsetFromOriginToTopographicOffsetFromOrigin(
const DtGeodeticCoord&)
const;
76 virtual DtGeodeticCoord locationFromTopographicOffsetFromCenterPoint(
const DtGeodeticCoord&
origin)
const;
77 virtual DtVector convertGeodeticOffsetToTopographicOffset(
const DtGeodeticCoord&
origin,
const DtGeodeticCoord& position)
const;
79 virtual double headingOffsetFromPrincipal()
const;
80 virtual void setHeadingOffsetFromPrincipal(
double offset );
82 virtual double pitchOffsetFromPrincipal()
const;
83 virtual void setPitchOffsetFromPrincipal(
double offset );
85 virtual const DtEntityType& entityType()
const;
86 virtual DtObjectType objectType()
const;
90 virtual DtGeodeticCoord modifyPointByTopographicOffset(
const DtGeodeticCoord&
origin,
const DtVector& topographicOffset)
const;
91 virtual double altitudeOffsetFromPrincipal()
const;
92 virtual void setAltitudeOffsetFromPrincipal(
double offset,
bool resetLocation =
true );
96 virtual std::vector<makVrv::DtUniqueID> modelUniqueIDs()
const = 0;
100 virtual void setOverrideIdsToIgnore(
const std::vector<makVrv::DtUniqueID>& overrideIgnore);
103 virtual const std::vector<makVrv::DtUniqueID>& idsToIgnore()
const;
108 virtual std::string displayName()
const;
109 virtual void setDisplayName(
const std::string& displayName );
111 virtual void setUUID(
const DtUUID&);
112 virtual const DtUUID& uuid()
const;
114 virtual DtGeodeticCoord currentGeodeticOrigin()
const;
117 virtual DtGeodeticCoord currentGeodeticPosition()
const;
119 virtual DtGeodeticCoord convertToGeodetic(
const DtVector& v)
const;
121 virtual double currentHeading()
const;
122 virtual void setCurrentHeading(
double currentHeading );
123 virtual void setHeadingChanged(
bool b);
125 virtual double currentPitch()
const;
126 virtual void setCurrentPitch(
double currentPitch );
127 virtual void setPitchChanged(
bool b);
130 virtual void setSelected(
bool);
136 return myAttachPoint;
141 return myAttachOrientation;
149 virtual bool attachedTo()
const;
150 virtual void detach();
153 virtual std::string overlayName()
const;
156 virtual double currentAltitude()
const;
159 virtual DtVector centerOfMass()
const;
161 virtual DtVector geocentricLocation()
const;
162 virtual DtVector localLocation()
const;
163 virtual DtVector localLocation(
const DtGeodeticCoord& geodLocation)
const;
166 virtual double initialAltitudeAboveTerrain()
const;
169 virtual DtVector reviseLocation(
const DtVector& loc,
int clampType = -1)
const;
172 virtual DtTaitBryan localOrientation()
const;
185 return std::map<std::string, std::string>();
189 return std::map<int, DtString>();
199 virtual void setOrigin(
const DtGeodeticCoord&);
200 virtual void setOrigin(
const DtVector&);
204 virtual void setPickable(
bool) = 0;
205 virtual void setIndicatorVisible(
bool) = 0;
206 virtual void setWidgetEventsEnabled(
bool) = 0;
207 virtual void setHatLineVisible(
bool) = 0;
213 virtual bool isVisible()
const = 0;
216 virtual void setVisible(
bool show,
bool updateOffsets =
true);
219 virtual void setTopographicOrientation(
const DtTaitBryan&) = 0;
220 virtual void setLocalOrientation(
const DtTaitBryan&) = 0;
223 virtual void unrealizeFacades(
bool willRecreate =
false) = 0;
226 virtual void realizeFacades() = 0;
230 return myDisplayNameChanged;
235 myLocationChanged =
false;
240 return myLocationChanged;
245 return myAltitudeChanged;
250 return myHeadingChanged;
255 return myPitchChanged;
258 virtual void clearFlags();
263 return myAltitudeClampType;
266 virtual void setAltitudeAboveTerrain(
double);
269 return myAltitudeAboveGL;
272 virtual void setAltitudeAboveSeaLevel(
double);
275 return myAltitudeAboveSL;
278 virtual void setIsAnchor(
bool);
284 virtual void setUserData(
const std::string& userData);
285 virtual std::string userData()
const;
288 return myUserDataChanged;
293 return myModelSetOnly;
309 virtual void setEmbarkationAllowed(
bool);
310 bool embarkationAllowed()
const;
326 return (myAltitudeClampType ==
NoClamp);
331 myClampToClosestPolygon = b;
336 return myClampToClosestPolygon;
340 virtual void setCurrentGroundLocation(
const DtGeodeticCoord& currentGroundLocation );
double myAltitudeOffsetFromPrincipal
Definition: vrfObjectFacadeInterface.h:349
DtTaitBryan myOrientation
geodetic coords
Definition: vrfObjectFacadeInterface.h:352
UUID is a unique ID wrapper class.
Definition: uuid.h:59
virtual bool isAnchor() const
Definition: vrfObjectFacadeInterface.h:279
IntersectProperties
The IntersectProperties enum is a flag set that indicates the types of nodes to be considered for int...
Definition: DtIntersector.h:31
bool userDataChanged() const
Definition: vrfObjectFacadeInterface.h:286
std::vector< makVrv::DtUniqueID > myModelIds
Definition: vrfObjectFacadeInterface.h:379
bool myClampToClosestPolygon
Definition: vrfObjectFacadeInterface.h:369
ModelSetVisualizationMap myModelSetVisualizationMap
Definition: vrfObjectFacadeInterface.h:385
double myAltitudeAboveSL
Definition: vrfObjectFacadeInterface.h:362
std::vector< makVrv::DtUniqueID > myOverrideIdsToIgnore
Definition: vrfObjectFacadeInterface.h:381
virtual bool hasAltitudeChange() const
Definition: vrfObjectFacadeInterface.h:243
virtual bool hasNameChange() const
Definition: vrfObjectFacadeInterface.h:228
virtual std::map< std::string, std::string > extendedData() const
Definition: vrfObjectFacadeInterface.h:183
std::vector< makVrv::DtElementID > myUnifiedIgnoreList
Definition: vrfObjectFacadeInterface.h:377
voidpf uLong int origin
Definition: ioapi.h:42
Contains integers that determine the context with which to show/hide a visualizer.
virtual const std::string & entityId() const
Definition: vrfObjectFacadeInterface.h:61
DtVector myTopographicOffsetFromPrincipal
Definition: vrfObjectFacadeInterface.h:383
bool doNotClamp() const
Definition: vrfObjectFacadeInterface.h:324
boost::signals2::signal< void(DtVrfObjectFacadeInterface *)> signal_visualized
Definition: vrfObjectFacadeInterface.h:192
ShowHideContext
Definition: DtShowHideContext.h:18
bool myPitchChanged
Definition: vrfObjectFacadeInterface.h:358
virtual double altitudeAboveSeaLevel() const
Definition: vrfObjectFacadeInterface.h:273
Contains the DtUUID class declaration.
Definition: vrfObjectFacadeInterface.h:48
std::map< makVrv::DtModelSetId, bool > ModelSetVisualizationMap
Definition: vrfObjectFacadeInterface.h:384
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
virtual std::map< int, DtString > extendedLabels() const
Definition: vrfObjectFacadeInterface.h:187
virtual void setExtendedData(const std::map< std::string, std::string > &)
For subclasses to implement...
Definition: vrfObjectFacadeInterface.h:175
bool supportsModelSet(makVrv::DtModelSetId i) const
Definition: vrfObjectFacadeInterface.h:296
bool myDisplayNameChanged
Definition: vrfObjectFacadeInterface.h:354
bool clampToClosestPolygon() const
Definition: vrfObjectFacadeInterface.h:334
Definition: vrfObjectFacadeInterface.h:46
makVrv::DtModelSetId modelSet() const
Definition: vrfObjectFacadeInterface.h:291
double myAltitudeAboveGL
Definition: vrfObjectFacadeInterface.h:363
makVrv::DtUniqueID mySceneObjectId
Definition: vrfObjectFacadeInterface.h:344
Contains makVrv:DtIntersector class.
makVrv::DtDe & myDe
Definition: vrfObjectFacadeInterface.h:343
DtVrfObjectFacadeInterface * attachedToObject() const
Definition: vrfObjectFacadeInterface.h:144
bool myHeadingChanged
Definition: vrfObjectFacadeInterface.h:357
virtual bool hasPitchChange() const
Definition: vrfObjectFacadeInterface.h:253
DtGeodeticCoord myCurrentGroundLocation
Definition: vrfObjectFacadeInterface.h:351
bool myUserDataChanged
Definition: vrfObjectFacadeInterface.h:359
Definition: vrfObjectFacadeInterface.h:54
bool myAnchor
Definition: vrfObjectFacadeInterface.h:364
DtUUID myUUID
Definition: vrfObjectFacadeInterface.h:370
std::string myDisplayName
Definition: vrfObjectFacadeInterface.h:345
Definition: DtIntersector.h:35
bool myAltitudeChanged
Definition: vrfObjectFacadeInterface.h:356
virtual DtAltitudeClampType altitudeClampType() const
Definition: vrfObjectFacadeInterface.h:261
std::string myEntityId
Definition: vrfObjectFacadeInterface.h:346
DtAltitudeClampType myAltitudeClampType
Definition: vrfObjectFacadeInterface.h:361
DtVector myAttachPoint
Definition: vrfObjectFacadeInterface.h:374
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
virtual bool hasLocationChange() const
Definition: vrfObjectFacadeInterface.h:238
Definition: vrfObjectFacadeInterface.h:47
virtual void setClampToClosestPolygon(bool b)
Definition: vrfObjectFacadeInterface.h:329
Definition: vrfObjectFacadeInterface.h:49
virtual void setEntityId(const std::string &i)
Definition: vrfObjectFacadeInterface.h:66
std::string myUserData
Definition: vrfObjectFacadeInterface.h:365
DtVrfObjectFacadeInterface * myAttachedTo
Definition: vrfObjectFacadeInterface.h:373
virtual void setDoNotClamp(bool b)
Definition: vrfObjectFacadeInterface.h:312
makVrv::DtModelSetId myModelSetOnly
Definition: vrfObjectFacadeInterface.h:367
Contains makVrv::DtUniqueID type.
const DtTaitBryan & attachedOrientation()
Definition: vrfObjectFacadeInterface.h:139
DtTaitBryan myOrientationOffset
Definition: vrfObjectFacadeInterface.h:348
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
boost::signals2::signal< void(DtVrfObjectFacadeInterface *)> signal_originChanged
Definition: vrfObjectFacadeInterface.h:193
bool myEmbarkationAllowed
Definition: vrfObjectFacadeInterface.h:371
DtTaitBryan myAttachOrientation
Definition: vrfObjectFacadeInterface.h:375
DtModelSetId
Definition: DtModelSetEnums.h:19
voidpf uLong offset
Definition: ioapi.h:42
boost::signals2::signal< void(DtVrfObjectFacadeInterface *, bool)> signal_selected
Definition: vrfObjectFacadeInterface.h:194
virtual bool hasHeadingChange() const
Definition: vrfObjectFacadeInterface.h:248
DtEntityType myEntityType
Definition: vrfObjectFacadeInterface.h:368
virtual void mergeExtendedData(const std::map< std::string, std::string > &)
Definition: vrfObjectFacadeInterface.h:179
bool myLocationChanged
Definition: vrfObjectFacadeInterface.h:355
std::set< makVrv::DtUniqueID > myDIGuyIdsIgnored
Definition: vrfObjectFacadeInterface.h:378
Contains various enum classes relating to model sets.
virtual void clearLocationChange()
Definition: vrfObjectFacadeInterface.h:233
DtAltitudeClampType
Definition: vrfObjectFacadeInterface.h:44
virtual double altitudeAboveTerrain() const
Definition: vrfObjectFacadeInterface.h:267
const DtVector & attachedPoint() const
Definition: vrfObjectFacadeInterface.h:134