/*========================================================================= Program: Visualization Toolkit Module: vtkTDxInteractorStyleSettings.h Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen All rights reserved. See Copyright.txt or http://www.kitware.com/Copyright.htm for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notice for more information. =========================================================================*/ /** * @class vtkTDxInteractorStyleSettings * @brief 3DConnexion device settings * * * vtkTDxInteractorStyleSettings defines settings for 3DConnexion device such * as sensitivity, axis filters * * @sa * vtkInteractorStyle vtkRenderWindowInteractor * vtkTDxInteractorStyle */ #ifndef vtkTDxInteractorStyleSettings_h #define vtkTDxInteractorStyleSettings_h #include "vtkObject.h" #include "vtkRenderingCoreModule.h" // For export macro class VTKRENDERINGCORE_EXPORT vtkTDxInteractorStyleSettings : public vtkObject { public: static vtkTDxInteractorStyleSettings* New(); vtkTypeMacro(vtkTDxInteractorStyleSettings, vtkObject); void PrintSelf(ostream& os, vtkIndent indent) override; //@{ /** * Sensitivity of the rotation angle. This can be any value: * positive, negative, null. * - x<-1.0: faster reversed * - x=-1.0: reversed neutral * - -1.01.0: faster */ vtkSetMacro(AngleSensitivity, double); vtkGetMacro(AngleSensitivity, double); //@} //@{ /** * Use or mask the rotation component around the X-axis. Initial value is * true. */ vtkSetMacro(UseRotationX, bool); vtkGetMacro(UseRotationX, bool); //@} //@{ /** * Use or mask the rotation component around the Y-axis. Initial value is * true. */ vtkSetMacro(UseRotationY, bool); vtkGetMacro(UseRotationY, bool); //@} //@{ /** * Use or mask the rotation component around the Z-axis. Initial value is * true. */ vtkSetMacro(UseRotationZ, bool); vtkGetMacro(UseRotationZ, bool); //@} //@{ /** * Sensitivity of the translation along the X-axis. This can be any value: * positive, negative, null. * - x<-1.0: faster reversed * - x=-1.0: reversed neutral * - -1.01.0: faster * Initial value is 1.0 */ vtkSetMacro(TranslationXSensitivity, double); vtkGetMacro(TranslationXSensitivity, double); //@} //@{ /** * Sensitivity of the translation along the Y-axis. * See comment of SetTranslationXSensitivity(). */ vtkSetMacro(TranslationYSensitivity, double); vtkGetMacro(TranslationYSensitivity, double); //@} //@{ /** * Sensitivity of the translation along the Z-axis. * See comment of SetTranslationXSensitivity(). */ vtkSetMacro(TranslationZSensitivity, double); vtkGetMacro(TranslationZSensitivity, double); //@} protected: vtkTDxInteractorStyleSettings(); ~vtkTDxInteractorStyleSettings() override; double AngleSensitivity; bool UseRotationX; bool UseRotationY; bool UseRotationZ; double TranslationXSensitivity; double TranslationYSensitivity; double TranslationZSensitivity; private: vtkTDxInteractorStyleSettings(const vtkTDxInteractorStyleSettings&) = delete; void operator=(const vtkTDxInteractorStyleSettings&) = delete; }; #endif