ui_normalComputationDlg.h 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. /********************************************************************************
  2. ** Form generated from reading UI file 'normalComputationDlg.ui'
  3. **
  4. ** Created by: Qt User Interface Compiler version 5.15.10
  5. **
  6. ** WARNING! All changes made in this file will be lost when recompiling UI file!
  7. ********************************************************************************/
  8. #ifndef UI_NORMALCOMPUTATIONDLG_H
  9. #define UI_NORMALCOMPUTATIONDLG_H
  10. #include <QtCore/QVariant>
  11. #include <QtWidgets/QApplication>
  12. #include <QtWidgets/QCheckBox>
  13. #include <QtWidgets/QComboBox>
  14. #include <QtWidgets/QDialog>
  15. #include <QtWidgets/QDialogButtonBox>
  16. #include <QtWidgets/QDoubleSpinBox>
  17. #include <QtWidgets/QFrame>
  18. #include <QtWidgets/QGroupBox>
  19. #include <QtWidgets/QHBoxLayout>
  20. #include <QtWidgets/QLabel>
  21. #include <QtWidgets/QRadioButton>
  22. #include <QtWidgets/QSpacerItem>
  23. #include <QtWidgets/QSpinBox>
  24. #include <QtWidgets/QToolButton>
  25. #include <QtWidgets/QVBoxLayout>
  26. QT_BEGIN_NAMESPACE
  27. class Ui_NormalComputationDlg
  28. {
  29. public:
  30. QVBoxLayout *verticalLayout_3;
  31. QGroupBox *surfaceGroupBox;
  32. QHBoxLayout *horizontalLayout_2;
  33. QLabel *label;
  34. QComboBox *localModelComboBox;
  35. QGroupBox *neighborsGroupBox;
  36. QVBoxLayout *verticalLayout_2;
  37. QHBoxLayout *horizontalLayout_3;
  38. QCheckBox *useScanGridCheckBox;
  39. QSpacerItem *horizontalSpacer;
  40. QFrame *gridAngleFrame;
  41. QHBoxLayout *horizontalLayout;
  42. QLabel *label_3;
  43. QDoubleSpinBox *gridAngleDoubleSpinBox;
  44. QFrame *useScanGridsFrame;
  45. QHBoxLayout *horizontalLayout_9;
  46. QHBoxLayout *horizontalLayout_10;
  47. QLabel *label_4;
  48. QSpacerItem *horizontalSpacer_2;
  49. QFrame *localRadiusFrame;
  50. QHBoxLayout *horizontalLayout_8;
  51. QLabel *label_2;
  52. QDoubleSpinBox *radiusDoubleSpinBox;
  53. QToolButton *autoRadiusToolButton;
  54. QGroupBox *normalsOrientGroupBox;
  55. QVBoxLayout *verticalLayout;
  56. QCheckBox *scanGridsOrientCheckBox;
  57. QCheckBox *sensorOrientCheckBox;
  58. QHBoxLayout *horizontalLayout_5;
  59. QRadioButton *preferredOrientRadioButton;
  60. QSpacerItem *horizontalSpacer_4;
  61. QComboBox *preferredOrientationComboBox;
  62. QHBoxLayout *horizontalLayout_6;
  63. QRadioButton *mstOrientRadioButton;
  64. QSpacerItem *horizontalSpacer_3;
  65. QSpinBox *mstNeighborsSpinBox;
  66. QSpacerItem *verticalSpacer;
  67. QDialogButtonBox *buttonBox;
  68. void setupUi(QDialog *NormalComputationDlg)
  69. {
  70. if (NormalComputationDlg->objectName().isEmpty())
  71. NormalComputationDlg->setObjectName(QString::fromUtf8("NormalComputationDlg"));
  72. NormalComputationDlg->resize(482, 420);
  73. verticalLayout_3 = new QVBoxLayout(NormalComputationDlg);
  74. verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3"));
  75. surfaceGroupBox = new QGroupBox(NormalComputationDlg);
  76. surfaceGroupBox->setObjectName(QString::fromUtf8("surfaceGroupBox"));
  77. horizontalLayout_2 = new QHBoxLayout(surfaceGroupBox);
  78. horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2"));
  79. horizontalLayout_2->setContentsMargins(30, -1, -1, -1);
  80. label = new QLabel(surfaceGroupBox);
  81. label->setObjectName(QString::fromUtf8("label"));
  82. horizontalLayout_2->addWidget(label);
  83. localModelComboBox = new QComboBox(surfaceGroupBox);
  84. localModelComboBox->addItem(QString());
  85. localModelComboBox->addItem(QString());
  86. localModelComboBox->addItem(QString());
  87. localModelComboBox->setObjectName(QString::fromUtf8("localModelComboBox"));
  88. horizontalLayout_2->addWidget(localModelComboBox);
  89. verticalLayout_3->addWidget(surfaceGroupBox);
  90. neighborsGroupBox = new QGroupBox(NormalComputationDlg);
  91. neighborsGroupBox->setObjectName(QString::fromUtf8("neighborsGroupBox"));
  92. QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Maximum);
  93. sizePolicy.setHorizontalStretch(0);
  94. sizePolicy.setVerticalStretch(0);
  95. sizePolicy.setHeightForWidth(neighborsGroupBox->sizePolicy().hasHeightForWidth());
  96. neighborsGroupBox->setSizePolicy(sizePolicy);
  97. verticalLayout_2 = new QVBoxLayout(neighborsGroupBox);
  98. verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2"));
  99. verticalLayout_2->setContentsMargins(30, -1, -1, -1);
  100. horizontalLayout_3 = new QHBoxLayout();
  101. horizontalLayout_3->setObjectName(QString::fromUtf8("horizontalLayout_3"));
  102. useScanGridCheckBox = new QCheckBox(neighborsGroupBox);
  103. useScanGridCheckBox->setObjectName(QString::fromUtf8("useScanGridCheckBox"));
  104. horizontalLayout_3->addWidget(useScanGridCheckBox);
  105. horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
  106. horizontalLayout_3->addItem(horizontalSpacer);
  107. gridAngleFrame = new QFrame(neighborsGroupBox);
  108. gridAngleFrame->setObjectName(QString::fromUtf8("gridAngleFrame"));
  109. gridAngleFrame->setEnabled(true);
  110. horizontalLayout = new QHBoxLayout(gridAngleFrame);
  111. horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout"));
  112. horizontalLayout->setContentsMargins(0, 0, 0, 0);
  113. label_3 = new QLabel(gridAngleFrame);
  114. label_3->setObjectName(QString::fromUtf8("label_3"));
  115. label_3->setEnabled(true);
  116. horizontalLayout->addWidget(label_3);
  117. gridAngleDoubleSpinBox = new QDoubleSpinBox(gridAngleFrame);
  118. gridAngleDoubleSpinBox->setObjectName(QString::fromUtf8("gridAngleDoubleSpinBox"));
  119. gridAngleDoubleSpinBox->setEnabled(true);
  120. gridAngleDoubleSpinBox->setMinimum(0.000000000000000);
  121. gridAngleDoubleSpinBox->setMaximum(90.000000000000000);
  122. gridAngleDoubleSpinBox->setSingleStep(0.100000000000000);
  123. gridAngleDoubleSpinBox->setValue(1.000000000000000);
  124. horizontalLayout->addWidget(gridAngleDoubleSpinBox);
  125. horizontalLayout_3->addWidget(gridAngleFrame);
  126. verticalLayout_2->addLayout(horizontalLayout_3);
  127. useScanGridsFrame = new QFrame(neighborsGroupBox);
  128. useScanGridsFrame->setObjectName(QString::fromUtf8("useScanGridsFrame"));
  129. QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Preferred);
  130. sizePolicy1.setHorizontalStretch(0);
  131. sizePolicy1.setVerticalStretch(0);
  132. sizePolicy1.setHeightForWidth(useScanGridsFrame->sizePolicy().hasHeightForWidth());
  133. useScanGridsFrame->setSizePolicy(sizePolicy1);
  134. horizontalLayout_9 = new QHBoxLayout(useScanGridsFrame);
  135. horizontalLayout_9->setObjectName(QString::fromUtf8("horizontalLayout_9"));
  136. horizontalLayout_9->setContentsMargins(0, 0, 0, 0);
  137. verticalLayout_2->addWidget(useScanGridsFrame);
  138. horizontalLayout_10 = new QHBoxLayout();
  139. horizontalLayout_10->setObjectName(QString::fromUtf8("horizontalLayout_10"));
  140. label_4 = new QLabel(neighborsGroupBox);
  141. label_4->setObjectName(QString::fromUtf8("label_4"));
  142. horizontalLayout_10->addWidget(label_4);
  143. horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
  144. horizontalLayout_10->addItem(horizontalSpacer_2);
  145. localRadiusFrame = new QFrame(neighborsGroupBox);
  146. localRadiusFrame->setObjectName(QString::fromUtf8("localRadiusFrame"));
  147. horizontalLayout_8 = new QHBoxLayout(localRadiusFrame);
  148. horizontalLayout_8->setObjectName(QString::fromUtf8("horizontalLayout_8"));
  149. horizontalLayout_8->setContentsMargins(0, 0, 0, 0);
  150. label_2 = new QLabel(localRadiusFrame);
  151. label_2->setObjectName(QString::fromUtf8("label_2"));
  152. horizontalLayout_8->addWidget(label_2);
  153. radiusDoubleSpinBox = new QDoubleSpinBox(localRadiusFrame);
  154. radiusDoubleSpinBox->setObjectName(QString::fromUtf8("radiusDoubleSpinBox"));
  155. radiusDoubleSpinBox->setDecimals(6);
  156. radiusDoubleSpinBox->setMinimum(0.000001000000000);
  157. radiusDoubleSpinBox->setMaximum(999999.989999999990687);
  158. radiusDoubleSpinBox->setSingleStep(0.100000000000000);
  159. radiusDoubleSpinBox->setValue(1.000000000000000);
  160. horizontalLayout_8->addWidget(radiusDoubleSpinBox);
  161. autoRadiusToolButton = new QToolButton(localRadiusFrame);
  162. autoRadiusToolButton->setObjectName(QString::fromUtf8("autoRadiusToolButton"));
  163. horizontalLayout_8->addWidget(autoRadiusToolButton);
  164. horizontalLayout_10->addWidget(localRadiusFrame);
  165. verticalLayout_2->addLayout(horizontalLayout_10);
  166. verticalLayout_3->addWidget(neighborsGroupBox);
  167. normalsOrientGroupBox = new QGroupBox(NormalComputationDlg);
  168. normalsOrientGroupBox->setObjectName(QString::fromUtf8("normalsOrientGroupBox"));
  169. sizePolicy.setHeightForWidth(normalsOrientGroupBox->sizePolicy().hasHeightForWidth());
  170. normalsOrientGroupBox->setSizePolicy(sizePolicy);
  171. normalsOrientGroupBox->setCheckable(true);
  172. verticalLayout = new QVBoxLayout(normalsOrientGroupBox);
  173. verticalLayout->setObjectName(QString::fromUtf8("verticalLayout"));
  174. verticalLayout->setContentsMargins(30, -1, -1, -1);
  175. scanGridsOrientCheckBox = new QCheckBox(normalsOrientGroupBox);
  176. scanGridsOrientCheckBox->setObjectName(QString::fromUtf8("scanGridsOrientCheckBox"));
  177. verticalLayout->addWidget(scanGridsOrientCheckBox);
  178. sensorOrientCheckBox = new QCheckBox(normalsOrientGroupBox);
  179. sensorOrientCheckBox->setObjectName(QString::fromUtf8("sensorOrientCheckBox"));
  180. sensorOrientCheckBox->setAcceptDrops(true);
  181. verticalLayout->addWidget(sensorOrientCheckBox);
  182. horizontalLayout_5 = new QHBoxLayout();
  183. horizontalLayout_5->setObjectName(QString::fromUtf8("horizontalLayout_5"));
  184. preferredOrientRadioButton = new QRadioButton(normalsOrientGroupBox);
  185. preferredOrientRadioButton->setObjectName(QString::fromUtf8("preferredOrientRadioButton"));
  186. horizontalLayout_5->addWidget(preferredOrientRadioButton);
  187. horizontalSpacer_4 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
  188. horizontalLayout_5->addItem(horizontalSpacer_4);
  189. preferredOrientationComboBox = new QComboBox(normalsOrientGroupBox);
  190. preferredOrientationComboBox->addItem(QString::fromUtf8("+X"));
  191. preferredOrientationComboBox->addItem(QString::fromUtf8("-X"));
  192. preferredOrientationComboBox->addItem(QString::fromUtf8("+Y"));
  193. preferredOrientationComboBox->addItem(QString::fromUtf8("-Y"));
  194. preferredOrientationComboBox->addItem(QString::fromUtf8("+Z"));
  195. preferredOrientationComboBox->addItem(QString::fromUtf8("-Z"));
  196. preferredOrientationComboBox->addItem(QString());
  197. preferredOrientationComboBox->addItem(QString());
  198. preferredOrientationComboBox->addItem(QString::fromUtf8("From origin (0,0,0)"));
  199. preferredOrientationComboBox->addItem(QString::fromUtf8("Towards origin (0,0,0)"));
  200. preferredOrientationComboBox->addItem(QString());
  201. preferredOrientationComboBox->addItem(QString());
  202. preferredOrientationComboBox->addItem(QString());
  203. preferredOrientationComboBox->setObjectName(QString::fromUtf8("preferredOrientationComboBox"));
  204. preferredOrientationComboBox->setEnabled(false);
  205. preferredOrientationComboBox->setMaxVisibleItems(12);
  206. horizontalLayout_5->addWidget(preferredOrientationComboBox);
  207. verticalLayout->addLayout(horizontalLayout_5);
  208. horizontalLayout_6 = new QHBoxLayout();
  209. horizontalLayout_6->setObjectName(QString::fromUtf8("horizontalLayout_6"));
  210. mstOrientRadioButton = new QRadioButton(normalsOrientGroupBox);
  211. mstOrientRadioButton->setObjectName(QString::fromUtf8("mstOrientRadioButton"));
  212. mstOrientRadioButton->setChecked(true);
  213. horizontalLayout_6->addWidget(mstOrientRadioButton);
  214. horizontalSpacer_3 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
  215. horizontalLayout_6->addItem(horizontalSpacer_3);
  216. mstNeighborsSpinBox = new QSpinBox(normalsOrientGroupBox);
  217. mstNeighborsSpinBox->setObjectName(QString::fromUtf8("mstNeighborsSpinBox"));
  218. mstNeighborsSpinBox->setEnabled(true);
  219. mstNeighborsSpinBox->setPrefix(QString::fromUtf8("knn = "));
  220. mstNeighborsSpinBox->setMinimum(1);
  221. horizontalLayout_6->addWidget(mstNeighborsSpinBox);
  222. verticalLayout->addLayout(horizontalLayout_6);
  223. verticalLayout_3->addWidget(normalsOrientGroupBox);
  224. verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);
  225. verticalLayout_3->addItem(verticalSpacer);
  226. buttonBox = new QDialogButtonBox(NormalComputationDlg);
  227. buttonBox->setObjectName(QString::fromUtf8("buttonBox"));
  228. buttonBox->setOrientation(Qt::Horizontal);
  229. buttonBox->setStandardButtons(QDialogButtonBox::Cancel|QDialogButtonBox::Ok);
  230. verticalLayout_3->addWidget(buttonBox);
  231. buttonBox->raise();
  232. normalsOrientGroupBox->raise();
  233. surfaceGroupBox->raise();
  234. neighborsGroupBox->raise();
  235. retranslateUi(NormalComputationDlg);
  236. QObject::connect(buttonBox, SIGNAL(accepted()), NormalComputationDlg, SLOT(accept()));
  237. QObject::connect(buttonBox, SIGNAL(rejected()), NormalComputationDlg, SLOT(reject()));
  238. QObject::connect(preferredOrientRadioButton, SIGNAL(toggled(bool)), preferredOrientationComboBox, SLOT(setEnabled(bool)));
  239. QObject::connect(mstOrientRadioButton, SIGNAL(toggled(bool)), mstNeighborsSpinBox, SLOT(setEnabled(bool)));
  240. QObject::connect(useScanGridCheckBox, SIGNAL(toggled(bool)), gridAngleFrame, SLOT(setEnabled(bool)));
  241. localModelComboBox->setCurrentIndex(0);
  242. preferredOrientationComboBox->setCurrentIndex(0);
  243. QMetaObject::connectSlotsByName(NormalComputationDlg);
  244. } // setupUi
  245. void retranslateUi(QDialog *NormalComputationDlg)
  246. {
  247. NormalComputationDlg->setWindowTitle(QCoreApplication::translate("NormalComputationDlg", "Compute normals", nullptr));
  248. surfaceGroupBox->setTitle(QCoreApplication::translate("NormalComputationDlg", "Surface approximation", nullptr));
  249. label->setText(QCoreApplication::translate("NormalComputationDlg", "Local surface model", nullptr));
  250. localModelComboBox->setItemText(0, QCoreApplication::translate("NormalComputationDlg", "Plane", nullptr));
  251. localModelComboBox->setItemText(1, QCoreApplication::translate("NormalComputationDlg", "Quadric", nullptr));
  252. localModelComboBox->setItemText(2, QCoreApplication::translate("NormalComputationDlg", "Triangulation", nullptr));
  253. #if QT_CONFIG(tooltip)
  254. localModelComboBox->setToolTip(QCoreApplication::translate("NormalComputationDlg", "Local surface estimation model", nullptr));
  255. #endif // QT_CONFIG(tooltip)
  256. neighborsGroupBox->setTitle(QCoreApplication::translate("NormalComputationDlg", "Neighbors", nullptr));
  257. #if QT_CONFIG(tooltip)
  258. useScanGridCheckBox->setToolTip(QCoreApplication::translate("NormalComputationDlg", "Using scan grid(s) instead of the octree", nullptr));
  259. #endif // QT_CONFIG(tooltip)
  260. useScanGridCheckBox->setText(QCoreApplication::translate("NormalComputationDlg", "use scan grid(s) whenever possible", nullptr));
  261. #if QT_CONFIG(tooltip)
  262. label_3->setToolTip(QCoreApplication::translate("NormalComputationDlg", "min triangulation angle", nullptr));
  263. #endif // QT_CONFIG(tooltip)
  264. label_3->setText(QCoreApplication::translate("NormalComputationDlg", "min angle", nullptr));
  265. #if QT_CONFIG(tooltip)
  266. gridAngleDoubleSpinBox->setToolTip(QCoreApplication::translate("NormalComputationDlg", "Min angle of local triangles (in degrees)", nullptr));
  267. #endif // QT_CONFIG(tooltip)
  268. label_4->setText(QCoreApplication::translate("NormalComputationDlg", "Octree", nullptr));
  269. #if QT_CONFIG(tooltip)
  270. label_2->setToolTip(QCoreApplication::translate("NormalComputationDlg", "Radius of the sphere in which the neighbors will be extracted", nullptr));
  271. #endif // QT_CONFIG(tooltip)
  272. label_2->setText(QCoreApplication::translate("NormalComputationDlg", "radius", nullptr));
  273. #if QT_CONFIG(tooltip)
  274. radiusDoubleSpinBox->setToolTip(QCoreApplication::translate("NormalComputationDlg", "Radius of the sphere in which the neighbors will be extracted", nullptr));
  275. #endif // QT_CONFIG(tooltip)
  276. autoRadiusToolButton->setText(QCoreApplication::translate("NormalComputationDlg", "Auto", nullptr));
  277. normalsOrientGroupBox->setTitle(QCoreApplication::translate("NormalComputationDlg", "Orientation", nullptr));
  278. #if QT_CONFIG(tooltip)
  279. scanGridsOrientCheckBox->setToolTip(QCoreApplication::translate("NormalComputationDlg", "Use scan grid(s) (robust method)", nullptr));
  280. #endif // QT_CONFIG(tooltip)
  281. scanGridsOrientCheckBox->setText(QCoreApplication::translate("NormalComputationDlg", "Use scan grid(s) whenever possible", nullptr));
  282. #if QT_CONFIG(tooltip)
  283. sensorOrientCheckBox->setToolTip(QCoreApplication::translate("NormalComputationDlg", "Use sensor position to orient normals (if both grid and sensor are selected, 'grid' has precedence over 'sensor')", nullptr));
  284. #endif // QT_CONFIG(tooltip)
  285. sensorOrientCheckBox->setText(QCoreApplication::translate("NormalComputationDlg", "Use sensor(s) whenever possible", nullptr));
  286. #if QT_CONFIG(tooltip)
  287. preferredOrientRadioButton->setToolTip(QCoreApplication::translate("NormalComputationDlg", "To give a hint on how to orient normals", nullptr));
  288. #endif // QT_CONFIG(tooltip)
  289. preferredOrientRadioButton->setText(QCoreApplication::translate("NormalComputationDlg", "Use preferred orientation", nullptr));
  290. preferredOrientationComboBox->setItemText(6, QCoreApplication::translate("NormalComputationDlg", "From barycenter", nullptr));
  291. preferredOrientationComboBox->setItemText(7, QCoreApplication::translate("NormalComputationDlg", "Towards barycenter", nullptr));
  292. preferredOrientationComboBox->setItemText(10, QCoreApplication::translate("NormalComputationDlg", "Use previous normal", nullptr));
  293. preferredOrientationComboBox->setItemText(11, QCoreApplication::translate("NormalComputationDlg", "From sensor origin", nullptr));
  294. preferredOrientationComboBox->setItemText(12, QCoreApplication::translate("NormalComputationDlg", "Towards sensor origin", nullptr));
  295. #if QT_CONFIG(tooltip)
  296. mstOrientRadioButton->setToolTip(QCoreApplication::translate("NormalComputationDlg", "Generic 3D orientation algorithm", nullptr));
  297. #endif // QT_CONFIG(tooltip)
  298. mstOrientRadioButton->setText(QCoreApplication::translate("NormalComputationDlg", "Use Minimum Spanning Tree", nullptr));
  299. #if QT_CONFIG(tooltip)
  300. mstNeighborsSpinBox->setToolTip(QCoreApplication::translate("NormalComputationDlg", "Number of neighbors used to build the tree", nullptr));
  301. #endif // QT_CONFIG(tooltip)
  302. } // retranslateUi
  303. };
  304. namespace Ui {
  305. class NormalComputationDlg: public Ui_NormalComputationDlg {};
  306. } // namespace Ui
  307. QT_END_NAMESPACE
  308. #endif // UI_NORMALCOMPUTATIONDLG_H