ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
EditCameraTool.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - CloudViewer: www.cloudViewer.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2024 www.cloudViewer.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #pragma once
9 
10 #include <ecvGenericCameraTool.h>
11 
12 #include <QObject>
13 
14 #include "qPCL.h"
15 
17  Q_OBJECT
18 public:
20  ~EditCameraTool() override;
21 
22  static void UpdateCameraInfo();
23  static void UpdateCamera();
24  static void SetVisualizer(ecvGenericVisualizer3D* viewer);
25 
26 private slots:
27  // Description:
28  // Choose a file and load/save camera properties.
29  virtual void saveCameraConfiguration(const std::string& file) override;
30  virtual void loadCameraConfiguration(const std::string& file) override;
31 
32  virtual void resetViewDirection(double look_x,
33  double look_y,
34  double look_z,
35  double up_x,
36  double up_y,
37  double up_z) override;
38 
39  virtual void updateCamera() override;
40  virtual void updateCameraParameters() override;
41 
42 private:
43  virtual void adjustCamera(CameraAdjustmentType enType,
44  double value) override;
45 };
#define slots
virtual void updateCamera()=0
virtual void saveCameraConfiguration(const std::string &file)
virtual void loadCameraConfiguration(const std::string &file)
virtual void resetViewDirection(double look_x, double look_y, double look_z, double up_x, double up_y, double up_z)
virtual void updateCameraParameters()=0
virtual void adjustCamera(CameraAdjustmentType enType, double value)=0
Generic visualizer 3D interface.
#define QPCL_ENGINE_LIB_API
Definition: qPCL.h:15