X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk%2Fsrc%2FbbcreaMaracasVisuManualContourModel_Box.h;h=760f2b0c89f842d61cb3a0e63891e51254a6fb56;hb=39ac649f6a07b1646505a9d8c418f72bd76fc64e;hp=9e34c0a5fafed781a3c9445b3e8ec6186b24e4c0;hpb=3ffc04fea9ffbe065dd0141b2d213353e874b284;p=creaMaracasVisu.git diff --git a/bbtk/src/bbcreaMaracasVisuManualContourModel_Box.h b/bbtk/src/bbcreaMaracasVisuManualContourModel_Box.h index 9e34c0a..760f2b0 100644 --- a/bbtk/src/bbcreaMaracasVisuManualContourModel_Box.h +++ b/bbtk/src/bbcreaMaracasVisuManualContourModel_Box.h @@ -19,16 +19,52 @@ class bbcreaMaracasVisu_EXPORT ManualContourModel_Box // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost) //===== BBTK_DECLARE_INPUT(Type,int); + BBTK_DECLARE_INPUT(DoubleContour,int); BBTK_DECLARE_INPUT(OpenClose,bool); + BBTK_DECLARE_INPUT(OpenClose2,bool); BBTK_DECLARE_INPUT(NbPoints,int); + + BBTK_DECLARE_INPUT(LstIndexsIn,std::vector); + BBTK_DECLARE_INPUT(LstControlPointsX,std::vector); BBTK_DECLARE_INPUT(LstControlPointsY,std::vector); BBTK_DECLARE_INPUT(LstControlPointsZ,std::vector); + + BBTK_DECLARE_OUTPUT(LstContourPointsX,std::vector); BBTK_DECLARE_OUTPUT(LstContourPointsY,std::vector); BBTK_DECLARE_OUTPUT(LstContourPointsZ,std::vector); + BBTK_DECLARE_OUTPUT(LstIndexsOut,std::vector); BBTK_PROCESS(Process); void Process(); + + +void ClockwisePoints( std::vector *lstInX, + std::vector *lstInY, + std::vector *lstOuZ, + std::vector *lstIndexsIn ); + +void ShiftValues( std::vector *lstInX, + std::vector *lstInY, + std::vector *lstOuZ, + std::vector *lstIndexsIn ); + + + void ProcessBySegment( + int Type, + int &iGeneral, int sizeSegment, + std::vector *lstInX,std::vector *lstInY, std::vector *lstInZ, + std::vector *lstOutX,std::vector *lstOutY, std::vector *lstOutZ, + std::vector *lstIndexsOut, + bool open ); + +void RedistributionPoints( std::vector *lstOutX, + std::vector *lstOutY, + std::vector *lstOutZ, + std::vector *lstIndexsOut ); + + + //===== // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost) //===== @@ -40,9 +76,13 @@ BBTK_BEGIN_DESCRIBE_BLACK_BOX(ManualContourModel_Box,bbtk::AtomicBlackBox); BBTK_DESCRIPTION("No Description."); BBTK_CATEGORY("empty"); - BBTK_INPUT(ManualContourModel_Box,Type,"(1 default) 1=spline, 2=rectangle, 3=circle, 4=bullEye, 6=Line, 7=points, 8=rotationTool, 10=polugon, 12=Spline3D",int,""); + BBTK_INPUT(ManualContourModel_Box,Type,"(1 default) 1=spline, 2=rectangle, 3=circle, 4=bullEye, 6=Line, 7=points, 8=rotationTool, 10=polygon, 12=Spline3D",int,""); + BBTK_INPUT(ManualContourModel_Box,DoubleContour,"(0 default) 0=Simple, 1=Double (This is used to construct surface, use LstIndexesIn)",int,""); BBTK_INPUT(ManualContourModel_Box,OpenClose,"(false default) false=open, true=close",bool,""); + BBTK_INPUT(ManualContourModel_Box,OpenClose2,"(false default) false=open, true=close. Used with the DoubleContour option.",bool,""); BBTK_INPUT(ManualContourModel_Box,NbPoints,"(100 default) Number of points int the spline",int,""); + BBTK_INPUT(ManualContourModel_Box,LstIndexsIn,"Lst number of points by segment",std::vector,""); + BBTK_INPUT(ManualContourModel_Box,LstControlPointsX,"List of control points",std::vector,""); BBTK_INPUT(ManualContourModel_Box,LstControlPointsY,"List of control points",std::vector,""); BBTK_INPUT(ManualContourModel_Box,LstControlPointsZ,"List of control points",std::vector,""); @@ -50,6 +90,7 @@ BBTK_BEGIN_DESCRIBE_BLACK_BOX(ManualContourModel_Box,bbtk::AtomicBlackBox); BBTK_OUTPUT(ManualContourModel_Box,LstContourPointsX,"List of points in the contour",std::vector,""); BBTK_OUTPUT(ManualContourModel_Box,LstContourPointsY,"List of points in the contour",std::vector,""); BBTK_OUTPUT(ManualContourModel_Box,LstContourPointsZ,"List of points in the contour",std::vector,""); + BBTK_OUTPUT(ManualContourModel_Box,LstIndexsOut,"Lst number of points by segment",std::vector,""); BBTK_END_DESCRIBE_BLACK_BOX(ManualContourModel_Box); //=====