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 #ifndef __ExtrudedContourInteractor_H 00019 #define __ExtrudedContourInteractor_H 00020 00021 #include "mitkCommon.h" 00022 #include "MitkExtExports.h" 00023 #include <mitkInteractor.h> 00024 #include <mitkVector.h> 00025 #include <mitkContour.h> 00026 #include <mitkDataNode.h> 00027 00028 namespace mitk { 00029 00030 //##Documentation 00031 //## @brief Interactor for the creation of an mitk::Contour 00032 //## @ingroup Interaction 00033 class MitkExt_EXPORT ExtrudedContourInteractor : public mitk::Interactor 00034 { 00035 public: 00036 mitkClassMacro(ExtrudedContourInteractor, Interactor); 00037 mitkNewMacro2Param(Self, const char*, DataNode*); 00038 00039 itkGetObjectMacro(Contour, mitk::Contour); 00040 itkGetObjectMacro(ContourNode, mitk::DataNode); 00041 00042 protected: 00043 ExtrudedContourInteractor(const char * type, DataNode* dataNode); 00044 virtual ~ExtrudedContourInteractor(); 00045 00046 virtual bool ExecuteAction(Action* action, mitk::StateEvent const* stateEvent); 00047 00052 virtual void Press (mitk::Point3D& op); 00053 00057 virtual void Release (mitk::Point3D& op); 00058 00062 virtual void Move (mitk::Point3D& op); 00063 00064 protected: 00065 bool m_Positive; 00066 bool m_Started; 00067 00068 mitk::Contour::Pointer m_Contour; 00069 mitk::DataNode::Pointer m_ContourNode; 00070 }; 00071 00072 } 00073 #endif //__ExtrudedContourInteractor_H