ContourCrownWidget.h

Go to the documentation of this file.
00001 #ifndef __ContourCrownWidget_h_INCLUDED_H__
00002 #define __ContourCrownWidget_h_INCLUDED_H__
00003 
00004 #include "marTypes.h"
00005 #include "manualContourControler.h"
00006 #include "manualContourModel.h"
00007 #include "manualViewContour.h"
00008 #include "manualRoiControler.h"
00009 #include "manualViewRoi.h"
00010 #include "mBarRange.h"
00011 
00012 //JSTG_14-06-08--------------------
00013 #include "ContourPropagation.h"
00014 //---------------------------------
00015   
00016 
00017 
00018   //--------------------------------------------------------------------------
00019   class creaMaracasVisu_EXPORT wxMaracasCoutourTool : public wxPanel
00020   {
00021   public:
00022         wxMaracasCoutourTool( wxWindow *parent, wxVtkBaseView *wxvtkbaseview, vtkImageData* imagedata);
00023     ~wxMaracasCoutourTool();
00024         void OnContourA(wxCommandEvent &event);   
00025         void OnContourB(wxCommandEvent &event);   
00026         void OnContourAB(wxCommandEvent &event);   
00027     void ConfigureVTK();
00028 
00029         void GetValuesInsideCrown(      std::vector<double> *pLstValue,
00030                                                                 std::vector<double> *pLstValuePosX,
00031                                                                 std::vector<double> *pLstValuePosY,
00032                                                                 std::vector<double> *pLstValuePosZ);
00033 
00034         wxVtkBaseView *GetWxVtkBaseView();
00035 //EED   void ProcessOutputs();
00036         vtkImageData *GetVtkImageValueResult();
00037         vtkImageData *GetVtkImageMaskResult();
00038 
00039 //JSTG 26-02-08 --------------------------------------------------------------------------------------------
00040         void GetSplinePoints    (       std::vector<double> *pLstContourX,
00041                                                                 std::vector<double> *pLstContourY,
00042                                                                 std::vector<double> *pLstContourZ  );
00043 
00044         void SetControlPoints   (       std::vector<double> *InVectorX,
00045                                                                 std::vector<double> *InVectorY, 
00046                                                                 std::vector<double> *InVectorZ );
00047 //JSTG 21-03-08 ----------------------------------------------
00048         void OnSaveContour              ( wxCommandEvent &event );
00049         void OnSaveControlPoints( wxCommandEvent &event );
00050 //JSTG 11-04-08 ----------------------------------------------
00051     void EreaseLastContour      ( wxCommandEvent& event );
00052         void EreaseLastCP               ( wxCommandEvent& event );
00053 //----------------------------------------------------------------------------------------------------------
00054 
00055   private:
00056         mBarRange               *mbarrange;
00057 //EED   ContourCrown    *mbbtkContourCrown;
00058         vtkImageData    *imagedata;
00059         vtkImageData    *imagedataValueResult;
00060         vtkImageData    *imagedataMaskResult;
00061         wxVtkBaseView   *wxvtkbaseview;
00062 
00063 //JSTG 26-02-08 ------------------------------------------
00064         std::vector<double>             _tempCX;
00065         std::vector<double>             _tempCY;
00066         std::vector<int>                _tempCZ;
00067         std::vector<int>                _SizesC;
00068         std::vector<double>             _tempCPX;
00069         std::vector<double>             _tempCPY;
00070         std::vector<int>                _tempCPZ;
00071         std::vector<int>                _SizesCP;
00072         std::vector<double>             *pControlVectorX;
00073         std::vector<double>             *pControlVectorY;
00074         std::vector<double>             *pControlVectorZ;
00075         int _zz;
00076         manualPoint                             *_mpoint;
00077 //--------------------------------------------------------
00078 //JSTG_14-06-08-------------------------------------------
00079         ContourPropagation              *_contprop;
00080 //--------------------------------------------------------
00081 
00082         manualContourControler  *_manContourControl_1;
00083         manualContourModel              *_mContourModel_1;
00084         manualViewContour               *_mViewContour_1;
00085 
00086         manualContourControler  *_manContourControl_2;
00087         manualContourModel              *_mContourModel_2;
00088         manualViewContour               *_mViewContour_2;
00089 
00090         manualRoiControler              *_manRoiControl;
00091         manualContourModel              *_mContourModel;
00092         manualViewRoi                   *_mViewRoi;
00093 
00094 
00095         bool isInside(int x, int y);
00096         void GetMinMaxPoint(int *minPoint, int *maxPoint);
00097         void GetMinMaxPoint(int *minPoint, 
00098                                                 int *maxPoint, 
00099                                                 manualViewBaseContour *manualviewbaseecontour,
00100                                                 manualContourModel *manualcontourmodel );
00101         int AnalisisContourInside(      int x, 
00102                                                                 int y, 
00103                                                                 manualViewBaseContour *manualviewbaseecontour,
00104                                                                 manualContourModel *manualcontourmodel );
00105         double GetDataValue(int x, int y);
00106         void ResetImageResult();
00107         void PutVtkImageDataResultValue( int x, int y, double value );
00108         void InitVtkImagesResult();
00109 
00110 
00111   };
00112 
00113 
00114 #endif  // __ContourCrownWidget_h_INCLUDED_H__
00115 

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1