VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
navigationAreaDefinitionDialog.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 
10 #pragma once
11 
12 #if !defined(Q_MOC_RUN)
16 #endif
17 
18 class QCheckBox;
19 class QLabel;
20 class QPushButton;
21 class QListWidget;
22 class QWidget;
23 class QHBoxLayout;
24 class QLineEdit;
25 class QDoubleSpinBox;
26 class DtRwStringList;
27 class QGridLayout;
28 class QSlider;
29 class QComboBox;
30 
31 namespace makVrf
32 {
37  {
38 
39  public:
40 
43 
46 
47  protected:
49  virtual void setupGui();
50  virtual void locationChanged();
51  virtual void createConnections();
52  virtual void objectCreated();
53  virtual void updateButtons();
54  virtual void processNamePrefixEdited(const std::string& name);
55  virtual void updateNavData();
56  virtual void processObjectCreation();
57  virtual void processObjectUpdate();
58  virtual void processPopulateDialog(const makVrv::DtUniqueID& selectedUniqueID);
59 
61  virtual void slot_onPublishObjectChanged(bool);
62 
64  virtual void processReviewMouseClicks(bool flag);
65  };
66 
71  {
72 
73  Q_OBJECT
74 
75  public:
76 
78  DtNavigationAreaDefinitionDialog(makVrv::DtDe& de, QWidget* parent, const QString& title="",
79  DtDialogInteractionMode mode=DtCreationMode);
80 
83 
84  virtual void setGenerateFullTerrainVisible(bool);
85  virtual void setGenerateFullTerrainEnabled(bool);
86  virtual void setGenerateFullTerrain(bool);
87  virtual bool generateFullTerrain() const;
88 
89  virtual void setPruneNoGoAreas(bool);
90  virtual bool pruneNoGoAreas() const;
91 
92  virtual void setNavigationPath(const DtFilename&);
93  virtual QString navigationPath() const;
94 
95  virtual void selectProfiles(const DtRwStringList&);
96  virtual std::vector<std::string> profiles() const;
97  virtual DtRwNavigationProfileList& allProfiles() { return myAllProfiles; };
98 
100  virtual bool publishObject() const;
101 
102  virtual void setName(const QString&);
103 
104  virtual double rasterPrecision() const { return myRasterPrecision; };
105 
106  virtual void setDistanceUnits(const makVrv::DtUnicode& u);
107 
108  virtual int cellSize();
109 
110  virtual void setRasterPrecision(double d);
111 
112  virtual bool sectorizeArea() const;
113  virtual void setSectorizeArea(bool sectorize);
114  virtual void setSectorizeAutomatically(bool automatic);
115 
116  virtual int sectorCountX() const;
117  virtual int sectorCountY() const;
118  virtual void setSectorCount(int x, int y);
119 
120  protected slots:
121  virtual void validate();
122  virtual void selectNavigationDataPath();
123 
124  protected:
125  virtual DtBoxObjectDefinitionDialogLogic* createLogic();
126  virtual void setupGui();
127  virtual void slot_onLengthChanged(const QString& x);
128  virtual void slot_onWidthChanged(const QString& x);
129  virtual QSize minimumSizeHint() const;
130 
131  virtual void init(const DtEntityType& entityType, const QString& title, bool forPlan,
133 
135  virtual void setPublishObjectVisible(bool b);
136  virtual void setPublishObject(bool b);
137 
138  virtual void setMaxRadius(double d);
139  virtual void setMaxAreaSize(int i);
140 
141  public slots:
142  virtual void sectorsChanged();
143 
144  protected slots:
145  virtual void generateFullTerrainChanged();
146  virtual void selectedProfilesChanged();
147  virtual void rasterPrecisionChanged();
148  virtual void numberOfSectorsChanged();
149  virtual void updateSectorSizeSlider();
150  virtual void nameEditedByUser();
151 
152  public:
159  QWidget* myExtension;
160 
162  QHBoxLayout* myLocationLayout;
163 
165 
167 
173 
177 
181 
183  QHBoxLayout* myMaxAreaSizeLayout;
185 
187 
190 
192  QRadioButton* myManualSectorizeButton;
193 
198 
200  QHBoxLayout* mySectorSizeLayout;
202 
204  QHBoxLayout* myNumSectorsLayout;
206 
208 
210 
213 
216 
218 
219  protected:
221 
223  {
224  PotentialSectorSize() : numLengthSectors(0), numWidthSectors(0),
225  sectorSizeLength(0), sectorSizeWidth(0) {};
226  PotentialSectorSize(int nl, int nw, int sl, int sw) :
227  numLengthSectors(nl), numWidthSectors(nw),
228  sectorSizeLength(sl), sectorSizeWidth(sw) {};
229 
230  int numLengthSectors;
234  };
235 
236  std::vector<PotentialSectorSize> myPotentialSectorSizes;
237 
238  std::string myCurrentProfile;
239  std::map<std::string, double> myProfileRasterPrecisions;
240 
241  std::vector<double> myPotentialRasterPrecisions;
242  };
243 
245  {
246  public:
248  virtual DtCreateAndEditObjectDialogInterface* createDialog(makVrv::DtDe& de, QWidget* parent, const QString& title,
250  };
251 }
QLabel * myMultipleProfilesToGenerateLabel
Definition: navigationAreaDefinitionDialog.h:211
A unicode string.
Definition: DtUnicode.h:33
QCheckBox * myGenerateFullTerrain
Definition: navigationAreaDefinitionDialog.h:153
bool myUserDefinedName
Definition: navigationAreaDefinitionDialog.h:217
QCheckBox * mySectorizeAreaCheckBox
Definition: navigationAreaDefinitionDialog.h:186
QLineEdit * myNavigationAreaFinalPath
Definition: navigationAreaDefinitionDialog.h:207
QLabel * myRasterPrecisionLargerLabel
Definition: navigationAreaDefinitionDialog.h:171
QSlider * mySectorSizeSlider
Definition: navigationAreaDefinitionDialog.h:197
QHBoxLayout * myMaxEntityRadiusLayout
Definition: navigationAreaDefinitionDialog.h:179
Definition: boxObjectDefinitionDialog.h:485
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
QPushButton * mySelectNavigationAreaPath
Definition: navigationAreaDefinitionDialog.h:157
QHBoxLayout * myNumSectorsLayout
Definition: navigationAreaDefinitionDialog.h:204
QLabel * mySectorSizeLabel
Definition: navigationAreaDefinitionDialog.h:199
PotentialSectorSize()
Definition: navigationAreaDefinitionDialog.h:224
QListWidget * myMultipleNavigationProfiles
Definition: navigationAreaDefinitionDialog.h:158
QLineEdit * myNavigationAreaPath
Definition: navigationAreaDefinitionDialog.h:156
DtEditingType
Definition: vrfObjectManipulationHandlerBaseClass.h:44
std::string myCurrentProfile
Definition: navigationAreaDefinitionDialog.h:238
Definition: createAndEditObjectDialogInterface.h:29
QLabel * myMaxAreaSizeLabel
Definition: navigationAreaDefinitionDialog.h:182
Definition: navigationAreaDefinitionDialog.h:222
This class implements the logic behind the DtNavigationareatDefinitionDialog.
Definition: navigationAreaDefinitionDialog.h:36
QHBoxLayout * myLocationLayout
Definition: navigationAreaDefinitionDialog.h:162
int numWidthSectors
Definition: navigationAreaDefinitionDialog.h:231
This class defines the dialog that allows the creation/update of Box objects in the scenario...
Definition: boxObjectDefinitionDialog.h:199
QLabel * myRasterPrecisionValueLabel
Definition: navigationAreaDefinitionDialog.h:174
QLabel * mySectorSizeSmallerLabel
Definition: navigationAreaDefinitionDialog.h:195
QCheckBox * myPruneNoGoAreasCheckBox
Definition: navigationAreaDefinitionDialog.h:166
This class defines the dialog that allows the creation/update of Box objects in the scenario...
Definition: navigationAreaDefinitionDialog.h:70
QLabel * myRasterPrecisionValue
Definition: navigationAreaDefinitionDialog.h:176
double myRasterPrecision
Definition: navigationAreaDefinitionDialog.h:209
QGridLayout * myNavigationAreaPathLayout
Definition: navigationAreaDefinitionDialog.h:154
QLabel * myLocationLabel
Definition: navigationAreaDefinitionDialog.h:161
QLabel * myMultipleProfileWarning
Definition: navigationAreaDefinitionDialog.h:212
QHBoxLayout * mySectorSizeLayout
Definition: navigationAreaDefinitionDialog.h:200
QLabel * myRasterPrecisionLabel
Definition: navigationAreaDefinitionDialog.h:168
int sectorSizeLength
Definition: navigationAreaDefinitionDialog.h:232
This class implements the logic behind the DtBoxObjectDefinitionDialog.
Definition: boxObjectDefinitionDialog.h:41
QLabel * myNumSectorsValue
Definition: navigationAreaDefinitionDialog.h:205
QHBoxLayout * myManualSectorizeLayout
Definition: navigationAreaDefinitionDialog.h:191
QRadioButton * myAutomaticSectorizeButton
Definition: navigationAreaDefinitionDialog.h:189
std::vector< double > myPotentialRasterPrecisions
Definition: navigationAreaDefinitionDialog.h:241
QLabel * myNavigationAreaFinalPathLabel
Definition: navigationAreaDefinitionDialog.h:164
QWidget * myExtension
Definition: navigationAreaDefinitionDialog.h:159
int sectorSizeWidth
Definition: navigationAreaDefinitionDialog.h:233
virtual DtRwNavigationProfileList & allProfiles()
Definition: navigationAreaDefinitionDialog.h:97
DtDialogInteractionMode
Definition: createAndEditObjectDialogInterface.h:34
std::map< std::string, double > myProfileRasterPrecisions
Definition: navigationAreaDefinitionDialog.h:239
QHBoxLayout * myMaxAreaSizeLayout
Definition: navigationAreaDefinitionDialog.h:183
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
QLabel * myRasterPrecisionSmallerLabel
Definition: navigationAreaDefinitionDialog.h:170
QLabel * mySectorSizeLargerLabel
Definition: navigationAreaDefinitionDialog.h:196
virtual double rasterPrecision() const
Definition: navigationAreaDefinitionDialog.h:104
QSlider * myRasterPrecisionSlider
Definition: navigationAreaDefinitionDialog.h:172
QHBoxLayout * myRasterPrecisionSliderLayout
Definition: navigationAreaDefinitionDialog.h:169
QLabel * myMaxEntityRadiusLabel
Definition: navigationAreaDefinitionDialog.h:178
QLabel * myMaxEntityRadiusValue
Definition: navigationAreaDefinitionDialog.h:180
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
const char int mode
Definition: ioapi.h:38
QLabel * mySectorSizeValue
Definition: navigationAreaDefinitionDialog.h:201
QComboBox * myNavigationProfile
Definition: navigationAreaDefinitionDialog.h:215
QLabel * myNavigationAreaPathLabel
Definition: navigationAreaDefinitionDialog.h:155
Definition: rwStringList.h:20
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
QLabel * myProfileToGenerateLabel
Definition: navigationAreaDefinitionDialog.h:214
Definition: navigationAreaDefinitionDialog.h:244
Definition: rwNavigationProfile.h:133
QRadioButton * myManualSectorizeButton
Definition: navigationAreaDefinitionDialog.h:192
DtRwNavigationProfileList myAllProfiles
Definition: navigationAreaDefinitionDialog.h:220
QHBoxLayout * myAutomaticSectorizeLayout
Definition: navigationAreaDefinitionDialog.h:188
QHBoxLayout * myRasterPrecisionValueLayout
Definition: navigationAreaDefinitionDialog.h:175
PotentialSectorSize(int nl, int nw, int sl, int sw)
Definition: navigationAreaDefinitionDialog.h:226
QLabel * myMaxAreaSizeValue
Definition: navigationAreaDefinitionDialog.h:184
QHBoxLayout * mySectorSizeSliderLayout
Definition: navigationAreaDefinitionDialog.h:194
std::vector< PotentialSectorSize > myPotentialSectorSizes
Definition: navigationAreaDefinitionDialog.h:236
QLabel * myNumSectorsLabel
Definition: navigationAreaDefinitionDialog.h:203

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)