VR-Forces 4.2 Class Documentation
DtVrfShapeManipulationHandler.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2011 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: DtVrfShapeManipulationHandler.h,v $ $Revision: 1.4 $ $State: Exp $
7 ******************************************************************************/
8 
11 
13 
14 #pragma once
15 
16 #include <vrfGuiCore/vrfGuiCore.h>
19 #include <string>
20 
21 class DtVector;
22 
23 namespace makVrf
24 {
25  class DtVrfObjectManipulationEventProcessor;
26  class DtEnvironmentalCreationData;
27  class DtEnvironmentalFacadeCollection;
28 
31  {
32  public:
33 
34  DtVrfShapeManipulationHandler( makVrv::DtDe& );
36 
38  virtual void setPoints(const std::vector<DtVector>& pts) ;
39  virtual void setPoints(const std::vector<DtGeodeticCoord>& pts) ;
40 
41  const std::vector<DtVector>& points() const;
42 
43  public:
44 
47  virtual bool createVrfObject();
48  virtual bool createVrfObject(DtVrfObjectFacadeInterface*);
49 
51  virtual void addControlPoint(const DtVector& location, int index = -1);
52 
54  virtual void removeControlPoint(int index);
55 
57  virtual void setLocation(int index, const DtVector& location, bool resetOrigin = true);
58 
62  virtual void setAltitudeAboveSeaLevel(int, double);
63  virtual double altitudeAboveSeaLevel(int) const;
64 
68  virtual void setAltitudeAboveTerrain(int, double);
69  virtual double altitudeAboveTerrain(int) const;
70 
72  virtual bool shapeAtMinimum() const;
73  virtual bool shapeAtMinimum(DtEnvironmentStateView*);
74 
76  virtual bool canDeleteAPoint(DtEnvironmentStateView*);
77 
79  virtual bool shapeAtMaximum() const;
80  virtual bool shapeAtMaximum(DtEnvironmentStateView*);
81 
84  virtual void getMinMaxVertices(const DtEntityType& creatingType, int& minVert, int& maxVert) const;
85 
87  virtual int numVertices() const;
88 
90  virtual void setEditingPoint(int);
91  virtual int editingPoint() const;
92 
93  virtual DtGeodeticCoord geodeticPosition(int) const;
94 
96  virtual DtVector localLocation( int index ) const;
97 
98  virtual std::vector<DtGeodeticCoord> geodeticPositions() const;
99 
100  virtual void removePoint(int);
101 
103  virtual double altitudeForAltitudeType(int) const;
104 
106  virtual bool freehand() const;
107 
109  virtual bool canChangeArrowStyle() const;
110  virtual bool canChangeArrowSize() const;
111  virtual bool canFill() const;
112  virtual bool canChangePenStyle() const;
113 
116  virtual void setPointSamplingRate(int);
117  virtual int pointSamplingRate() const;
118 
120  virtual void setLineWidth(int);
121  virtual int lineWidth() const;
122 
124  virtual void setPenStyle(int);
125  virtual int penStyle() const;
126 
128  virtual void setFillStyle(int);
129  virtual int fillStyle() const;
130 
132  virtual bool fixedWidthSizing() const;
133 
134  virtual void setForce(int);
135  virtual void setColor(int);
136  virtual int color() const;
137 
138  virtual void setLabel(const std::string&);
139  virtual std::string label() const;
140 
142  virtual int arrowStyle() const;
143  virtual int arrowHeadPlacement() const;
144  virtual int arrowSize() const;
145 
147  virtual double initialArrowSize(bool fixedWidthSizing, double initialSize) const;
148 
149  boost::signal<void (const DtVector&, int)> signal_pointLocationChanged;
150  boost::signal<void ()> signal_pointSamplingRateChanged;
151 
152  protected:
153  virtual void postCreateInitialize();
154 
155  virtual void editSelectedObjects( const makVrv::DtUniqueID& principalID, makVrv::DtChannel& initiatingChannel, double waitTimeAfterComplete = 0. );
156  virtual void slot_onEditComplete(makVrv::DtUniqueID id, const DtVector& location, double altAboveGround);
157 
158  virtual void initializeEventProcessor();
159 
160  virtual bool modifyVrfObjects();
161 
162  virtual void slot_onPlace(makVrv::DtUniqueID, const DtVector& location, double altAboveGround);
163  virtual void slot_onComplete();
164 
165  virtual void slot_onCancel();
166  virtual void slot_onLocationChanged( const DtVector& location, double altAboveGround );
167  virtual void slot_onAltitudeChanged( const DtVector& location, double altitude );
168 
170  virtual DtVrfObjectFacadeInterface* createLocalRepresentation(DtVrlinkSimulatedBaseStateView* editStateView = 0);
171  virtual DtVector addControlPoint(int index = -1);
172 
173  virtual DtVrfObjectFacadeInterface* createLocalRepresentation(
174  DtVrlinkSimulatedBaseStateView* editStateView, makVrv::DtUniqueID sceneObjectId, DtVrlinkSimulatedBaseStateView* principalStateView);
175 
176  virtual void moveSelectedPoint(const DtVector& location, double altAboveGround);
177 
178  virtual bool isArea( const DtEntityType& type ) const;
179  virtual bool isRoute( const DtEntityType& type ) const;
180  virtual bool isObstacle( const DtEntityType& type ) const;
181  virtual bool isPhaseline( const DtEntityType& type ) const;
182 
183  virtual DtEnvironmentalCreationData environmentalCreationData(const std::string& name,
184  const DtEntityType&, int force) const;
185 
186  virtual void updateLocationOffset(const DtVector& local, DtEnvironmentalFacadeCollection* env, int pos);
187 
189  virtual void modifyVrfObject(DtEnvironmentalFacadeCollection* objectImage);
190 
191  protected:
194 
195  DtGeodeticCoord myLastPosition;
196 
199 
201 
203  std::vector<DtVector> myControlPoints;
204  };
205 
208 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)