Salome HOME
478d982c62f5d724cd036c766ca68d70c0f2b358
[modules/gui.git] / src / VTKViewer / VTKViewer_Transform.h
1 // Copyright (C) 2005  OPEN CASCADE, CEA/DEN, EDF R&D, PRINCIPIA R&D
2 // 
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either 
6 // version 2.1 of the License.
7 // 
8 // This library is distributed in the hope that it will be useful 
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of 
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
11 // Lesser General Public License for more details.
12 //
13 // You should have received a copy of the GNU Lesser General Public  
14 // License along with this library; if not, write to the Free Software 
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 //
17 // See http://www.salome-platform.org/
18 //
19 #ifndef VTKVIEWER_TRANSFORM_H
20 #define VTKVIEWER_TRANSFORM_H
21
22 #include "VTKViewer.h"
23
24 #include <vtkTransform.h>
25
26 /*!\brief Describes linear transformations via a 4x4 matrix.
27  *@see vtkTransform class
28  */
29 class VTKVIEWER_EXPORT VTKViewer_Transform : public vtkTransform
30 {
31 public:
32   /*!Create new instance of VTKViewer_Transform.*/
33   static VTKViewer_Transform *New();
34   vtkTypeMacro( VTKViewer_Transform, vtkTransform );
35
36   int  IsIdentity();
37   //merge with V2_2_0_VISU_improvements:void SetScale( float theScaleX, float theScaleY, float theScaleZ );
38   void SetMatrixScale(double theScaleX, double theScaleY, double theScaleZ);
39   void GetMatrixScale(double theScale[3]);
40
41 protected:
42   /*!Constructor.*/
43   VTKViewer_Transform() {/*!Do nothing*/}
44   /*!Copy contructor.*/
45   VTKViewer_Transform(const VTKViewer_Transform&) {/*!Do nothing*/}
46   /*!Destructor.*/
47   ~VTKViewer_Transform() {/*!Do nothing*/}
48
49   /*!Operator = */
50   void operator=( const VTKViewer_Transform& ) {/*!Do nothing*/}
51 };
52
53 #endif