#ifndef __ContourExtractData_h_INCLUDED_H__ #define __ContourExtractData_h_INCLUDED_H__ #include "manualContourModel.h" #include "marTypes.h" //-------------------------------------------------------------------------- class creaMaracasVisu_EXPORT ContourExtractData { public: ContourExtractData(bool imagesResults=false); ~ContourExtractData(); //---------------------------------------------------------------------- void SetImage( vtkImageData* imagedata); void SetZtoBeAnalys( int z ); void SetLstManualContourModel( std::vector lstManConMod); void GetValuesInsideCrown( std::vector *pLstValue, std::vector *pLstValuePosX, std::vector *pLstValuePosY, std::vector *pLstValuePosZ); void CalculateImageResult(); vtkImageData *GetVtkImageValueResult(); vtkImageData *GetVtkImageMaskResult(); void Statistics( std::vector *inputLstValue, int grayRangeMin, int grayRangeMax, int *rCountRange, int *rsize, double *rmin, double *rmax, double *raverage, double *rstandardeviation); void SetTypeOperation(int type); private: bool okImagesResults; std::vector lstManConMod; int _typeOperation; int zImage; vtkImageData *imagedata; vtkImageData *imagedataValueResult; vtkImageData *imagedataMaskResult; bool isInside(int x, int y, int typeOperation ); void GetMinMaxPoint(int *minPoint, int *maxPoint, manualContourModel *manualcontourmodel ); void GetMinMaxPoint_Of_LstManConMod( int *minPoint, int *maxPoint); int AnalisisContourInside( int x, int y, manualContourModel *manualcontourmodel ); double GetDataValue(int x, int y, int z); void ResetImageResult(int z); void PutVtkImageDataResultValue( int x, int y,int z, double value ); void InitVtkImagesResult(); }; #endif // __ContourExtractData_h_INCLUDED_H__