00001 /*========================================================================= 00002 00003 Program: 3DMed 00004 Date: $Date: 2014-02-25 18:30:00 +0800 $ 00005 Version: $Version: 4.6.0 $ 00006 Copyright: MIPG, Institute of Automation, Chinese Academy of Sciences 00007 00008 =========================================================================*/ 00009 00010 00011 #ifndef __mitkScaleTransform_h 00012 #define __mitkScaleTransform_h 00013 00014 #include "mitkTransform.h" 00015 00016 00036 class MITK_REGISTRATION_API mitkScaleTransform : public mitkTransform 00037 { 00038 public: 00039 MITK_TYPE(mitkScaleTransform, mitkTransform) 00040 virtual void PrintSelf(ostream &os); 00041 00045 mitkScaleTransform(); 00046 00050 mitkScaleTransform(unsigned int dim); 00051 00056 virtual void SetTransformMode(int transformMode, unsigned int dim); 00057 00063 const MatrixType & GetJacobian(const VectorParameterType& inPoint); 00064 00069 virtual void ConvertTransformMaxtrixToVector(); 00070 00076 void GetScales(ScalarParameterType &sx, ScalarParameterType &sy); 00077 00084 void GetScales(ScalarParameterType &sx, ScalarParameterType &sy, ScalarParameterType &sz); 00085 00086 protected: 00087 virtual ~mitkScaleTransform(); 00088 virtual void ComputeTransformMatrix(); 00089 virtual bool Execute(); 00090 00091 private: 00092 mitkScaleTransform(const mitkScaleTransform&); 00093 void operator = (const mitkScaleTransform&); 00094 }; 00095 00096 00097 //#define DEFINED_mitkScaleTransform 00098 00099 00100 00101 #endif 00102