20 #include <matrix/vlVector.h>
21 #include <matrix/geodeticCoord.h>
22 #include <matrix/3dBoundingVolume.h>
23 #include <matrix/vlTaitBryan.h>
25 #include <vlpi/entityType.h>
28 #include <boost/signals2.hpp>
32 class DtReferenceEllipsoid;
51 class DtVrfObjectManipulationHandlerBaseClass;
70 virtual void setTopographicOffsetBetweenPoints(
const DtGeodeticCoord&
origin,
const DtGeodeticCoord& originWithOffset,
bool resetLocation =
true);
71 virtual void setTopographicOffsetFromPrincipal(
const DtVector&,
bool resetLocation =
true);
72 const DtVector& topographicOffsetFromPrincipal()
const;
74 virtual DtVector convertGeodeticOffsetFromOriginToTopographicOffsetFromOrigin(
const DtGeodeticCoord&)
const;
75 virtual DtGeodeticCoord locationFromTopographicOffsetFromCenterPoint(
const DtGeodeticCoord&
origin)
const;
76 virtual DtVector convertGeodeticOffsetToTopographicOffset(
const DtGeodeticCoord&
origin,
const DtGeodeticCoord& position)
const;
78 virtual double headingOffsetFromPrincipal()
const;
79 virtual void setHeadingOffsetFromPrincipal(
double offset );
81 virtual double pitchOffsetFromPrincipal()
const;
82 virtual void setPitchOffsetFromPrincipal(
double offset );
84 virtual const DtEntityType& entityType()
const;
87 virtual Dt3dBoundingVolume boundingVolume(
int modelSet = 0)
const;
89 virtual DtGeodeticCoord modifyPointByTopographicOffset(
const DtGeodeticCoord&
origin,
const DtVector& topographicOffset)
const;
90 virtual double altitudeOffsetFromPrincipal()
const;
91 virtual void setAltitudeOffsetFromPrincipal(
double offset,
bool resetLocation =
true );
95 virtual std::vector<makVrv::DtUniqueID> modelUniqueIDs()
const = 0;
99 virtual void setOverrideIdsToIgnore(
const std::vector<makVrv::DtUniqueID>& overrideIgnore);
102 virtual const std::vector<makVrv::DtUniqueID>& idsToIgnore()
const;
107 virtual std::string displayName()
const;
108 virtual void setDisplayName(
const std::string& displayName );
110 virtual void setUUID(
const DtUUID&);
111 virtual const DtUUID& uuid()
const;
113 virtual DtGeodeticCoord currentGeodeticOrigin()
const;
116 virtual DtGeodeticCoord currentGeodeticPosition()
const;
118 virtual DtGeodeticCoord convertToGeodetic(
const DtVector& v)
const;
120 virtual double currentHeading()
const;
121 virtual void setCurrentHeading(
double currentHeading );
122 virtual void setHeadingChanged(
bool b);
124 virtual double currentPitch()
const;
125 virtual void setCurrentPitch(
double currentPitch );
126 virtual void setPitchChanged(
bool b);
129 virtual void setSelected(
bool);
135 return myAttachPoint;
140 return myAttachOrientation;
148 virtual bool attachedTo()
const;
149 virtual void detach();
152 virtual std::string overlayName()
const;
155 virtual double currentAltitude()
const;
158 virtual DtVector centerOfMass()
const;
160 virtual DtVector geocentricLocation()
const;
161 virtual DtVector localLocation()
const;
162 virtual DtVector localLocation(
const DtGeodeticCoord& geodLocation)
const;
165 virtual double initialAltitudeAboveTerrain()
const;
168 virtual DtVector reviseLocation(
const DtVector& loc,
int clampType = -1)
const;
171 virtual DtTaitBryan localOrientation()
const;
184 return std::map<std::string, std::string>();
188 return std::map<int, DtString>();
198 virtual void setOrigin(
const DtGeodeticCoord&);
199 virtual void setOrigin(
const DtVector&);
201 virtual void setSymbolNameVisible(
bool) = 0;
203 virtual void setPickable(
bool) = 0;
204 virtual void setIndicatorVisible(
bool) = 0;
205 virtual void setWidgetEventsEnabled(
bool) = 0;
206 virtual void setHatLineVisible(
bool) = 0;
212 virtual bool isVisible()
const = 0;
215 virtual void setVisible(
bool show,
bool updateOffsets =
true);
218 virtual void setTopographicOrientation(
const DtTaitBryan&) = 0;
219 virtual void setLocalOrientation(
const DtTaitBryan&) = 0;
222 virtual void unrealizeFacades(
bool willRecreate =
false) = 0;
225 virtual void realizeFacades() = 0;
229 return myDisplayNameChanged;
234 myLocationChanged =
false;
239 return myLocationChanged;
244 return myAltitudeChanged;
249 return myHeadingChanged;
254 return myPitchChanged;
257 virtual void clearFlags();
262 return myAltitudeClampType;
265 virtual void setAltitudeAboveTerrain(
double);
268 return myAltitudeAboveGL;
271 virtual void setAltitudeAboveSeaLevel(
double);
274 return myAltitudeAboveSL;
277 virtual void setIsAnchor(
bool);
283 virtual void setUserData(
const std::string& userData);
284 virtual std::string userData()
const;
287 return myUserDataChanged;
292 return myModelSetOnly;
297 return ((myModelSetOnly == -1) || (i == myModelSetOnly));
308 virtual void setEmbarkationAllowed(
bool);
309 bool embarkationAllowed()
const;
325 return (myAltitudeClampType ==
NoClamp);
330 myClampToClosestPolygon = b;
335 return myClampToClosestPolygon;
339 virtual void setCurrentGroundLocation(
const DtGeodeticCoord& currentGroundLocation );
double myAltitudeOffsetFromPrincipal
Definition: vrfObjectFacadeInterface.h:348
DtTaitBryan myOrientation
geodetic coords
Definition: vrfObjectFacadeInterface.h:351
UUID is a unique ID wrapper class.
Definition: rwUUID.h:226
virtual bool isAnchor() const
Definition: vrfObjectFacadeInterface.h:278
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:285
std::vector< makVrv::DtUniqueID > myModelIds
Definition: vrfObjectFacadeInterface.h:378
bool myClampToClosestPolygon
Definition: vrfObjectFacadeInterface.h:368
ModelSetVisualizationMap myModelSetVisualizationMap
Definition: vrfObjectFacadeInterface.h:384
double myAltitudeAboveSL
Definition: vrfObjectFacadeInterface.h:361
std::vector< makVrv::DtUniqueID > myOverrideIdsToIgnore
Definition: vrfObjectFacadeInterface.h:380
virtual bool hasAltitudeChange() const
Definition: vrfObjectFacadeInterface.h:242
virtual bool hasNameChange() const
Definition: vrfObjectFacadeInterface.h:227
virtual std::map< std::string, std::string > extendedData() const
Definition: vrfObjectFacadeInterface.h:182
std::vector< makVrv::DtElementID > myUnifiedIgnoreList
Definition: vrfObjectFacadeInterface.h:376
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:60
DtVector myTopographicOffsetFromPrincipal
Definition: vrfObjectFacadeInterface.h:382
bool doNotClamp() const
Definition: vrfObjectFacadeInterface.h:323
boost::signals2::signal< void(DtVrfObjectFacadeInterface *)> signal_visualized
Definition: vrfObjectFacadeInterface.h:191
ShowHideContext
Definition: DtShowHideContext.h:18
bool myPitchChanged
Definition: vrfObjectFacadeInterface.h:357
virtual double altitudeAboveSeaLevel() const
Definition: vrfObjectFacadeInterface.h:272
Contains the DtUUID class declaration.
int modelSet() const
Definition: vrfObjectFacadeInterface.h:290
Definition: vrfObjectFacadeInterface.h:47
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
virtual std::map< int, DtString > extendedLabels() const
Definition: vrfObjectFacadeInterface.h:186
virtual void setExtendedData(const std::map< std::string, std::string > &)
For subclasses to implement...
Definition: vrfObjectFacadeInterface.h:174
bool myDisplayNameChanged
Definition: vrfObjectFacadeInterface.h:353
Definition: objectType.h:27
std::map< int, bool > ModelSetVisualizationMap
Definition: vrfObjectFacadeInterface.h:383
bool clampToClosestPolygon() const
Definition: vrfObjectFacadeInterface.h:333
Definition: vrfObjectFacadeInterface.h:45
double myAltitudeAboveGL
Definition: vrfObjectFacadeInterface.h:362
makVrv::DtUniqueID mySceneObjectId
Definition: vrfObjectFacadeInterface.h:343
Contains makVrv:DtIntersector class.
makVrv::DtDe & myDe
Definition: vrfObjectFacadeInterface.h:342
DtVrfObjectFacadeInterface * attachedToObject() const
Definition: vrfObjectFacadeInterface.h:143
bool myHeadingChanged
Definition: vrfObjectFacadeInterface.h:356
virtual bool hasPitchChange() const
Definition: vrfObjectFacadeInterface.h:252
DtGeodeticCoord myCurrentGroundLocation
Definition: vrfObjectFacadeInterface.h:350
bool myUserDataChanged
Definition: vrfObjectFacadeInterface.h:358
Definition: vrfObjectFacadeInterface.h:53
bool myAnchor
Definition: vrfObjectFacadeInterface.h:363
DtUUID myUUID
Definition: vrfObjectFacadeInterface.h:369
std::string myDisplayName
Definition: vrfObjectFacadeInterface.h:344
Definition: DtIntersector.h:35
bool myAltitudeChanged
Definition: vrfObjectFacadeInterface.h:355
virtual DtAltitudeClampType altitudeClampType() const
Definition: vrfObjectFacadeInterface.h:260
std::string myEntityId
Definition: vrfObjectFacadeInterface.h:345
DtAltitudeClampType myAltitudeClampType
Definition: vrfObjectFacadeInterface.h:360
int myModelSetOnly
Definition: vrfObjectFacadeInterface.h:366
DtVector myAttachPoint
Definition: vrfObjectFacadeInterface.h:373
virtual bool hasLocationChange() const
Definition: vrfObjectFacadeInterface.h:237
Definition: vrfObjectFacadeInterface.h:46
virtual void setClampToClosestPolygon(bool b)
Definition: vrfObjectFacadeInterface.h:328
Definition: vrfObjectFacadeInterface.h:48
virtual void setEntityId(const std::string &i)
Definition: vrfObjectFacadeInterface.h:65
bool supportsModelSet(int i) const
Definition: vrfObjectFacadeInterface.h:295
std::string myUserData
Definition: vrfObjectFacadeInterface.h:364
DtVrfObjectFacadeInterface * myAttachedTo
Definition: vrfObjectFacadeInterface.h:372
virtual void setDoNotClamp(bool b)
Definition: vrfObjectFacadeInterface.h:311
Contains makVrv::DtUniqueID type.
const DtTaitBryan & attachedOrientation()
Definition: vrfObjectFacadeInterface.h:138
DtTaitBryan myOrientationOffset
Definition: vrfObjectFacadeInterface.h:347
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:70
boost::signals2::signal< void(DtVrfObjectFacadeInterface *)> signal_originChanged
Definition: vrfObjectFacadeInterface.h:192
bool myEmbarkationAllowed
Definition: vrfObjectFacadeInterface.h:370
DtTaitBryan myAttachOrientation
Definition: vrfObjectFacadeInterface.h:374
voidpf uLong offset
Definition: ioapi.h:42
boost::signals2::signal< void(DtVrfObjectFacadeInterface *, bool)> signal_selected
Definition: vrfObjectFacadeInterface.h:193
virtual bool hasHeadingChange() const
Definition: vrfObjectFacadeInterface.h:247
DtEntityType myEntityType
Definition: vrfObjectFacadeInterface.h:367
virtual void mergeExtendedData(const std::map< std::string, std::string > &)
Definition: vrfObjectFacadeInterface.h:178
bool myLocationChanged
Definition: vrfObjectFacadeInterface.h:354
std::set< makVrv::DtUniqueID > myDIGuyIdsIgnored
Definition: vrfObjectFacadeInterface.h:377
virtual void clearLocationChange()
Definition: vrfObjectFacadeInterface.h:232
DtAltitudeClampType
Definition: vrfObjectFacadeInterface.h:43
virtual double altitudeAboveTerrain() const
Definition: vrfObjectFacadeInterface.h:266
const DtVector & attachedPoint() const
Definition: vrfObjectFacadeInterface.h:133