00001 #ifndef manualViewPoints_h 00002 #define manualViewPoints_h 00003 00004 #include "manualViewBaseContour.h" 00005 #include "manualViewPoint.h" 00006 #include <vector> 00007 00008 00009 // -------------------------------------------------------------------------------------------- 00010 // Class that includes the functionality to manage some selected points like a new contour 00011 // @author RaC 09-09 00012 class creaMaracasVisu_EXPORT manualViewPoints: public manualViewBaseContour 00013 { 00014 00015 //--------------------------------------------------- 00016 // PUBLIC METHODS & ATTS 00017 //--------------------------------------------------- 00018 public: 00019 // 00020 // Class Constructor 00021 // 00022 manualViewPoints(); 00023 00024 // 00025 // Method to copy all attributes to the clone object references by parameter 00026 // @param *cloneObject - manualViewPoints Clone object 00028 void CopyAttributesTo( manualViewPoints *cloneObject ); 00029 00030 //--------------------------------------------------- 00031 // PUBLIC & VIRTUAL METHODS & ATTS 00032 //--------------------------------------------------- 00033 00035 // Class Destructor. Delete all elements in points copy list 00037 virtual ~manualViewPoints(); 00038 00039 // 00040 // Method to clone a manualViewPoints object 00041 // 00042 virtual manualViewPoints * Clone(); 00043 00044 // 00045 // Returns the contour type 00046 // Points Contour type := 7 00047 // @return type - int 00048 // 00049 virtual int GetType(); 00050 00051 // 00052 // Returns true if the point with the (x,y,z) window coordinates touch the contour 00053 // @param x - int 00054 // @param y - int 00055 // @param z - int 00056 // @return true if touch contour, false otherwise 00057 // 00058 virtual bool ifTouchContour(int x,int y, int z); 00059 00060 // 00061 // Refresh control points with the specified color, calls the RefreshContour method 00062 // and render the contour 00063 // 00064 virtual void Refresh(); 00065 00066 // 00067 // Refresh contour. In this case, it synchronizes the copy list with the control points list in order 00068 // to paint the point actors in the position assigned in the model points list 00069 // 00070 virtual void RefreshContour(); 00071 00072 // 00073 // Removes actor of the contour points, but no the control points. 00074 // 00075 virtual void RemoveSplineActor(); 00076 00077 // 00078 // Adds actor of the contour points, but no the control points. 00079 // 00080 virtual void AddSplineActor(); 00081 00082 // 00083 // Constructs VTKObjects. Only initializes text actor 00084 // 00085 virtual void ConstructVTKObjects(); 00086 00087 // 00088 // To move all the contour 00089 // 00090 //virtual void MoveContour(int x, int y, int z); 00091 00092 //--------------------------------------------------- 00093 // PRIVATE METHODS & ATTS 00094 //--------------------------------------------------- 00095 private: 00096 00097 // 00098 // Copy of the control points list. These are the points which are painted when the 00099 // contour is not selected 00100 // 00101 std::vector<manualViewPoint*> _copyViewPoints; 00102 00103 }; 00104 00105 #endif // manualViewPoints_h