ccSectionExtractionSubDlg.h 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #pragma once
  2. //##########################################################################
  3. //# #
  4. //# CLOUDCOMPARE #
  5. //# #
  6. //# This program is free software; you can redistribute it and/or modify #
  7. //# it under the terms of the GNU General Public License as published by #
  8. //# the Free Software Foundation; version 2 or later of the License. #
  9. //# #
  10. //# This program is distributed in the hope that it will be useful, #
  11. //# but WITHOUT ANY WARRANTY; without even the implied warranty of #
  12. //# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
  13. //# GNU General Public License for more details. #
  14. //# #
  15. //# COPYRIGHT: EDF R&D / TELECOM ParisTech (ENST-TSI) #
  16. //# #
  17. //##########################################################################
  18. //Local
  19. #include "ccEnvelopeExtractor.h"
  20. //Qt
  21. #include <QDialog>
  22. #include <ui_sectionExtractionSubDlg.h>
  23. //! Dialog for generating sections along one or several 2D polylines (Section Extraction Tool)
  24. class ccSectionExtractionSubDlg : public QDialog, public Ui::SectionExtractionSubDlg
  25. {
  26. Q_OBJECT
  27. public:
  28. //! Default constructor
  29. explicit ccSectionExtractionSubDlg(QWidget* parent = nullptr);
  30. //! Sets the number of active section(s)
  31. void setActiveSectionCount(int count);
  32. //! Sets the default section thickness
  33. void setSectionThickness(double t);
  34. //! Returns the section thickness
  35. double getSectionThickness() const;
  36. //! Returns the max edge length (for envelope generation)
  37. double getMaxEdgeLength() const;
  38. //! Sets the max edge length (for envelope generation)
  39. void setMaxEdgeLength(double l);
  40. //! Returns the envelope type (for envelope generation)
  41. ccEnvelopeExtractor::EnvelopeType getEnvelopeType() const;
  42. //! Whether to generate clouds or not
  43. bool extractClouds() const;
  44. //! Sets whether to generate clouds or not
  45. void doExtractClouds(bool state);
  46. //! Whether to generate envelopes or not
  47. bool extractEnvelopes() const;
  48. //! Sets whether to generate envelopes or not
  49. void doExtractEnvelopes(bool state, ccEnvelopeExtractor::EnvelopeType type);
  50. //! Whether to split the envelopes or not
  51. bool splitEnvelopes() const;
  52. //! Sets whether to split the envelopes or not
  53. void doSplitEnvelopes(bool state);
  54. //! Whether to use multipass or not
  55. bool useMultiPass() const;
  56. //! Sets whether to use multipass or not
  57. void doUseMultiPass(bool state);
  58. //! Whether visual debug mode is enabled or not
  59. bool visualDebugMode() const;
  60. };