00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date$ 00006 Version: $Revision$ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 00019 #ifndef MITKROTATIONOPERATION_H_HEADER_INCLUDED 00020 #define MITKROTATIONOPERATION_H_HEADER_INCLUDED 00021 00022 #include "mitkOperation.h" 00023 #include "mitkVector.h" 00024 00025 namespace mitk { 00026 00027 //##Documentation 00028 //## @brief Operation, that holds everything necessary for an rotation operation 00029 //## 00030 //## @ingroup Undo 00031 class MITK_CORE_EXPORT RotationOperation : public Operation 00032 { 00033 public: 00034 RotationOperation(OperationType operationType, Point3D pointOfRotation, Vector3D vectorOfRotation, ScalarType angleOfRotation); 00035 virtual ~RotationOperation(void); 00036 virtual ScalarType GetAngleOfRotation(); 00037 virtual const Point3D GetCenterOfRotation(); 00038 virtual const Vector3D GetVectorOfRotation(); 00039 00040 protected: 00041 ScalarType m_AngleOfRotation; 00042 Point3D m_PointOfRotation; 00043 Vector3D m_VectorOfRotation; 00044 }; 00045 00046 } // namespace mitk 00047 00048 #endif /* MITKROTATIONOPERATION_H_HEADER_INCLUDED */