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 TDMOUSEEVENT_H_HEADER_INCLUDED 00020 #define TDMOUSEEVENT_H_HEADER_INCLUDED 00021 00022 #include "mitkCommon.h" 00023 #include "mitkEvent.h" 00024 #include "mitkVector.h" 00025 00026 00027 namespace mitk { 00028 00029 //##Documentation 00030 //## @brief Event on 3D Mouse input 00031 //## 00032 //## Seven coordinates exposed by the 3D Mouse: 00033 //## 3-dimensional translation vector 00034 //## 3-dimensional rotation achsis (length allways 1.0) 00035 //## scalar rotation angle 00036 //## @ingroup Interaction 00037 class TDMouseEvent : public Event 00038 { 00039 public: 00040 //##Documentation 00041 //## @brief Constructor with all necessary arguments. 00042 //## 00043 //## buttonState: information from the Event 00044 TDMouseEvent(int buttonState, const Vector3D& translation, const Vector3D& rotation, const ScalarType& angle); 00045 00046 const Vector3D& GetTranslation() const 00047 { 00048 return m_Translation; 00049 } 00050 00051 void SetTranslation(const Vector3D& translation) { m_Translation = translation; } 00052 00053 const Vector3D& GetRotation() const 00054 { 00055 return m_Rotation; 00056 } 00057 00058 void SetRotation(const Vector3D& rotation) { m_Rotation = rotation; } 00059 00060 const ScalarType& GetAngle() const 00061 { 00062 return m_Angle; 00063 } 00064 00065 void SetAngle(const ScalarType& angle) { m_Angle = angle; } 00066 00067 00068 protected: 00069 Vector3D m_Translation; 00070 Vector3D m_Rotation; 00071 ScalarType m_Angle; 00072 00073 }; 00074 00075 } // namespace mitk 00076 00077 #endif /* TDMOUSEEVENT_H_HEADER_INCLUDED */