comparisonDlg.ui 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <ui version="4.0">
  3. <class>ComparisonDialog</class>
  4. <widget class="QDialog" name="ComparisonDialog">
  5. <property name="geometry">
  6. <rect>
  7. <x>0</x>
  8. <y>0</y>
  9. <width>450</width>
  10. <height>400</height>
  11. </rect>
  12. </property>
  13. <property name="windowTitle">
  14. <string>Distance computation</string>
  15. </property>
  16. <layout class="QVBoxLayout" name="verticalLayout_5">
  17. <item>
  18. <layout class="QFormLayout" name="formLayout_2">
  19. <item row="0" column="0">
  20. <widget class="QLabel" name="label">
  21. <property name="text">
  22. <string>Compared</string>
  23. </property>
  24. </widget>
  25. </item>
  26. <item row="0" column="1">
  27. <widget class="QLineEdit" name="compName">
  28. <property name="readOnly">
  29. <bool>true</bool>
  30. </property>
  31. </widget>
  32. </item>
  33. <item row="1" column="0">
  34. <widget class="QLabel" name="label_2">
  35. <property name="text">
  36. <string>Reference</string>
  37. </property>
  38. </widget>
  39. </item>
  40. <item row="1" column="1">
  41. <widget class="QLineEdit" name="refName">
  42. <property name="readOnly">
  43. <bool>true</bool>
  44. </property>
  45. </widget>
  46. </item>
  47. </layout>
  48. </item>
  49. <item>
  50. <widget class="QTabWidget" name="preciseResultsTabWidget">
  51. <property name="currentIndex">
  52. <number>2</number>
  53. </property>
  54. <widget class="QWidget" name="generalParamsTab">
  55. <attribute name="title">
  56. <string>General parameters</string>
  57. </attribute>
  58. <layout class="QVBoxLayout" name="verticalLayout_7">
  59. <item>
  60. <layout class="QFormLayout" name="formLayout">
  61. <item row="0" column="0">
  62. <widget class="QLabel" name="label_5">
  63. <property name="toolTip">
  64. <string>Level of subdivision used for computing the distances</string>
  65. </property>
  66. <property name="text">
  67. <string>Octree level</string>
  68. </property>
  69. </widget>
  70. </item>
  71. <item row="0" column="1">
  72. <widget class="QComboBox" name="octreeLevelComboBox"/>
  73. </item>
  74. <item row="1" column="0">
  75. <widget class="QCheckBox" name="maxDistCheckBox">
  76. <property name="toolTip">
  77. <string>Acceleration: distances above this limit won't be computed accurately</string>
  78. </property>
  79. <property name="text">
  80. <string>max. distance</string>
  81. </property>
  82. </widget>
  83. </item>
  84. <item row="1" column="1">
  85. <widget class="QDoubleSpinBox" name="maxSearchDistSpinBox">
  86. <property name="enabled">
  87. <bool>false</bool>
  88. </property>
  89. <property name="toolTip">
  90. <string>Acceleration: distances above this limit won't be computed accurately</string>
  91. </property>
  92. <property name="decimals">
  93. <number>6</number>
  94. </property>
  95. <property name="maximum">
  96. <double>1000000000.000000000000000</double>
  97. </property>
  98. <property name="value">
  99. <double>1.000000000000000</double>
  100. </property>
  101. </widget>
  102. </item>
  103. <item row="2" column="1">
  104. <widget class="QFrame" name="signedDistFrame">
  105. <property name="frameShape">
  106. <enum>QFrame::StyledPanel</enum>
  107. </property>
  108. <property name="frameShadow">
  109. <enum>QFrame::Raised</enum>
  110. </property>
  111. <layout class="QHBoxLayout" name="horizontalLayout_3">
  112. <property name="leftMargin">
  113. <number>0</number>
  114. </property>
  115. <property name="topMargin">
  116. <number>0</number>
  117. </property>
  118. <property name="rightMargin">
  119. <number>0</number>
  120. </property>
  121. <property name="bottomMargin">
  122. <number>0</number>
  123. </property>
  124. <item>
  125. <widget class="QCheckBox" name="flipNormalsCheckBox">
  126. <property name="enabled">
  127. <bool>false</bool>
  128. </property>
  129. <property name="text">
  130. <string>flip normals</string>
  131. </property>
  132. </widget>
  133. </item>
  134. <item>
  135. <widget class="QCheckBox" name="robustCheckBox">
  136. <property name="enabled">
  137. <bool>false</bool>
  138. </property>
  139. <property name="toolTip">
  140. <string>Reduces occurences of edge cases where the sign can be inverted.
  141. Uncheck to reproduce the old behavior.</string>
  142. </property>
  143. <property name="text">
  144. <string>robust</string>
  145. </property>
  146. <property name="checked">
  147. <bool>true</bool>
  148. </property>
  149. </widget>
  150. </item>
  151. </layout>
  152. </widget>
  153. </item>
  154. <item row="2" column="0">
  155. <widget class="QCheckBox" name="signedDistCheckBox">
  156. <property name="toolTip">
  157. <string>compute signed distances (slower)</string>
  158. </property>
  159. <property name="statusTip">
  160. <string>compute signed distances (slower)</string>
  161. </property>
  162. <property name="text">
  163. <string>signed distances</string>
  164. </property>
  165. </widget>
  166. </item>
  167. </layout>
  168. </item>
  169. <item>
  170. <widget class="QCheckBox" name="split3DCheckBox">
  171. <property name="toolTip">
  172. <string>Generate 3 supplementary scalar fields with distances along each dimension</string>
  173. </property>
  174. <property name="statusTip">
  175. <string>Generate 3 supplementary scalar fields with distances along each dimension</string>
  176. </property>
  177. <property name="text">
  178. <string>split X,Y and Z components</string>
  179. </property>
  180. </widget>
  181. </item>
  182. <item>
  183. <widget class="QCheckBox" name="compute2DCheckBox">
  184. <property name="enabled">
  185. <bool>false</bool>
  186. </property>
  187. <property name="text">
  188. <string>merge X and Y (compute distance in the xy plane)</string>
  189. </property>
  190. </widget>
  191. </item>
  192. <item>
  193. <widget class="QCheckBox" name="filterVisibilityCheckBox">
  194. <property name="toolTip">
  195. <string>Use the sensor associated to the reference cloud to ignore the points in the compared cloud
  196. that could not have been seen (hidden/out of range/out of field of view).</string>
  197. </property>
  198. <property name="text">
  199. <string>use reference sensor to filter hidden points</string>
  200. </property>
  201. </widget>
  202. </item>
  203. <item>
  204. <layout class="QHBoxLayout" name="horizontalLayout">
  205. <item>
  206. <widget class="QCheckBox" name="multiThreadedCheckBox">
  207. <property name="text">
  208. <string>multi-threaded</string>
  209. </property>
  210. <property name="checked">
  211. <bool>true</bool>
  212. </property>
  213. </widget>
  214. </item>
  215. <item>
  216. <spacer name="horizontalSpacer">
  217. <property name="orientation">
  218. <enum>Qt::Horizontal</enum>
  219. </property>
  220. <property name="sizeHint" stdset="0">
  221. <size>
  222. <width>40</width>
  223. <height>20</height>
  224. </size>
  225. </property>
  226. </spacer>
  227. </item>
  228. <item>
  229. <widget class="QFrame" name="threadCountFrame">
  230. <property name="frameShape">
  231. <enum>QFrame::StyledPanel</enum>
  232. </property>
  233. <property name="frameShadow">
  234. <enum>QFrame::Raised</enum>
  235. </property>
  236. <layout class="QHBoxLayout" name="horizontalLayout_8">
  237. <property name="leftMargin">
  238. <number>0</number>
  239. </property>
  240. <property name="topMargin">
  241. <number>0</number>
  242. </property>
  243. <property name="rightMargin">
  244. <number>0</number>
  245. </property>
  246. <property name="bottomMargin">
  247. <number>0</number>
  248. </property>
  249. <item>
  250. <widget class="QLabel" name="label_6">
  251. <property name="text">
  252. <string>max thread count</string>
  253. </property>
  254. </widget>
  255. </item>
  256. <item>
  257. <widget class="QSpinBox" name="maxThreadCountSpinBox">
  258. <property name="toolTip">
  259. <string>Maximum number of threads/cores to be used
  260. (CC or your computer might not respond for a while if you use all available cores)</string>
  261. </property>
  262. <property name="suffix">
  263. <string notr="true"> / 8</string>
  264. </property>
  265. </widget>
  266. </item>
  267. </layout>
  268. </widget>
  269. </item>
  270. </layout>
  271. </item>
  272. <item>
  273. <spacer name="verticalSpacer_2">
  274. <property name="orientation">
  275. <enum>Qt::Vertical</enum>
  276. </property>
  277. <property name="sizeHint" stdset="0">
  278. <size>
  279. <width>20</width>
  280. <height>87</height>
  281. </size>
  282. </property>
  283. </spacer>
  284. </item>
  285. </layout>
  286. </widget>
  287. <widget class="QWidget" name="localModelingTab">
  288. <attribute name="title">
  289. <string>Local modeling</string>
  290. </attribute>
  291. <layout class="QVBoxLayout" name="verticalLayout_3">
  292. <item>
  293. <layout class="QHBoxLayout">
  294. <item>
  295. <widget class="QLabel" name="label_3">
  296. <property name="text">
  297. <string>Local model</string>
  298. </property>
  299. </widget>
  300. </item>
  301. <item>
  302. <widget class="QComboBox" name="localModelComboBox"/>
  303. </item>
  304. </layout>
  305. </item>
  306. <item>
  307. <widget class="QFrame" name="localModelParamsFrame">
  308. <property name="enabled">
  309. <bool>false</bool>
  310. </property>
  311. <layout class="QVBoxLayout" name="verticalLayout_4">
  312. <property name="leftMargin">
  313. <number>0</number>
  314. </property>
  315. <property name="topMargin">
  316. <number>0</number>
  317. </property>
  318. <property name="rightMargin">
  319. <number>0</number>
  320. </property>
  321. <property name="bottomMargin">
  322. <number>0</number>
  323. </property>
  324. <item>
  325. <layout class="QHBoxLayout" name="horizontalLayout_2">
  326. <item>
  327. <layout class="QVBoxLayout" name="verticalLayout_2">
  328. <item>
  329. <widget class="QRadioButton" name="lmKNNRadioButton">
  330. <property name="text">
  331. <string>Points (kNN)</string>
  332. </property>
  333. <property name="checked">
  334. <bool>true</bool>
  335. </property>
  336. </widget>
  337. </item>
  338. <item>
  339. <widget class="QSpinBox" name="lmKNNSpinBox">
  340. <property name="minimum">
  341. <number>3</number>
  342. </property>
  343. <property name="value">
  344. <number>6</number>
  345. </property>
  346. </widget>
  347. </item>
  348. </layout>
  349. </item>
  350. <item>
  351. <layout class="QVBoxLayout" name="verticalLayout">
  352. <item>
  353. <widget class="QRadioButton" name="lmRadiusRadioButton">
  354. <property name="text">
  355. <string>Radius (Sphere)</string>
  356. </property>
  357. </widget>
  358. </item>
  359. <item>
  360. <widget class="QDoubleSpinBox" name="lmRadiusDoubleSpinBox">
  361. <property name="enabled">
  362. <bool>false</bool>
  363. </property>
  364. <property name="decimals">
  365. <number>6</number>
  366. </property>
  367. <property name="maximum">
  368. <double>1000000000.000000000000000</double>
  369. </property>
  370. </widget>
  371. </item>
  372. </layout>
  373. </item>
  374. </layout>
  375. </item>
  376. <item>
  377. <widget class="QCheckBox" name="lmOptimizeCheckBox">
  378. <property name="toolTip">
  379. <string>faster but more ... approximate</string>
  380. </property>
  381. <property name="text">
  382. <string>use the same model for nearby points</string>
  383. </property>
  384. </widget>
  385. </item>
  386. </layout>
  387. </widget>
  388. </item>
  389. <item>
  390. <spacer name="verticalSpacer">
  391. <property name="orientation">
  392. <enum>Qt::Vertical</enum>
  393. </property>
  394. <property name="sizeHint" stdset="0">
  395. <size>
  396. <width>20</width>
  397. <height>40</height>
  398. </size>
  399. </property>
  400. </spacer>
  401. </item>
  402. </layout>
  403. </widget>
  404. <widget class="QWidget" name="approxTab">
  405. <attribute name="title">
  406. <string>Approximate distances</string>
  407. </attribute>
  408. <layout class="QVBoxLayout" name="verticalLayout_9">
  409. <item>
  410. <widget class="QFrame" name="approxResultsInnerFrame">
  411. <property name="sizePolicy">
  412. <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
  413. <horstretch>0</horstretch>
  414. <verstretch>0</verstretch>
  415. </sizepolicy>
  416. </property>
  417. <property name="frameShape">
  418. <enum>QFrame::StyledPanel</enum>
  419. </property>
  420. <property name="frameShadow">
  421. <enum>QFrame::Raised</enum>
  422. </property>
  423. <layout class="QVBoxLayout" name="verticalLayout_8">
  424. <property name="leftMargin">
  425. <number>0</number>
  426. </property>
  427. <property name="topMargin">
  428. <number>0</number>
  429. </property>
  430. <property name="rightMargin">
  431. <number>0</number>
  432. </property>
  433. <property name="bottomMargin">
  434. <number>0</number>
  435. </property>
  436. <item>
  437. <widget class="QLabel" name="label_4">
  438. <property name="styleSheet">
  439. <string notr="true">color: red;</string>
  440. </property>
  441. <property name="text">
  442. <string>Warning: approximate distances are only provided
  443. to help advanced users setting the general parameters</string>
  444. </property>
  445. <property name="alignment">
  446. <set>Qt::AlignCenter</set>
  447. </property>
  448. </widget>
  449. </item>
  450. <item>
  451. <widget class="QTableWidget" name="approxStats">
  452. <property name="maximumSize">
  453. <size>
  454. <width>16777215</width>
  455. <height>150</height>
  456. </size>
  457. </property>
  458. </widget>
  459. </item>
  460. <item>
  461. <layout class="QHBoxLayout">
  462. <item>
  463. <spacer>
  464. <property name="orientation">
  465. <enum>Qt::Horizontal</enum>
  466. </property>
  467. <property name="sizeHint" stdset="0">
  468. <size>
  469. <width>40</width>
  470. <height>20</height>
  471. </size>
  472. </property>
  473. </spacer>
  474. </item>
  475. <item>
  476. <widget class="QToolButton" name="histoButton">
  477. <property name="text">
  478. <string notr="true">...</string>
  479. </property>
  480. <property name="icon">
  481. <iconset resource="../icons.qrc">
  482. <normaloff>:/CC/images/ccHistogram.png</normaloff>:/CC/images/ccHistogram.png</iconset>
  483. </property>
  484. </widget>
  485. </item>
  486. </layout>
  487. </item>
  488. </layout>
  489. </widget>
  490. </item>
  491. <item>
  492. <spacer name="verticalSpacer_3">
  493. <property name="orientation">
  494. <enum>Qt::Vertical</enum>
  495. </property>
  496. <property name="sizeType">
  497. <enum>QSizePolicy::Maximum</enum>
  498. </property>
  499. <property name="sizeHint" stdset="0">
  500. <size>
  501. <width>20</width>
  502. <height>20</height>
  503. </size>
  504. </property>
  505. </spacer>
  506. </item>
  507. </layout>
  508. </widget>
  509. </widget>
  510. </item>
  511. <item>
  512. <layout class="QHBoxLayout">
  513. <item>
  514. <spacer>
  515. <property name="orientation">
  516. <enum>Qt::Horizontal</enum>
  517. </property>
  518. <property name="sizeHint" stdset="0">
  519. <size>
  520. <width>40</width>
  521. <height>20</height>
  522. </size>
  523. </property>
  524. </spacer>
  525. </item>
  526. <item>
  527. <widget class="QPushButton" name="computeButton">
  528. <property name="styleSheet">
  529. <string notr="true">background-color:red; color: white;</string>
  530. </property>
  531. <property name="text">
  532. <string>Compute</string>
  533. </property>
  534. </widget>
  535. </item>
  536. <item>
  537. <widget class="QPushButton" name="okButton">
  538. <property name="enabled">
  539. <bool>false</bool>
  540. </property>
  541. <property name="text">
  542. <string>Ok</string>
  543. </property>
  544. </widget>
  545. </item>
  546. <item>
  547. <widget class="QPushButton" name="cancelButton">
  548. <property name="text">
  549. <string>Cancel</string>
  550. </property>
  551. </widget>
  552. </item>
  553. </layout>
  554. </item>
  555. </layout>
  556. </widget>
  557. <resources>
  558. <include location="../icons.qrc"/>
  559. <include location="../icons.qrc"/>
  560. </resources>
  561. <connections>
  562. <connection>
  563. <sender>maxDistCheckBox</sender>
  564. <signal>toggled(bool)</signal>
  565. <receiver>maxSearchDistSpinBox</receiver>
  566. <slot>setEnabled(bool)</slot>
  567. <hints>
  568. <hint type="sourcelabel">
  569. <x>93</x>
  570. <y>170</y>
  571. </hint>
  572. <hint type="destinationlabel">
  573. <x>298</x>
  574. <y>171</y>
  575. </hint>
  576. </hints>
  577. </connection>
  578. <connection>
  579. <sender>lmKNNRadioButton</sender>
  580. <signal>toggled(bool)</signal>
  581. <receiver>lmKNNSpinBox</receiver>
  582. <slot>setEnabled(bool)</slot>
  583. <hints>
  584. <hint type="sourcelabel">
  585. <x>122</x>
  586. <y>173</y>
  587. </hint>
  588. <hint type="destinationlabel">
  589. <x>122</x>
  590. <y>206</y>
  591. </hint>
  592. </hints>
  593. </connection>
  594. <connection>
  595. <sender>lmRadiusRadioButton</sender>
  596. <signal>toggled(bool)</signal>
  597. <receiver>lmRadiusDoubleSpinBox</receiver>
  598. <slot>setEnabled(bool)</slot>
  599. <hints>
  600. <hint type="sourcelabel">
  601. <x>317</x>
  602. <y>173</y>
  603. </hint>
  604. <hint type="destinationlabel">
  605. <x>317</x>
  606. <y>206</y>
  607. </hint>
  608. </hints>
  609. </connection>
  610. <connection>
  611. <sender>signedDistCheckBox</sender>
  612. <signal>toggled(bool)</signal>
  613. <receiver>flipNormalsCheckBox</receiver>
  614. <slot>setEnabled(bool)</slot>
  615. <hints>
  616. <hint type="sourcelabel">
  617. <x>71</x>
  618. <y>155</y>
  619. </hint>
  620. <hint type="destinationlabel">
  621. <x>273</x>
  622. <y>155</y>
  623. </hint>
  624. </hints>
  625. </connection>
  626. <connection>
  627. <sender>multiThreadedCheckBox</sender>
  628. <signal>toggled(bool)</signal>
  629. <receiver>threadCountFrame</receiver>
  630. <slot>setEnabled(bool)</slot>
  631. <hints>
  632. <hint type="sourcelabel">
  633. <x>67</x>
  634. <y>251</y>
  635. </hint>
  636. <hint type="destinationlabel">
  637. <x>345</x>
  638. <y>251</y>
  639. </hint>
  640. </hints>
  641. </connection>
  642. <connection>
  643. <sender>signedDistCheckBox</sender>
  644. <signal>toggled(bool)</signal>
  645. <receiver>robustCheckBox</receiver>
  646. <slot>setEnabled(bool)</slot>
  647. <hints>
  648. <hint type="sourcelabel">
  649. <x>71</x>
  650. <y>155</y>
  651. </hint>
  652. <hint type="destinationlabel">
  653. <x>391</x>
  654. <y>156</y>
  655. </hint>
  656. </hints>
  657. </connection>
  658. </connections>
  659. </ui>