pqCameraDialog.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-FileCopyrightText: Copyright (c) Sandia Corporation
3 // SPDX-License-Identifier: BSD-3-Clause
4 #ifndef pqCameraDialog_h
5 #define pqCameraDialog_h
6 
7 #include "pqDialog.h"
8 
9 class pqCameraDialogInternal;
10 class pqView;
11 class pqSettings;
13 class QDoubleSpinBox;
14 
16 {
17  Q_OBJECT
18 public:
19  pqCameraDialog(QWidget* parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags{});
20  ~pqCameraDialog() override;
21 
22  void SetCameraGroupsEnabled(bool enabled);
23 
27  static bool configureCustomViewpoints(QWidget* parentWidget, vtkSMRenderViewProxy* viewProxy);
28 
32  static bool addCurrentViewpointToCustomViewpoints(vtkSMRenderViewProxy* viewProxy);
33 
37  static bool applyCustomViewpoint(int CustomViewpointIndex, vtkSMRenderViewProxy* viewProxy);
38 
42  static bool deleteCustomViewpoint(int CustomViewpointIndex, vtkSMRenderViewProxy* viewProxy);
43 
47  static bool setToCurrentViewpoint(int CustomViewpointIndex, vtkSMRenderViewProxy* viewProxy);
48 
52  static QStringList CustomViewpointToolTips();
53 
57  static QStringList CustomViewpointConfigurations();
58 
59 public Q_SLOTS: // NOLINT(readability-redundant-access-specifiers)
60  void setRenderModule(pqView*);
61 
62 private Q_SLOTS:
63  // Description:
64  // Choose a file and load/save camera properties.
65  void saveCameraConfiguration();
66  void loadCameraConfiguration();
67 
68  // Description:
69  // Assign/restore the current camera properties to
70  // a custom view button.
71  void configureCustomViewpoints();
72  void applyCustomViewpoint();
73  void addCurrentViewpointToCustomViewpoints();
74  void updateCustomViewpointButtons();
75 
76  void resetViewDirectionPosX();
77  void resetViewDirectionNegX();
78  void resetViewDirectionPosY();
79  void resetViewDirectionNegY();
80  void resetViewDirectionPosZ();
81  void resetViewDirectionNegZ();
82 
83  void resetViewDirection(
84  double look_x, double look_y, double look_z, double up_x, double up_y, double up_z);
85 
86  void applyIsometricView();
87  void applyCameraRollPlus();
88  void applyCameraRollMinus();
89  void applyCameraElevationPlus();
90  void applyCameraElevationMinus();
91  void applyCameraAzimuthPlus();
92  void applyCameraAzimuthMinus();
93  void applyCameraZoomIn();
94  void applyCameraZoomOut();
95 
96  void resetRotationCenterWithCamera();
97 
98  void setInteractiveViewLinkOpacity(double value);
99  void setInteractiveViewLinkBackground(bool hideBackground);
100  void updateInteractiveViewLinkWidgets();
101 
102 protected:
103  void setupGUI();
104 
105 private:
106  pqCameraDialogInternal* Internal;
107 };
108 
109 #endif
#define PQCOMPONENTS_EXPORT
This is a PQ abstraction of a generic view module.
Definition: pqView.h:26
pqSettings extends QSettings to add support for following:
Definition: pqSettings.h:19
implementation for View that includes render window and renderers.
enabled
value
This is a QDialog subclass that is aware of the undo-redo sub-system.
Definition: pqDialog.h:25