ccRenderingTools.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  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. #include "qCC_glWindow.h"
  19. //qCC_db
  20. #include <ccDrawableObject.h>
  21. class QWidget;
  22. class ccGBLSensor;
  23. class ccScalarField;
  24. class ccGLWindowInterface;
  25. //! Misc. tools for rendering of advanced structures
  26. class CCGLWINDOW_LIB_API ccRenderingTools
  27. {
  28. public:
  29. //! Displays a depth buffer as an image
  30. static void ShowDepthBuffer(ccGBLSensor* lidar, QWidget* parent = nullptr, unsigned maxDim = 1024);
  31. //! Displays the colored scale corresponding to the currently activated context scalar field
  32. /** Its appearance depends on the scalar fields min and max displayed
  33. values, min and max saturation values, and also the selected
  34. color ramp.
  35. \param context OpenGL context description
  36. **/
  37. static void DrawColorRamp(const CC_DRAW_CONTEXT& context);
  38. //! See other version of DrawColorRamp
  39. static void DrawColorRamp(const CC_DRAW_CONTEXT& context, const ccScalarField* sf, ccGLWindowInterface* win, int glW, int glH, float renderZoom = 1.0f);
  40. };