]> Creatis software - creaVtk.git/blobdiff - bbtk_creaVtk_PKG/src/bbcreaVtkCreateMeshFromPoints.h
#3513 CleanMeshWithPatch
[creaVtk.git] / bbtk_creaVtk_PKG / src / bbcreaVtkCreateMeshFromPoints.h
index b103d3e3a1c8b79b478f8d4206a606fca524b1e0..f92f3428c5a8affa6d31268d41d79025bb7e9c98 100644 (file)
@@ -30,7 +30,7 @@ class bbcreaVtk_EXPORT CreateMeshFromPoints
   BBTK_DECLARE_INPUT(LstY,std::vector<double>);
   BBTK_DECLARE_INPUT(LstZ,std::vector<double>);
   BBTK_DECLARE_INPUT(LstIndexs,std::vector<int>);
-  BBTK_DECLARE_INPUT(OpenClose, bool);
+  BBTK_DECLARE_INPUT(CloseSurface, bool);
   BBTK_DECLARE_OUTPUT(Out,vtkPolyData*);
   BBTK_PROCESS(Process);
   void Process();
@@ -41,9 +41,11 @@ class bbcreaVtk_EXPORT CreateMeshFromPoints
        vtkCleanPolyData        *clean;
        vtkTriangleFilter       *triangle;
        
-       void CalcCentroid(double(&centroid)[3], int start, int end, int increment, int numPoints);
+       bool CalcValidCentroid(double(&centroid)[3], int start, int end, int increment, int numPoints);
+       bool CheckLinePointOrder();
+       bool isPointingCorrectly( int firstPointId, int secPointId, double(&centroid)[3], int contrPointId);
        void CloseContourBottom(bool uPointOrder);
-       void CloseContourSides(std::vector<int> lstIndexs, bool uPointOrder);
+       void CloseContourSides(std::vector<int> lstIndexs, bool uPointOrder, bool isClosedCont);
        void CloseOpenContourSurface(std::vector<int> lstIndexs);
 
 //===== 
@@ -61,7 +63,7 @@ BBTK_BEGIN_DESCRIBE_BLACK_BOX(CreateMeshFromPoints,bbtk::AtomicBlackBox);
   BBTK_INPUT(CreateMeshFromPoints,LstY,"List Y point",std::vector<double>,"");
   BBTK_INPUT(CreateMeshFromPoints,LstZ,"List Z point",std::vector<double>,"");
   BBTK_INPUT(CreateMeshFromPoints,LstIndexs,"Number of points by segment",std::vector<int>,"");
-  BBTK_INPUT(CreateMeshFromPoints,OpenClose,"(default false) Type of Contour: false=Open, true=Close",bool,"");
+  BBTK_INPUT(CreateMeshFromPoints,CloseSurface,"(default false) Add the caps to close the surface",bool,"");
 
   BBTK_OUTPUT(CreateMeshFromPoints,Out,"vtkPolyData",vtkPolyData*,"");