00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date: 2008-04-14 19:45:53 +0200 (Mo, 14 Apr 2008) $ 00006 Version: $Revision: 14081 $ 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 MITKCLIPPINGPROPERTY_H_HEADER_INCLUDED 00020 #define MITKCLIPPINGPROPERTY_H_HEADER_INCLUDED 00021 00022 #include "mitkCommon.h" 00023 #include "mitkBaseProperty.h" 00024 #include "mitkVector.h" 00025 00026 #include <itkConfigure.h> 00027 00028 #include <string> 00029 00030 00031 namespace mitk { 00032 00038 class MITK_CORE_EXPORT ClippingProperty : public BaseProperty 00039 { 00040 public: 00041 mitkClassMacro(ClippingProperty, BaseProperty); 00042 typedef std::string ValueType; 00043 00044 itkNewMacro( ClippingProperty ); 00045 mitkNewMacro2Param( ClippingProperty, 00046 const Point3D &, const Vector3D & ); 00047 00048 bool GetClippingEnabled() const; 00049 void SetClippingEnabled( bool enabled ); 00050 00051 const Point3D &GetOrigin() const; 00052 void SetOrigin( const Point3D &origin ); 00053 00054 const Vector3D &GetNormal() const; 00055 void SetNormal( const Vector3D &normal ); 00056 00057 virtual bool operator==(const BaseProperty& property ) const; 00058 virtual std::string GetValueAsString() const; 00059 00060 00061 protected: 00062 00063 bool m_ClippingEnabled; 00064 00065 Point3D m_Origin; 00066 Vector3D m_Normal; 00067 00068 ClippingProperty(); 00069 ClippingProperty( const Point3D &origin, const Vector3D &normal ); 00070 00071 }; 00072 00073 } // namespace mitk 00074 00075 #endif /* MITKCLIPPINGPROPERTY_H_HEADER_INCLUDED */