18 #include <matrix/vlVector.h>
22 class DtVrfObjectManipulationEventProcessor;
23 class DtEnvironmentalCreationData;
24 class DtEnvironmentalFacadeCollection;
37 virtual void setPoints(
const std::vector<DtVector>& pts) ;
38 virtual void setPoints(
const std::vector<DtGeodeticCoord>& pts) ;
40 const std::vector<DtVector>& points()
const;
41 virtual bool canEmbark()
const override;
50 virtual void addControlPoint(
const DtVector& location,
int index = -1);
53 virtual void removeControlPoint(
int index);
58 virtual void setLocation(
int index,
const DtVector& location,
bool resetOrigin =
true);
61 virtual bool isDoubleClickSupportedForCurrentObject()
const override;
66 virtual void setAltitudeAboveSeaLevel(
int,
double);
67 virtual double altitudeAboveSeaLevel(
int)
const;
70 DtSimObjectReference editState,
const DtVector& principalLocation,
const DtTaitBryan& principalOrientation)
override;
75 virtual void setAltitudeAboveTerrain(
int,
double);
76 virtual double altitudeAboveTerrain(
int)
const;
79 virtual bool canChangeDimensions()
const;
82 virtual double maximumLength()
const;
85 virtual bool shapeAtMinimum()
const;
86 virtual bool canRemovePoint()
const;
93 virtual bool shapeAtMaximum()
const;
98 virtual void getMinMaxVertices(
const DtEntityType& creatingType,
int& minVert,
int& maxVert)
const;
99 virtual void checkMinMaxKeywords(
const DtEntityType& creatingType,
int& minVert,
int& maxVert)
const;
102 virtual int numVertices()
const;
105 virtual void setEditingPoint(
int);
106 virtual int editingPoint()
const;
108 virtual DtGeodeticCoord geodeticPosition(
int)
const;
109 virtual DtVector geocentricPosition(
int)
const;
112 virtual DtVector localLocation(
int index )
const;
114 virtual std::vector<DtGeodeticCoord> geodeticPositions()
const;
115 virtual std::vector<DtVector> geocentricPositions()
const;
117 virtual void removePoint(
int);
120 virtual void setShapeVerticesDisabled(
bool);
121 virtual bool shapeVerticesDisabled()
const;
124 virtual double altitudeForAltitudeType(
int)
const;
127 virtual bool freehand()
const;
130 virtual bool canChangeArrowStyle()
const;
131 virtual bool canChangeArrowSize()
const;
132 virtual bool canFill()
const;
133 virtual bool canChangePenStyle()
const;
137 virtual bool canChangeShapeOnly()
const;
141 virtual void setPointSamplingRate(
int);
142 virtual int pointSamplingRate()
const;
145 virtual void setLineWidth(
int);
146 virtual int lineWidth()
const;
149 virtual void setPenStyle(
int);
150 virtual int penStyle()
const;
153 virtual void setFillStyle(
int);
154 virtual int fillStyle()
const;
157 virtual bool fixedWidthSizing()
const;
159 virtual void setForce(
int)
override;
160 virtual void setColor(
int);
161 virtual int color()
const;
163 virtual void setExtendedLabels(
const std::map<int, DtString>&)
override;
164 virtual void setLabel(
const std::string&)
override;
165 virtual std::string label()
const override;
167 virtual void setFormattingData(
const std::string&);
168 virtual std::string formattingData()
const;
170 virtual void setCorridorSize(
double);
171 virtual double corridorSize()
const;
174 virtual int arrowStyle()
const;
175 virtual int arrowHeadPlacement()
const;
176 virtual int arrowSize()
const;
179 virtual bool isArea()
const;
182 virtual bool isRoute()
const;
189 virtual void setFloor(
double);
190 virtual double floor()
const;
192 virtual void setCeiling(
double);
193 virtual double ceiling()
const;
197 virtual bool automaticallyChangeCeiling()
const;
201 virtual double orientation()
const;
204 virtual void setOrientation(
double);
207 virtual double initialArrowSize(
bool fixedWidthSizing,
double initialSize)
const;
210 virtual void setAllowHeadingChanges(
bool);
213 virtual void setLength(
double);
216 virtual void cancel()
override;
219 virtual DtVector centerOfMass()
const override;
221 virtual void updateOffsetsBasedOnMousePosition(
const DtVector& centerOfMass,
const DtGeodeticCoord&,
222 bool useImagePoints =
false)
override;
228 virtual bool isObjectValidForCreation()
override;
234 boost::signals2::signal<void (const std::vector<DtVector>&)> signal_locationsChanged;
241 virtual bool clampAtClosestPolygonOnPlacement()
const override;
244 virtual void calculateAnchorBasedOnMousePosition(
makVrv::DtChannel& channel)
override;
245 virtual void slot_onEditComplete(
makVrv::DtUniqueID id,
const DtVector& location,
double altAboveGround)
override;
247 virtual void initializeEventProcessor()
override;
250 virtual void slot_onPlace(
makVrv::DtUniqueID,
const DtVector& location,
double altAboveGround)
override;
251 virtual void slot_onComplete(
bool stopCreating);
254 virtual double defaultCeilingHeight()
const;
256 virtual void slot_onCancel(
bool escPressed)
override;
257 virtual void slot_onCancelOrComplete(
bool escPressed);
258 virtual void slot_onLocationChanged(
const DtVector& location,
double altAboveGround )
override;
259 virtual void slot_onAltitudeChanged(
const DtVector& location,
double altitude )
override;
263 virtual DtVector addControlPoint(
int index = -1);
268 virtual void moveSelectedPoint(
const DtVector& location,
double altAboveGround);
270 virtual bool isArea(
const DtEntityType& type )
const;
271 virtual bool isRoute(
const DtEntityType& type )
const;
272 virtual bool isObstacle(
const DtEntityType& type )
const;
273 virtual bool isPhaseline(
const DtEntityType& type )
const;
276 const DtEntityType&,
int force)
const;
285 virtual DtVector setAltitudeToOrigin(
const DtVector&)
const;
294 virtual bool alwaysRecalculateGeometry()
const;
298 virtual void updateOffsetsBasedOnMousePosition()
override;
class DtEnvironmentalFacadeCollection
Definition: environmentalFacadeCollection.h:76
bool myRecentered
Definition: vrfShapeManipulationHandler.h:308
DtVector myRecenteredPos
Definition: vrfShapeManipulationHandler.h:309
boost::signals2::signal< void(const DtVector &, int)> signal_pointLocationChanged
Definition: vrfShapeManipulationHandler.h:230
Definition: environmentalCreationData.h:27
boost::signals2::signal< void()> signal_pointSamplingRateChanged
Definition: vrfShapeManipulationHandler.h:231
voidpf uLong int origin
Definition: ioapi.h:42
Definition: vrfShapeManipulationHandler.h:29
bool myShapeVerticesDisabled
Definition: vrfShapeManipulationHandler.h:313
DtGeodeticCoord myLastPosition
Definition: vrfShapeManipulationHandler.h:306
int myMaxVertices
Definition: vrfShapeManipulationHandler.h:303
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
boost::signals2::signal< void()> signal_refreshLocation
Definition: vrfShapeManipulationHandler.h:235
The abstract Channel Class.
Definition: DtChannel.h:35
boost::signals2::signal< void(double)> signal_floorChanged
Definition: vrfShapeManipulationHandler.h:232
Definition: vrfObjectFacadeInterface.h:53
Definition: vrfObjectManipulationHandlerBaseClass.h:88
HandlerType
The type of handler this is.
Definition: vrfObjectManipulationHandlerBaseClass.h:52
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
int myPointSamplingRate
Definition: vrfShapeManipulationHandler.h:311
Definition: vrfObjectManipulationHandlerBaseClass.h:59
virtual HandlerType type() const override
The type of handler. Used to see if two handler are equivalent.
Definition: vrfShapeManipulationHandler.h:55
boost::signals2::signal< void(double)> signal_ceilingChanged
Definition: vrfShapeManipulationHandler.h:233
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:76
Definition: vrfObjectManipulationHandlerBaseClass.h:840
int myMinVertices
Definition: vrfShapeManipulationHandler.h:304
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
double myLastAltAboveGround
Definition: vrfShapeManipulationHandler.h:316
DtVector myLastMouseLocation
Definition: vrfShapeManipulationHandler.h:315