ContourPropagation.h

Go to the documentation of this file.
00001 #ifndef __ContourPropagation_h_INCLUDED__
00002 #define __ContourPropagation_h_INCLUDED__
00003 
00004 #include "Propagation.h"
00005 #include "ExtractControlPoints2D.h"
00006 #include "vtkImageData.h"
00007 #include "vectorFunctions.h"
00008 #include "marTypes.h"
00009 
00010 class creaMaracasVisu_EXPORT ContourPropagation 
00011 {
00012         public:
00013                 ContourPropagation();
00014                 ~ContourPropagation();
00015                 void resetAppend                                ( );
00016                 void appendContour                              ( std::vector<double>*InX, 
00017                                                                                   std::vector<double>*InY, 
00018                                                                                   std::vector<double>*InZ );
00019                 void GetContour                                 ( int id, std::vector<double>*vecX, 
00020                                                                                                   std::vector<double>*vecY, 
00021                                                                                                   std::vector<double>*vecZ );
00022                 //AUTOMATIC METHOD
00023                 void GetInitialControlPoints    ( int id, std::vector<double>*vecX, 
00024                                                                                                   std::vector<double>*vecY, 
00025                                                                                                   std::vector<double>*vecZ);
00026                 void GetControlPoints                   ( int id, std::vector<double>*vecX, 
00027                                                                                                   std::vector<double>*vecY, 
00028                                                                                                   std::vector<double>*vecZ );
00029 
00030                 //SAMPLING METHOD
00031                 void CalculeSplinePropagation();
00032                 void GetControlPoints                   ( int id, double samp,
00033                                                                                   std::vector<double>*vecX, 
00034                                                                                   std::vector<double>*vecY, 
00035                                                                                   std::vector<double>*vecZ );
00036 
00037                 int  FindIdWithZ                                ( double z);
00038 
00039 
00040                 void getMaxMinZ                                 ( double *minz, double *maxz);
00041                 void setInterpolationNumber             ( int num );
00042 
00043 
00044         //TEST CLASSES FOR BBTK
00045                 void appendContour                              ( );
00046                 vtkImageData* GetKeyContours    ( std::vector<double>*vecX, 
00047                                                                                   std::vector<double>*vecY, 
00048                                                                                   std::vector<double>*vecZ, 
00049                                                                                   std::vector<int>*vecS );
00050 
00051                 bool ifSliceKeyContourExist(int slice);
00052 
00053 
00054         private:
00055                 bool mustOrderAppend( );
00056                 void orderAppend( );
00057                 void OrdenarSliceKeyContourVec();
00058                 
00059 
00060                 PropContour                                     *_propc;
00061                 AutoControlPoints                       *_autoc;
00062                 ExtractControlPoints2D          *_ext2D;
00063 
00064                 std::vector<double>                     _InX;
00065                 std::vector<double>                     _InY;
00066                 std::vector<double>                     _InZ;
00067                 std::vector<int>                        _InS;
00068                 std::vector<int>                        _sliceKeyContourVec;
00069 
00070                 std::vector<Vector>                     _planevector;
00071 };
00072 
00073 #endif //__ContourPropagation_h_INCLUDED__
00074  
00075  

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1