Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

mitkPointSetRegistrationFilter.h

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 __mitkPointSetRegistrationFilter_h
00012 #define __mitkPointSetRegistrationFilter_h
00013 
00014 #include "mitkRegistrationFilter.h"
00015 #include "mitkPointSetEstimator.h"
00016 #include "mitkPointSetMetric.h"
00017 #include "mitkPointSet.h"
00018 #include "mitkRCPtr.h"
00019 
00020 
00029 
00030 class MITK_REGISTRATION_API mitkPointSetRegistrationFilter : public mitkRegistrationFilter
00031 {
00032 public:
00033     MITK_TYPE(mitkPointSetRegistrationFilter,mitkRegistrationFilter)
00034     virtual void PrintSelf(ostream& os);  
00035 
00039     mitkPointSetRegistrationFilter();
00040 
00045     void SetFixedPointSet(mitkPointSet *fixedPointSet);
00046 
00051     void SetMovingPointSet(mitkPointSet *movingPointSet);
00052 
00058     void SetFixedPointSet(vector<double> *fixedPointSet, unsigned int dim = 3);
00059 
00065     void SetMovingPointSet(vector<double> *movingPointSet, unsigned int dim = 3);
00066 
00073     void SetFixedPointSet(double* fixedPointSet, unsigned int arraylength, unsigned int dim = 3);
00074 
00081     void SetMovingPointSet(double* movingPointSet, unsigned int arraylength , unsigned int dim = 3);
00082 
00083     mitkPointSet* GetFixedPointSet() { return m_FixedPointSet; }
00084 
00085     mitkPointSet* GetMovingPointSet() { return m_MovingPointSet; }
00086 
00087     mitkPointSet* GetRegisteredPointset();
00088 
00093     unsigned int GetNumberOfFixedPoints() {return m_NumberOfFixedPoints;}
00094 
00099     unsigned int GetNumberOfMovingPoints() {return m_NumberOfMovingPoints;}
00100 
00105     virtual mitkTransform* GetTransform();
00110     virtual mitkMetric* GetMetric();
00111 
00116     virtual mitkOptimizer* GetOptimizer();
00117 
00122     mitkPointSetEstimator* GetEstimator();
00123 
00128     void SetEstimator(mitkPointSetEstimator* estimator) { m_Estimator = estimator; }
00129 
00130     mitkPointSetEstimator* GetSuitableEstimator(int tfMode);
00131 
00132 protected:
00133     virtual ~mitkPointSetRegistrationFilter();
00134     virtual bool Execute();
00135     virtual bool ProcessBeforeRegistration();
00136 
00137     mitkPointSetEstimator*      m_Estimator;
00138 
00139     mitkPointSet*               m_FixedPointSet;
00140     mitkPointSet*               m_MovingPointSet;
00141     unsigned int                m_NumberOfFixedPoints;
00142     unsigned int                m_NumberOfMovingPoints;
00143     int                         m_PointSetDimension;
00144 
00145     bool                        m_FlagUseOptimizer;
00146 
00147 private:
00148     mitkPointSetRegistrationFilter(const mitkPointSetRegistrationFilter&);
00149     void operator=(const mitkPointSetRegistrationFilter&);
00150 };
00151 
00152 
00153 //#define DEFINED_mitkPointSetRegistrationFilter
00154 
00155 
00156 
00157 #endif
00158 
00159 

Generated on Tue Feb 25 15:00:37 2014 for MITK (Medical Imaging ToolKit) by  doxygen 1.4.3