]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/WidgetShowNPoints.h
#3096 creaMaracasVisu Feature New Normal - Box ShowNPoints_Reset
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / WidgetShowNPoints.h
diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/WidgetShowNPoints.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/WidgetShowNPoints.h
new file mode 100644 (file)
index 0000000..05fa5f1
--- /dev/null
@@ -0,0 +1,88 @@
+
+
+#ifndef __WidgetShowNPoints_h_INCLUDED__
+#define __WidgetShowNPoints_h_INCLUDED__
+
+
+
+
+#include "ModelShowNPoints.h"
+
+#include <wx/panel.h>
+#include <wx/textctrl.h>
+#include <wx/slider.h>
+#include <wx/stattext.h>
+#include <vtkRenderer.h>
+#include <vtkTextActor3D.h>
+#include <vtkSphereSource.h>
+
+
+class WidgetShowNPoints : public wxPanel
+{
+  public:
+         WidgetShowNPoints( wxWindow *parent , int type );
+         ~WidgetShowNPoints(); 
+         void OnAddPoint(wxCommandEvent &event);   
+         void OnInsertPoint (wxCommandEvent& event);//CFT
+         void OnSetPoint(wxCommandEvent& event);
+         void OnRenamePoint(wxCommandEvent& event);
+         void OnErasePoint(wxCommandEvent& event);
+         void OnEraseLastPoint(wxCommandEvent &event); 
+         void OnDeleteAllPoints(wxCommandEvent &event);   
+         void OnSavePoints(wxCommandEvent &event);   
+         void OnLoadPoints(wxCommandEvent &event);
+
+         virtual void UpdatePoints(wxCommandEvent &event);
+         
+         void RefreshPoint(int id);
+         
+         void SetColour(std::vector<double> colour);
+         void SetOpacity(double opacity);
+         void SetRadio(double radio);
+         void SetImage(vtkImageData *image);
+         void SetRenderer(vtkRenderer *renderer);
+         void SetReferencePoint(std::vector<int> point);
+
+         void AddPoint(int x, int y, int z, std::string label);
+         void InsertPoint(int x, int y, int z, std::string label);//CFT
+         void DeleteAllPoints();
+
+         ModelShowNPoints* GetModelShowNPoints();
+         void RefreshPoints();
+         void AddVtkPoint();
+         void SetInitLstPoints( std::vector<int> initLstPointsX,  std::vector<int> initLstPointsY, std::vector<int> initLstPointsZ, std::vector<std::string> initLstLabels );
+
+               void SetType(int type);
+               int  GetType();
+
+               double GetRadio();
+               double GetOpacity();
+
+  protected:
+         virtual void                                  SetOutputBox();
+
+  private:
+         void                                  ErasePoint(int id);
+         vtkRenderer                   *renderer;
+         std::vector<vtkActor*>        lstActorsSphere;//NTU changed from prop3D to Actor
+         std::vector<vtkTextActor3D*>  lstActorsText;
+         //NTU: For updating points
+         std::vector<vtkSphereSource*> lstSourceSphere;
+         std::vector<double>                   mcolour;
+         wxStaticText                          *askPointLabel;
+         wxTextCtrl                            *textCtrl;
+         wxStaticText                          *txtNrPoints;
+         wxSlider                              *sdrOpacity;
+         wxSlider                              *sdrRadio;
+         ModelShowNPoints                              *mmodelShowNPoints;
+         int                                                   mtype;
+         double                                mopacity;
+};
+
+
+
+
+
+
+#endif // __WidgetShowNPoints_h_INCLUDED__
+