X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FmanualContour%2FmanualViewBaseContour.h;h=d773a7e3b9e4c63acf57ea4613dad1fa50c05c42;hb=4dcdcabb81ce9f9e9b7ccdb86a64995d7b18ea23;hp=1766e970c9585d300a6c272838f31b233e827943;hpb=414da1a291ff4c9d9a946536d3d219e4b5f9e6c2;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour/manualViewBaseContour.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour/manualViewBaseContour.h index 1766e97..d773a7e 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour/manualViewBaseContour.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour/manualViewBaseContour.h @@ -1,3 +1,28 @@ +/*# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Sant�) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ */ + #ifndef manualViewBaseContour_h #define manualViewBaseContour_h @@ -22,8 +47,8 @@ #include #include #include -#include "widgets/UtilVtk3DGeometriSelection.h" - +//#include "widgets/UtilVtk3DGeometriSelection.h" +#include "UtilVtk3DGeometriSelection.h" #include @@ -50,6 +75,11 @@ class creaMaracasVisu_EXPORT manualViewBaseContour{ + +//--------------------------------------------------- +// PUBLIC METHODS & ATTS +//--------------------------------------------------- + public: manualViewBaseContour(); virtual ~manualViewBaseContour(); @@ -59,7 +89,7 @@ public: virtual void Open(FILE *pFile); void AddPoint(); - void AddPoint( manualViewPoint * manualViewPoint ); + virtual void AddPoint( manualViewPoint * manualViewPoint ); void InsertPoint(int id); void DeleteContour(); void DeletePoint(int x, int y,int z); @@ -95,7 +125,7 @@ public: void UnSelectLstPoints(); void UnSelectAllPoints(); - void SetModel(manualContourModel *manContModel); + void SetModel(manualBaseModel *manContModel); void SetWxVtkBaseView(wxVtkBaseView *wxvtkbaseview); virtual void Refresh(); @@ -111,8 +141,8 @@ public: virtual bool ifTouchContour(int x,int y, int z); void UpdateColorActor(); - void SetRange(int range); - int GetRange(); + void SetRange(double range); + double GetRange(); void SetZ(int z); int GetZ(); @@ -122,7 +152,7 @@ public: virtual void MoveContour(int x, int y, int z); virtual void MoveContour(int horizontalUnits, int verticalUnits ); virtual void GetMinMax( double &minX,double &minY, double &minZ, double &maxX, double &maxY, double &maxZ ); - virtual void TransfromeCoordViewWorld(double &X, double &Y, double &Z, int type=2); + virtual void TransfromCoordViewWorld(double &X, double &Y, double &Z, int type=2); void ClearContour(); virtual void ClearPoint(int id); @@ -145,10 +175,11 @@ public: void RemoveCompleteContourActor(); virtual void AddSplineActor(); virtual void RemoveSplineActor(); - void AddControlPoints(); - void RemoveControlPoints(); + virtual void AddControlPoints(); + virtual void RemoveControlPoints(); void AddTextActor(); void RemoveTextActor(); + void InitTextActor(); virtual manualViewBaseContour * Clone(); void CopyAttributesTo( manualViewBaseContour *cloneObject ); @@ -158,48 +189,78 @@ public: virtual void ConstructVTKObjects(); -private: - int _range; - - wxVtkBaseView *_wxvtkbaseview; - bool _selected; - bool *_editable; - bool _posibleSelected; - bool _viewControlPoints; +//--------------------------------------------------- +// PRIVATE METHODS & ATTS +//--------------------------------------------------- +private: vtkPolyData *_pd; vtkActor *_contourVtkActor; vtkPolyDataMapper *_bboxMapper; - double _coulorEdit_r; - double _coulorEdit_g; - double _coulorEdit_b; - double _coulorNormal_r; - double _coulorNormal_g; - double _coulorNormal_b; - double _coulorSelection_r; - double _coulorSelection_g; - double _coulorSelection_b; - double _widthline; - void DeleteVtkObjects(); - virtual void RefreshText(); + +//--------------------------------------------------- +// PROTECTED METHODS & ATTS +//--------------------------------------------------- protected: + double _range; + + double _coulorEdit_r; + double _coulorEdit_g; + double _coulorEdit_b; + double _coulorNormal_r; + double _coulorNormal_g; + double _coulorNormal_b; + double _coulorSelection_r; + double _coulorSelection_g; + double _coulorSelection_b; + double _widthline; + + // + // Reference to VTKBaseView + // + wxVtkBaseView *_wxvtkbaseview; + + // + // Is the contour selected + // + bool _selected; + bool *_editable; + bool _posibleSelected; + bool _viewControlPoints; + // text - bool _show_text; - int _id_viewPoint_for_text; - vtkTextActor *_textActor; - manualContourModel *_manContModel; - vtkPoints *_pts; + bool _show_text; + int _id_viewPoint_for_text; + vtkTextActor *_textActor; + vtkTextActor *_textActor2; + + // + // Contour model + // + manualBaseModel *_manContModel; + + vtkPoints *_pts; // JSTG 25-02-08 -------------------------------------------- - int _sizePointsContour; + int _sizePointsContour; //----------------------------------------------------------- - std::vector _lstViewPoints; - double _spc[3]; + + // + // Control points list + // + std::vector _lstViewPoints; + + // + // Spacing + // + double _spc[3]; + + virtual void RefreshText(); };