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 MITKDRAWOPERATION_H 00020 #define MITKDRAWOPERATION_H 00021 00022 #include <mitkCommon.h> 00023 #include "MitkExtExports.h" 00024 #include <mitkOperation.h> 00025 #include <mitkVector.h> 00026 #include <mitkImage.h> 00027 #include <mitkSeedsImage.h> 00028 00029 namespace mitk { 00030 00031 //##Documentation 00032 //## @brief DrawOperation, that handles all actions on seeds. 00033 //## 00034 //## Stores everything for adding and deleting seeds. 00035 //## @ingroup Undo 00036 class MitkExt_EXPORT DrawOperation : public Operation 00037 { 00038 public: 00039 //##Documentation 00040 //##@brief DrawOperation, that handles all actions on seeds. 00041 //## 00042 //## @param operationType is the type of that operation (see mitkOperation.h; e.g. move or add; Information for StateMachine::ExecuteOperation()); 00043 //## @param point is the information of the seedpoint to add to the seedsimage 00044 //## @param last_point is the information of the point added before 00045 //## @param draw_state represents the seeds type e.g foreground or background seeds 00046 //## @param radius is the radius of seeds 00047 DrawOperation(OperationType operationType, Point3D point, Point3D last_point, int draw_state, int radius); 00048 00049 virtual ~DrawOperation(); 00050 00051 Point3D GetPoint(); 00052 00053 Point3D GetLastPoint(); 00054 00055 int GetDrawState(); 00056 00057 int GetRadius(); 00058 00059 SeedsImage::Pointer GetSeedsImage(); 00060 00061 SeedsImage::Pointer GetLastSeedsImage(); 00062 00063 private: 00064 Point3D m_Point; 00065 Point3D m_LastPoint; 00066 00067 int m_DrawState; 00068 int m_Radius; 00069 00070 SeedsImage::Pointer m_SeedsImage; 00071 SeedsImage::Pointer m_LastSeedsImage; 00072 00073 }; 00074 }//namespace mitk 00075 #endif /* MITKDRAWOPERATION_H*/ 00076 00077