ccComputeOctreeDlg.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. //##########################################################################
  2. //# #
  3. //# CLOUDCOMPARE #
  4. //# #
  5. //# This program is free software; you can redistribute it and/or modify #
  6. //# it under the terms of the GNU General Public License as published by #
  7. //# the Free Software Foundation; version 2 or later of the License. #
  8. //# #
  9. //# This program is distributed in the hope that it will be useful, #
  10. //# but WITHOUT ANY WARRANTY; without even the implied warranty of #
  11. //# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
  12. //# GNU General Public License for more details. #
  13. //# #
  14. //# COPYRIGHT: EDF R&D / TELECOM ParisTech (ENST-TSI) #
  15. //# #
  16. //##########################################################################
  17. #ifndef CC_COMPUTE_OCTREE_DLG_HEADER
  18. #define CC_COMPUTE_OCTREE_DLG_HEADER
  19. #include <ui_computeOctreeDlg.h>
  20. //qCC_db
  21. #include <ccBBox.h>
  22. class ccBoundingBoxEditorDlg;
  23. //! Dialog for octree computation
  24. class ccComputeOctreeDlg : public QDialog, public Ui::ComputeOctreeDialog
  25. {
  26. Q_OBJECT
  27. public:
  28. //! Default constructor
  29. ccComputeOctreeDlg( const ccBBox& baseBBox,
  30. double minCellSize,
  31. QWidget* parent = nullptr);
  32. //! Computation mode
  33. enum ComputationMode { DEFAULT, MIN_CELL_SIZE, CUSTOM_BBOX };
  34. //! Returns octree computation mode
  35. ComputationMode getMode() const;
  36. //! Returns cell size at max level
  37. double getMinCellSize() const;
  38. //! Returns custom bbox
  39. ccBBox getCustomBBox() const;
  40. protected:
  41. //! Associated dialog
  42. ccBoundingBoxEditorDlg* m_bbEditorDlg;
  43. };
  44. #endif //CC_COMPUTE_OCTREE_DLG_HEADER