ccPrimitiveFactoryDlg.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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_PRIMITIVE_FACTORY_DLG_HEADER
  18. #define CC_PRIMITIVE_FACTORY_DLG_HEADER
  19. #include <ui_primitiveFactoryDlg.h>
  20. //Qt
  21. #include <QDialog>
  22. class MainWindow;
  23. class ccGLMatrix;
  24. //! Primitive factory
  25. class ccPrimitiveFactoryDlg : public QDialog, public Ui::PrimitiveFactoryDlg
  26. {
  27. Q_OBJECT
  28. public:
  29. //! Default constructor
  30. explicit ccPrimitiveFactoryDlg(MainWindow* win);
  31. protected:
  32. //! Creates currently defined primitive
  33. void createPrimitive();
  34. protected:
  35. //! Set sphere position from clipboard
  36. void setSpherePositionFromClipboard();
  37. //! Set sphere position to origin
  38. void setSpherePositionToOrigin();
  39. void setCoordinateSystemBasedOnSelectedObject();
  40. void onMatrixTextChange();
  41. void setCSMatrixToIdentity();
  42. ccGLMatrix getCSMatrix(bool &valid);
  43. protected:
  44. //! Associated main window
  45. MainWindow* m_win;
  46. };
  47. #endif //CC_PRIMITIVE_FACTORY_DLG_HEADER