]> Creatis software - creaMaracasVisu.git/commitdiff
#3533 Update Curent contour and actual point ShowNPoints in Undo Redo
authorEduardo DAVILA <davila@creatis.insa-lyon.fr>
Wed, 2 Aug 2023 15:41:36 +0000 (17:41 +0200)
committerEduardo DAVILA <davila@creatis.insa-lyon.fr>
Wed, 2 Aug 2023 15:41:36 +0000 (17:41 +0200)
20 files changed:
bbtk/bbs/boxes/FreePlane.bbg
bbtk/bbs/boxes/FreePlane.bbs
bbtk/bbs/boxes/Mesh_Application.bbg
bbtk/bbs/boxes/Mesh_Application.bbs
bbtk/bbs/boxes/Mesh_tool_ApplyCut.bbg
bbtk/bbs/boxes/Mesh_tool_ApplyCut.bbs
bbtk/bbs/boxes/Mesh_tool_ApplyPatch.bbg
bbtk/bbs/boxes/Mesh_tool_ApplyPatch.bbs
bbtk/bbs/boxes/Mesh_tool_ApplyPatchSimple.bbg
bbtk/bbs/boxes/Mesh_tool_ApplyPatchSimple.bbs
bbtk/bbs/boxes/Mesh_tool_ApplySurface.bbg
bbtk/bbs/boxes/Mesh_tool_ApplySurface.bbs
bbtk/src/bbcreaMaracasVisuTransformWidget2.cxx
lib/maracasVisuLib/src/interface/wxWindows/widgets/ViewShowNPoints.cxx
lib/maracasVisuLib/src/interface/wxWindows/widgets/ViewShowNPoints.h
lib/maracasVisuLib/src/interface/wxWindows/widgets/WidgetShowNPoints.cxx
lib/maracasVisuLib/src/interface/wxWindows/widgets/WidgetShowNPoints.h
lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour/manualContourBaseControler.cpp
lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour/manualViewBaseContour.cpp
lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour/manualViewContour.cpp

index b5bab7651269a8ac59e403fc6a35d20bfeb5c30a..772f3af18890a5e88587bcf4b342f8c1c170f6cc 100644 (file)
@@ -10,10 +10,18 @@ AUTHOR:Author ??
 COMPLEXBOX:TRUE
 COMPLEXBOXNAME:FreePlane
 PACKAGENAME:creaMaracasVisu
 COMPLEXBOX:TRUE
 COMPLEXBOXNAME:FreePlane
 PACKAGENAME:creaMaracasVisu
-COMPLEXOUTPUTS:1
+COMPLEXOUTPUTS:3
 COMPLEX_PORT
 widgetOut
 COMPLEX_PORT
 widgetOut
--62.292736:-23.904606:-900.000000
+-62.602729:-39.249279:-900.000000
+FIN_COMPLEX_PORT
+COMPLEX_PORT
+actualPoint
+-77.515256:-39.520234:-900.000000
+FIN_COMPLEX_PORT
+COMPLEX_PORT
+transform
+-86.142372:-39.145142:-900.000000
 FIN_COMPLEX_PORT
 COMPLEXINPUTS:5
 COMPLEX_PORT
 FIN_COMPLEX_PORT
 COMPLEXINPUTS:5
 COMPLEX_PORT
@@ -36,18 +44,18 @@ COMPLEX_PORT
 wxvtkbaseview3
 -88.303489:121.573553:-900.000000
 FIN_COMPLEX_PORT
 wxvtkbaseview3
 -88.303489:121.573553:-900.000000
 FIN_COMPLEX_PORT
-BOXES:19
+BOXES:20
 BOX
 vtk:ImageVtkProperties:Box00
 ISEXEC:FALSE
 BOX
 vtk:ImageVtkProperties:Box00
 ISEXEC:FALSE
--38.467279:72.794940:-900.000000
--15.932279:70.294940:-900.000000
+-32.329410:83.365715:-900.000000
+-9.794410:80.865715:-900.000000
 FIN_BOX
 BOX
 wx:LayoutLine:Box01
 ISEXEC:FALSE
 FIN_BOX
 BOX
 wx:LayoutLine:Box01
 ISEXEC:FALSE
--63.373517:-14.619552:-900.000000
--30.053517:-17.119552:-900.000000
+-63.683510:-29.964225:-900.000000
+-30.363510:-32.464225:-900.000000
 PORT
 Orientation:"V"
 PORT
 PORT
 Orientation:"V"
 PORT
@@ -56,8 +64,8 @@ FIN_BOX
 BOX
 creaMaracasVisu:SliceImage:Box02
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:SliceImage:Box02
 ISEXEC:FALSE
--80.494473:39.228278:-900.000000
--58.769473:36.728278:-900.000000
+-84.927379:60.199332:-900.000000
+-63.202379:57.699332:-900.000000
 PORT
 InterpolationMode:"1"
 PORT
 PORT
 InterpolationMode:"1"
 PORT
@@ -70,20 +78,20 @@ FIN_BOX
 BOX
 creaVtk:TransformVector:Box03
 ISEXEC:FALSE
 BOX
 creaVtk:TransformVector:Box03
 ISEXEC:FALSE
--81.471694:78.694065:-900.000000
--59.261694:76.194065:-900.000000
+-82.665169:85.343423:-900.000000
+-60.455169:82.843423:-900.000000
 PORT
 PORT
-InX:"1  0  0"
+InX:"1   0  0"
 PORT
 PORT
-InY:"0 1   0"
+InY:"0  1   0"
 PORT
 PORT
-InZ:"0 0 1"
+InZ:"0  0   1"
 FIN_BOX
 BOX
 creaMaracasVisu:ImageActor:Box04
 ISEXEC:FALSE
 FIN_BOX
 BOX
 creaMaracasVisu:ImageActor:Box04
 ISEXEC:FALSE
--74.810398:8.024573:-900.000000
--53.015398:5.524573:-900.000000
+-78.731815:15.867406:-900.000000
+-56.936815:13.367406:-900.000000
 PORT
 InterpolationMode:"1"
 PORT
 PORT
 InterpolationMode:"1"
 PORT
@@ -92,26 +100,26 @@ FIN_BOX
 BOX
 vtk:Transform:Box06
 ISEXEC:FALSE
 BOX
 vtk:Transform:Box06
 ISEXEC:FALSE
--52.487360:57.978654:-900.000000
--30.932360:55.478654:-900.000000
+-52.657856:54.398230:-900.000000
+-31.102856:51.898230:-900.000000
 FIN_BOX
 BOX
 creaVtk:ConcatTransform:Box07
 ISEXEC:FALSE
 FIN_BOX
 BOX
 creaVtk:ConcatTransform:Box07
 ISEXEC:FALSE
--59.880124:50.051963:-900.000000
--37.600124:47.551963:-900.000000
+-57.032835:42.993414:-900.000000
+-34.752835:40.493414:-900.000000
 FIN_BOX
 BOX
 std:ConcatStrings:Box08
 ISEXEC:FALSE
 FIN_BOX
 BOX
 std:ConcatStrings:Box08
 ISEXEC:FALSE
--61.804071:72.216477:-900.000000
--39.044071:69.716477:-900.000000
+-59.468271:72.710916:-900.000000
+-36.708271:70.210916:-900.000000
 FIN_BOX
 BOX
 std:ConcatStrings:Box09
 ISEXEC:FALSE
 FIN_BOX
 BOX
 std:ConcatStrings:Box09
 ISEXEC:FALSE
--83.220618:67.537653:-900.000000
--60.460618:65.037653:-900.000000
+-85.948560:72.652544:-900.000000
+-63.188560:70.152544:-900.000000
 PORT
 In2:"  "
 PORT
 PORT
 In2:"  "
 PORT
@@ -120,8 +128,8 @@ FIN_BOX
 BOX
 creaVtk:ScalarsToColors:Box10
 ISEXEC:FALSE
 BOX
 creaVtk:ScalarsToColors:Box10
 ISEXEC:FALSE
--98.732708:19.851377:-900.000000
--76.572708:17.351377:-900.000000
+-115.782345:24.454779:-900.000000
+-93.622345:21.954779:-900.000000
 PORT
 BelowAboveRangeTransparence:"false"
 PORT
 PORT
 BelowAboveRangeTransparence:"false"
 PORT
@@ -130,14 +138,14 @@ FIN_BOX
 BOX
 vtk:vtkImageDataPointerRelay:Box11
 ISEXEC:FALSE
 BOX
 vtk:vtkImageDataPointerRelay:Box11
 ISEXEC:FALSE
--37.376549:80.928257:-900.000000
--14.166549:78.428257:-900.000000
+-31.920665:88.941586:-900.000000
+-8.710665:86.441586:-900.000000
 FIN_BOX
 BOX
 std:MagicBox:Box12
 ISEXEC:FALSE
 FIN_BOX
 BOX
 std:MagicBox:Box12
 ISEXEC:FALSE
--9.582458:51.091206:-900.000000
-12.017542:48.591206:-900.000000
+-3.274092:50.238724:-900.000000
+18.325908:47.738724:-900.000000
 FIN_BOX
 BOX
 creaMaracasVisu:wxVtkBaseView_Info:Box13
 FIN_BOX
 BOX
 creaMaracasVisu:wxVtkBaseView_Info:Box13
@@ -150,16 +158,16 @@ FIN_BOX
 BOX
 wx:CheckBox:Box14
 ISEXEC:FALSE
 BOX
 wx:CheckBox:Box14
 ISEXEC:FALSE
--41.816958:17.966024:-900.000000
--20.186958:15.466024:-900.000000
+-54.604186:35.015661:-900.000000
+-32.974186:32.515661:-900.000000
 PORT
 Title:"Pivot plane"
 FIN_BOX
 BOX
 creaMaracasVisu:DrawAxisTree3D:Box15
 ISEXEC:FALSE
 PORT
 Title:"Pivot plane"
 FIN_BOX
 BOX
 creaMaracasVisu:DrawAxisTree3D:Box15
 ISEXEC:FALSE
--21.443228:8.210101:-900.000000
-6.596772:5.710101:-900.000000
+-33.889463:16.223430:-900.000000
+-5.849463:13.723430:-900.000000
 PORT
 Colour:"1 0 0    1 1 0    0 0 1"
 PORT
 PORT
 Colour:"1 0 0    1 1 0    0 0 1"
 PORT
@@ -169,11 +177,11 @@ LineWidth:"2"
 PORT
 lstIndexs:"2 2 2"
 PORT
 PORT
 lstIndexs:"2 2 2"
 PORT
-lstPointX:"0 20       0 0           0 0"
+lstPointX:"0 20       0 0            0 0"
 PORT
 PORT
-lstPointY:"0 0         0  80       0 0"
+lstPointY:"0 0         0  160       0 0"
 PORT
 PORT
-lstPointZ:"0 0         0  0         0 20"
+lstPointZ:"0 0         0  0           0 20"
 FIN_BOX
 BOX
 creaMaracasVisu:TransformWidget2:Box16
 FIN_BOX
 BOX
 creaMaracasVisu:TransformWidget2:Box16
@@ -186,26 +194,34 @@ FIN_BOX
 BOX
 std:MathOperationVector:Box17
 ISEXEC:FALSE
 BOX
 std:MathOperationVector:Box17
 ISEXEC:FALSE
--48.533350:63.839056:-900.000000
--24.013350:61.339056:-900.000000
+-40.349524:60.429129:-900.000000
+-15.829524:57.929129:-900.000000
 PORT
 Type:"2"
 FIN_BOX
 BOX
 vtk:UpdateRender:Box19
 ISEXEC:FALSE
 PORT
 Type:"2"
 FIN_BOX
 BOX
 vtk:UpdateRender:Box19
 ISEXEC:FALSE
--33.296893:-8.492065:-900.000000
--11.271893:-10.992065:-900.000000
+-15.224278:-8.833058:-900.000000
+6.800722:-11.333058:-900.000000
 PORT
 Active:"true"
 FIN_BOX
 BOX
 std:MultipleInputs:Box20
 ISEXEC:FALSE
 PORT
 Active:"true"
 FIN_BOX
 BOX
 std:MultipleInputs:Box20
 ISEXEC:FALSE
--42.283321:-2.005626:-900.000000
--20.313321:-4.505626:-900.000000
+-48.591687:6.860185:-900.000000
+-26.621687:4.360185:-900.000000
+FIN_BOX
+BOX
+vtk:UpdateRender:Box21
+ISEXEC:FALSE
+13.267914:-8.800431:-900.000000
+35.292914:-11.300431:-900.000000
+PORT
+Active:"true"
 FIN_BOX
 FIN_BOX
-CONNECTIONS:40
+CONNECTIONS:45
 CONNECTION
 Box02:Out:Box04:In
 NumberOfControlPoints:0
 CONNECTION
 Box02:Out:Box04:In
 NumberOfControlPoints:0
@@ -326,4 +342,19 @@ NumberOfControlPoints:0
 CONNECTION
 Box14:Out:Box19:Active
 NumberOfControlPoints:0
 CONNECTION
 Box14:Out:Box19:Active
 NumberOfControlPoints:0
+CONNECTION
+Box14:BoxChange:Box21:BoxExecute
+NumberOfControlPoints:0
+CONNECTION
+Box12:Out:Box21:Renderer
+NumberOfControlPoints:0
+CONNECTION
+Box14:BoxChange:Box04:BoxExecute
+NumberOfControlPoints:0
+CONNECTION
+Box16:Out:transform:transform
+NumberOfControlPoints:0
+CONNECTION
+Box08:Out:actualPoint:actualPoint
+NumberOfControlPoints:0
 APP_END
 APP_END
index 86d36190f3fde715ce11f7ba2c3c337d8aa22098..8e8da14c740de982acf166e63fd4542af59f0809 100644 (file)
@@ -31,9 +31,9 @@ new creaMaracasVisu:SliceImage Box02
   set Box02.Z "0"
 
 new creaVtk:TransformVector Box03
   set Box02.Z "0"
 
 new creaVtk:TransformVector Box03
-  set Box03.InX "1  0  0"
-  set Box03.InY "0 1   0"
-  set Box03.InZ "0 0 1"
+  set Box03.InX "1   0  0"
+  set Box03.InY "0  1   0"
+  set Box03.InZ "0  0   1"
 
 new creaMaracasVisu:ImageActor Box04
   set Box04.InterpolationMode "1"
 
 new creaMaracasVisu:ImageActor Box04
   set Box04.InterpolationMode "1"
@@ -68,9 +68,9 @@ new creaMaracasVisu:DrawAxisTree3D Box15
   set Box15.ColourLaw "2"
   set Box15.LineWidth "2"
   set Box15.lstIndexs "2 2 2"
   set Box15.ColourLaw "2"
   set Box15.LineWidth "2"
   set Box15.lstIndexs "2 2 2"
-  set Box15.lstPointX "0 20       0 0           0 0"
-  set Box15.lstPointY "0 0         0  80       0 0"
-  set Box15.lstPointZ "0 0         0  0         0 20"
+  set Box15.lstPointX "0 20       0 0            0 0"
+  set Box15.lstPointY "0 0         0  160       0 0"
+  set Box15.lstPointZ "0 0         0  0           0 20"
 
 new creaMaracasVisu:TransformWidget2 Box16
   set Box16.Type "1"
 
 new creaMaracasVisu:TransformWidget2 Box16
   set Box16.Type "1"
@@ -83,6 +83,9 @@ new vtk:UpdateRender Box19
 
 new std:MultipleInputs Box20
 
 
 new std:MultipleInputs Box20
 
+new vtk:UpdateRender Box21
+  set Box21.Active "true"
+
 
 connect Box02.Out Box04.In
 connect Box08.Out Box02.AxisOrigin
 
 connect Box02.Out Box04.In
 connect Box08.Out Box02.AxisOrigin
@@ -118,6 +121,9 @@ connect Box15.BoxChange Box20.In2
 connect Box20.BoxChange Box19.BoxExecute
 connect Box14.BoxChange Box20.In4
 connect Box14.Out Box19.Active
 connect Box20.BoxChange Box19.BoxExecute
 connect Box14.BoxChange Box20.In4
 connect Box14.Out Box19.Active
+connect Box14.BoxChange Box21.BoxExecute
+connect Box12.Out Box21.Renderer
+connect Box14.BoxChange Box04.BoxExecute
 
 # Complex input ports
 input possiblePoint Box16.PossiblePoint " "
 
 # Complex input ports
 input possiblePoint Box16.PossiblePoint " "
@@ -128,6 +134,8 @@ input wxvtkbaseview3 Box13.wxVtkBaseView3 " "
 
 # Complex output ports
 output widgetOut Box01.Widget " "
 
 # Complex output ports
 output widgetOut Box01.Widget " "
+output transform Box16.Out " "
+output actualPoint Box08.Out " "
 
 
 endefine
 
 
 endefine
index 1cdd1ff9e12a0f9b613ddff85108b8c13007cfb8..e7257b942058edd76f482d77f1b9c795809096a2 100644 (file)
@@ -13,11 +13,11 @@ PACKAGENAME:creaMaracasVisu
 COMPLEXOUTPUTS:2
 COMPLEX_PORT
 WidgetOut
 COMPLEXOUTPUTS:2
 COMPLEX_PORT
 WidgetOut
--94.131893:-165.134889:-900.000000
+-94.836423:-188.666206:-900.000000
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 MeshOut
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 MeshOut
--42.369841:-162.975814:-900.000000
+-43.074371:-186.507131:-900.000000
 FIN_COMPLEX_PORT
 COMPLEXINPUTS:11
 COMPLEX_PORT
 FIN_COMPLEX_PORT
 COMPLEXINPUTS:11
 COMPLEX_PORT
@@ -64,7 +64,7 @@ COMPLEX_PORT
 OutDir_ExMa
 334.933146:91.638847:-900.000000
 FIN_COMPLEX_PORT
 OutDir_ExMa
 334.933146:91.638847:-900.000000
 FIN_COMPLEX_PORT
-BOXES:88
+BOXES:92
 BOX
 creaMaracasVisu:ImageChangeInformation:Box07
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:ImageChangeInformation:Box07
 ISEXEC:FALSE
@@ -100,8 +100,8 @@ FIN_BOX
 BOX
 wx:LayoutSplit:Box11
 ISEXEC:FALSE
 BOX
 wx:LayoutSplit:Box11
 ISEXEC:FALSE
--96.149542:-151.649281:-900.000000
--73.389542:-154.149281:-900.000000
+-96.854072:-175.180598:-900.000000
+-74.094072:-177.680598:-900.000000
 PORT
 Proportion:"20"
 FIN_BOX
 PORT
 Proportion:"20"
 FIN_BOX
@@ -128,14 +128,14 @@ FIN_BOX
 BOX
 wx:LayoutTab:Box20
 ISEXEC:FALSE
 BOX
 wx:LayoutTab:Box20
 ISEXEC:FALSE
--97.190069:-143.295975:-900.000000
--63.870069:-145.795975:-900.000000
+-97.894599:-166.827292:-900.000000
+-64.574599:-169.327292:-900.000000
 FIN_BOX
 BOX
 wx:LayoutLine:Box22
 ISEXEC:FALSE
 FIN_BOX
 BOX
 wx:LayoutLine:Box22
 ISEXEC:FALSE
--93.245472:-124.500159:-900.000000
--59.925472:-127.000159:-900.000000
+-98.464877:-148.781741:-900.000000
+-65.144877:-151.281741:-900.000000
 PORT
 Orientation:"V"
 FIN_BOX
 PORT
 Orientation:"V"
 FIN_BOX
@@ -400,8 +400,8 @@ FIN_BOX
 BOX
 std:MagicBox:Box63
 ISEXEC:FALSE
 BOX
 std:MagicBox:Box63
 ISEXEC:FALSE
-58.021240:79.902351:-900.000000
-79.621240:77.402351:-900.000000
+59.709154:78.964621:-900.000000
+81.309154:76.464621:-900.000000
 FIN_BOX
 BOX
 std:MagicBox:Box64
 FIN_BOX
 BOX
 std:MagicBox:Box64
@@ -510,8 +510,8 @@ FIN_BOX
 BOX
 wx:CommandButton:Box82
 ISEXEC:FALSE
 BOX
 wx:CommandButton:Box82
 ISEXEC:FALSE
-8.420647:-70.684200:-900.000000
-30.695647:-73.184200:-900.000000
+72.561381:-85.500335:-900.000000
+94.836381:-88.000335:-900.000000
 PORT
 Label:"Delete"
 FIN_BOX
 PORT
 Label:"Delete"
 FIN_BOX
@@ -528,24 +528,24 @@ FIN_BOX
 BOX
 wx:CommandButton:Box85
 ISEXEC:FALSE
 BOX
 wx:CommandButton:Box85
 ISEXEC:FALSE
-33.746725:-86.333842:-900.000000
-56.021725:-88.833842:-900.000000
+19.493228:-85.208566:-900.000000
+41.768228:-87.708566:-900.000000
 PORT
 Label:"Undo"
 FIN_BOX
 BOX
 wx:CommandButton:Box86
 ISEXEC:FALSE
 PORT
 Label:"Undo"
 FIN_BOX
 BOX
 wx:CommandButton:Box86
 ISEXEC:FALSE
-58.718958:-88.609672:-900.000000
-80.993958:-91.109672:-900.000000
+46.153376:-84.671206:-900.000000
+68.428376:-87.171206:-900.000000
 PORT
 Label:"Redo"
 FIN_BOX
 BOX
 creaVtk:MeshManager_tool:Box87
 ISEXEC:FALSE
 PORT
 Label:"Redo"
 FIN_BOX
 BOX
 creaVtk:MeshManager_tool:Box87
 ISEXEC:FALSE
-29.917129:-100.474845:-900.000000
-52.417129:-102.974845:-900.000000
+16.788909:-94.473373:-900.000000
+39.288909:-96.973373:-900.000000
 PORT
 BoxProcessMode:"Manual"
 PORT
 PORT
 BoxProcessMode:"Manual"
 PORT
@@ -554,8 +554,8 @@ FIN_BOX
 BOX
 creaVtk:MeshManager_tool:Box88
 ISEXEC:FALSE
 BOX
 creaVtk:MeshManager_tool:Box88
 ISEXEC:FALSE
-58.862846:-100.406121:-900.000000
-81.362846:-102.906121:-900.000000
+49.110454:-94.779741:-900.000000
+71.610454:-97.279741:-900.000000
 PORT
 BoxProcessMode:"Manual"
 PORT
 PORT
 BoxProcessMode:"Manual"
 PORT
@@ -590,8 +590,8 @@ FIN_BOX
 BOX
 vtk:AppendPolyData:Box94
 ISEXEC:FALSE
 BOX
 vtk:AppendPolyData:Box94
 ISEXEC:FALSE
--45.393590:-134.654487:-900.000000
--23.113590:-137.154487:-900.000000
+-46.098120:-158.185804:-900.000000
+-23.818120:-160.685804:-900.000000
 FIN_BOX
 BOX
 std:MagicBox:Box95
 FIN_BOX
 BOX
 std:MagicBox:Box95
@@ -608,16 +608,18 @@ FIN_BOX
 BOX
 wx:LayoutLine:Box97
 ISEXEC:FALSE
 BOX
 wx:LayoutLine:Box97
 ISEXEC:FALSE
--7.124880:-128.548522:-900.000000
-26.195120:-131.048522:-900.000000
+-10.875800:-123.428516:-900.000000
+22.444200:-125.928516:-900.000000
 PORT
 Orientation:"V"
 PORT
 Orientation:"V"
+PORT
+WinTitle:"Mesh"
 FIN_BOX
 BOX
 wx:LayoutLine:Box98
 ISEXEC:FALSE
 FIN_BOX
 BOX
 wx:LayoutLine:Box98
 ISEXEC:FALSE
--89.210191:-133.998503:-900.000000
--55.890191:-136.498503:-900.000000
+-89.914721:-157.529820:-900.000000
+-56.594721:-160.029820:-900.000000
 PORT
 Orientation:"H"
 PORT
 PORT
 Orientation:"H"
 PORT
@@ -626,8 +628,10 @@ FIN_BOX
 BOX
 wx:LayoutLine:Box99
 ISEXEC:FALSE
 BOX
 wx:LayoutLine:Box99
 ISEXEC:FALSE
--306.243673:-95.958722:-900.000000
--272.923673:-98.458722:-900.000000
+-269.707835:-93.008623:-900.000000
+-236.387835:-95.508623:-900.000000
+PORT
+WinTitle:"Plane Cursor"
 FIN_BOX
 BOX
 wx:ComboBox:Box100
 FIN_BOX
 BOX
 wx:ComboBox:Box100
@@ -740,8 +744,8 @@ FIN_BOX
 BOX
 wx:LayoutLine:Box115
 ISEXEC:FALSE
 BOX
 wx:LayoutLine:Box115
 ISEXEC:FALSE
-31.857190:-110.620145:-900.000000
-65.177190:-113.120145:-900.000000
+35.608110:-109.494869:-900.000000
+68.928110:-111.994869:-900.000000
 PORT
 Orientation:"H"
 FIN_BOX
 PORT
 Orientation:"H"
 FIN_BOX
@@ -756,10 +760,42 @@ FIN_BOX
 BOX
 creaMaracasVisu:FreePlane:Box117
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:FreePlane:Box117
 ISEXEC:FALSE
-93.494064:-6.191633:-900.000000
-115.189064:-8.691633:-900.000000
+56.462546:15.002506:-900.000000
+78.157546:12.502506:-900.000000
+FIN_BOX
+BOX
+wx:LayoutTab:Box118
+ISEXEC:FALSE
+-20.425667:-137.883493:-900.000000
+12.894333:-140.383493:-900.000000
+FIN_BOX
+BOX
+wx:LayoutLine:Box119
+ISEXEC:FALSE
+31.186709:-123.851967:-900.000000
+64.506709:-126.351967:-900.000000
+PORT
+Orientation:"V"
+PORT
+WinTitle:"conf"
 FIN_BOX
 FIN_BOX
-CONNECTIONS:236
+BOX
+wx:LayoutTab:Box120
+ISEXEC:FALSE
+-95.895242:-140.334310:-900.000000
+-62.575242:-142.834310:-900.000000
+FIN_BOX
+BOX
+wx:LayoutLine:Box121
+ISEXEC:FALSE
+79.152135:-20.239180:-900.000000
+112.472135:-22.739180:-900.000000
+PORT
+Orientation:"V"
+PORT
+WinTitle:"Free plane"
+FIN_BOX
+CONNECTIONS:242
 CONNECTION
 Box08:MeshBase:Box15:polydata
 NumberOfControlPoints:0
 CONNECTION
 Box08:MeshBase:Box15:polydata
 NumberOfControlPoints:0
@@ -1289,15 +1325,9 @@ CONNECTION
 Box96:Out:Box73:OutDir
 NumberOfControlPoints:0
 CONNECTION
 Box96:Out:Box73:OutDir
 NumberOfControlPoints:0
 CONNECTION
-Box97:Widget:Box98:Widget3
-NumberOfControlPoints:0
-CONNECTION
 Box98:Widget:Box20:Widget1
 NumberOfControlPoints:0
 CONNECTION
 Box98:Widget:Box20:Widget1
 NumberOfControlPoints:0
 CONNECTION
-Box82:Widget:Box97:Widget5
-NumberOfControlPoints:0
-CONNECTION
 Box22:Widget:Box98:Widget5
 NumberOfControlPoints:0
 CONNECTION
 Box22:Widget:Box98:Widget5
 NumberOfControlPoints:0
 CONNECTION
@@ -1406,12 +1436,6 @@ CONNECTION
 Box110:Out:Box105:Active
 NumberOfControlPoints:0
 CONNECTION
 Box110:Out:Box105:Active
 NumberOfControlPoints:0
 CONNECTION
-Box100:Widget:Box22:Widget2
-NumberOfControlPoints:0
-CONNECTION
-Box99:Widget:Box22:Widget3
-NumberOfControlPoints:0
-CONNECTION
 Box17:_widgetB:Box113:Widget2
 NumberOfControlPoints:0
 CONNECTION
 Box17:_widgetB:Box113:Widget2
 NumberOfControlPoints:0
 CONNECTION
@@ -1451,9 +1475,6 @@ CONNECTION
 Box92:Widget:Box116:Widget6
 NumberOfControlPoints:0
 CONNECTION
 Box92:Widget:Box116:Widget6
 NumberOfControlPoints:0
 CONNECTION
-Box117:widgetOut:Box22:Widget5
-NumberOfControlPoints:0
-CONNECTION
 Box64:Out:Box117:possiblePoint
 NumberOfControlPoints:0
 CONNECTION
 Box64:Out:Box117:possiblePoint
 NumberOfControlPoints:0
 CONNECTION
@@ -1468,4 +1489,37 @@ NumberOfControlPoints:0
 CONNECTION
 Box69:Out:Box117:wxvtkbaseview3
 NumberOfControlPoints:0
 CONNECTION
 Box69:Out:Box117:wxvtkbaseview3
 NumberOfControlPoints:0
+CONNECTION
+Box97:Widget:Box118:Widget1
+NumberOfControlPoints:0
+CONNECTION
+Box118:Widget:Box98:Widget2
+NumberOfControlPoints:0
+CONNECTION
+Box119:Widget:Box118:Widget3
+NumberOfControlPoints:0
+CONNECTION
+Box100:Widget:Box119:Widget1
+NumberOfControlPoints:0
+CONNECTION
+Box120:Widget:Box22:Widget2
+NumberOfControlPoints:0
+CONNECTION
+Box121:Widget:Box120:Widget4
+NumberOfControlPoints:0
+CONNECTION
+Box117:widgetOut:Box121:Widget3
+NumberOfControlPoints:0
+CONNECTION
+Box99:Widget:Box120:Widget6
+NumberOfControlPoints:0
+CONNECTION
+Box82:Widget:Box115:Widget6
+NumberOfControlPoints:0
+CONNECTION
+Box117:transform:Box10:freeplane_transform
+NumberOfControlPoints:0
+CONNECTION
+Box117:actualPoint:Box10:freeplane_point
+NumberOfControlPoints:0
 APP_END
 APP_END
index aa9f371a5c7b150e5f2aa4d290d30c222e6ce0e2..250fd5259749e2b841b0b0f9f8bdd78404063d19 100644 (file)
@@ -222,12 +222,14 @@ new std:MagicBox Box96
 
 new wx:LayoutLine Box97
   set Box97.Orientation "V"
 
 new wx:LayoutLine Box97
   set Box97.Orientation "V"
+  set Box97.WinTitle "Mesh"
 
 new wx:LayoutLine Box98
   set Box98.Orientation "H"
   set Box98.WinTitle "Final Surface (Red)"
 
 new wx:LayoutLine Box99
 
 new wx:LayoutLine Box98
   set Box98.Orientation "H"
   set Box98.WinTitle "Final Surface (Red)"
 
 new wx:LayoutLine Box99
+  set Box99.WinTitle "Plane Cursor"
 
 new wx:ComboBox Box100
   set Box100.In "Red  JET  B&W"
 
 new wx:ComboBox Box100
   set Box100.In "Red  JET  B&W"
@@ -277,6 +279,18 @@ new wx:LayoutLine Box116
 
 new creaMaracasVisu:FreePlane Box117
 
 
 new creaMaracasVisu:FreePlane Box117
 
+new wx:LayoutTab Box118
+
+new wx:LayoutLine Box119
+  set Box119.Orientation "V"
+  set Box119.WinTitle "conf"
+
+new wx:LayoutTab Box120
+
+new wx:LayoutLine Box121
+  set Box121.Orientation "V"
+  set Box121.WinTitle "Free plane"
+
 
 connect Box08.MeshBase Box15.polydata
 connect Box08.MeshTemp Box10.mesh
 
 connect Box08.MeshBase Box15.polydata
 connect Box08.MeshTemp Box10.mesh
@@ -441,9 +455,7 @@ connect Box08.AllPolyDatas Box94.InVector
 connect Box08.MeshSelection Box79.Selection
 connect Box95.Out Box73.BaseImageFileName
 connect Box96.Out Box73.OutDir
 connect Box08.MeshSelection Box79.Selection
 connect Box95.Out Box73.BaseImageFileName
 connect Box96.Out Box73.OutDir
-connect Box97.Widget Box98.Widget3
 connect Box98.Widget Box20.Widget1
 connect Box98.Widget Box20.Widget1
-connect Box82.Widget Box97.Widget5
 connect Box22.Widget Box98.Widget5
 connect Box54.Widget Box99.Widget2
 connect Box53.Widget Box99.Widget4
 connect Box22.Widget Box98.Widget5
 connect Box54.Widget Box99.Widget2
 connect Box53.Widget Box99.Widget4
@@ -480,8 +492,6 @@ connect Box39.Out Box111.In1
 connect Box108.Out Box111.In2
 connect Box111.Out Box40.Active
 connect Box110.Out Box105.Active
 connect Box108.Out Box111.In2
 connect Box111.Out Box40.Active
 connect Box110.Out Box105.Active
-connect Box100.Widget Box22.Widget2
-connect Box99.Widget Box22.Widget3
 connect Box17._widgetB Box113.Widget2
 connect Box15.widgetB Box113.Widget4
 connect Box17._widgetA Box112.Widget2
 connect Box17._widgetB Box113.Widget2
 connect Box15.widgetB Box113.Widget4
 connect Box17._widgetA Box112.Widget2
@@ -495,12 +505,22 @@ connect Box79.Widget Box116.Widget4
 connect Box116.Widget Box97.Widget2
 connect Box115.Widget Box97.Widget4
 connect Box92.Widget Box116.Widget6
 connect Box116.Widget Box97.Widget2
 connect Box115.Widget Box97.Widget4
 connect Box92.Widget Box116.Widget6
-connect Box117.widgetOut Box22.Widget5
 connect Box64.Out Box117.possiblePoint
 connect Box65.Out Box117.render
 connect Box67.Out Box117.wxvtkbaseview1
 connect Box68.Out Box117.wxvtkbaseview2
 connect Box69.Out Box117.wxvtkbaseview3
 connect Box64.Out Box117.possiblePoint
 connect Box65.Out Box117.render
 connect Box67.Out Box117.wxvtkbaseview1
 connect Box68.Out Box117.wxvtkbaseview2
 connect Box69.Out Box117.wxvtkbaseview3
+connect Box97.Widget Box118.Widget1
+connect Box118.Widget Box98.Widget2
+connect Box119.Widget Box118.Widget3
+connect Box100.Widget Box119.Widget1
+connect Box120.Widget Box22.Widget2
+connect Box121.Widget Box120.Widget4
+connect Box117.widgetOut Box121.Widget3
+connect Box99.Widget Box120.Widget6
+connect Box82.Widget Box115.Widget6
+connect Box117.transform Box10.freeplane_transform
+connect Box117.actualPoint Box10.freeplane_point
 
 # Complex input ports
 input MeshIn Box56.In " "
 
 # Complex input ports
 input MeshIn Box56.In " "
index bb6f6ee0ae9678e21c7473506c5b22c04fc03138..e600651658a0ddff66a0d30b96eab7e596a70458 100644 (file)
@@ -72,7 +72,7 @@ COMPLEX_PORT
 meshmanagermodel
 -150.374274:130.740991:-900.000000
 FIN_COMPLEX_PORT
 meshmanagermodel
 -150.374274:130.740991:-900.000000
 FIN_COMPLEX_PORT
-BOXES:147
+BOXES:148
 BOX
 creaMaracasVisu:ShowNPoints:showNpoints
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:ShowNPoints:showNpoints
 ISEXEC:FALSE
@@ -140,8 +140,8 @@ FIN_BOX
 BOX
 creaMaracasVisu:ManualContourModel_Box:Box29
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:ManualContourModel_Box:Box29
 ISEXEC:FALSE
-75.865053:27.949535:-900.000000
-100.385053:25.449535:-900.000000
+59.667734:12.704999:-900.000000
+84.187734:10.204999:-900.000000
 PORT
 NbPoints:"40"
 PORT
 PORT
 NbPoints:"40"
 PORT
@@ -196,8 +196,8 @@ FIN_BOX
 BOX
 std:VectorFilterDouble:Box70
 ISEXEC:FALSE
 BOX
 std:VectorFilterDouble:Box70
 ISEXEC:FALSE
-49.425284:47.197247:-900.000000
-75.705284:44.697247:-900.000000
+38.732936:52.596353:-900.000000
+65.012936:50.096353:-900.000000
 PORT
 Type:"11"
 FIN_BOX
 PORT
 Type:"11"
 FIN_BOX
@@ -1319,7 +1319,15 @@ Params:"0"
 PORT
 Type:"250"
 FIN_BOX
 PORT
 Type:"250"
 FIN_BOX
-CONNECTIONS:256
+BOX
+std:VectorFilterDouble:Box239
+ISEXEC:FALSE
+67.977472:28.319012:-900.000000
+94.257472:25.819012:-900.000000
+PORT
+Type:"14"
+FIN_BOX
+CONNECTIONS:261
 CONNECTION
 Box06:LstContourPointsX:Box04:LstX
 NumberOfControlPoints:0
 CONNECTION
 Box06:LstContourPointsX:Box04:LstX
 NumberOfControlPoints:0
@@ -1339,9 +1347,6 @@ CONNECTION
 Box30:BoxChange:Box31:In4
 NumberOfControlPoints:0
 CONNECTION
 Box30:BoxChange:Box31:In4
 NumberOfControlPoints:0
 CONNECTION
-showNpoints:lstIndexs:Box29:LstIndexsIn
-NumberOfControlPoints:0
-CONNECTION
 Box29:LstContourPointsX:Box30:lstPointX
 NumberOfControlPoints:0
 CONNECTION
 Box29:LstContourPointsX:Box30:lstPointX
 NumberOfControlPoints:0
 CONNECTION
@@ -1384,15 +1389,6 @@ CONNECTION
 Box70:Out2:Box06:LstControlPointsZ
 NumberOfControlPoints:0
 CONNECTION
 Box70:Out2:Box06:LstControlPointsZ
 NumberOfControlPoints:0
 CONNECTION
-Box70:Out0:Box29:LstControlPointsX
-NumberOfControlPoints:0
-CONNECTION
-Box70:Out1:Box29:LstControlPointsY
-NumberOfControlPoints:0
-CONNECTION
-Box70:Out2:Box29:LstControlPointsZ
-NumberOfControlPoints:0
-CONNECTION
 Box78:Out:Box77:Operation
 NumberOfControlPoints:0
 CONNECTION
 Box78:Out:Box77:Operation
 NumberOfControlPoints:0
 CONNECTION
@@ -2089,4 +2085,31 @@ NumberOfControlPoints:0
 CONNECTION
 Box185:Out:Box29:OpenClose
 NumberOfControlPoints:0
 CONNECTION
 Box185:Out:Box29:OpenClose
 NumberOfControlPoints:0
+CONNECTION
+Box70:Out0:Box239:In0
+NumberOfControlPoints:0
+CONNECTION
+Box70:Out1:Box239:In1
+NumberOfControlPoints:0
+CONNECTION
+Box70:Out2:Box239:In2
+NumberOfControlPoints:0
+CONNECTION
+Box239:Out0:Box29:LstControlPointsX
+NumberOfControlPoints:0
+CONNECTION
+Box239:Out1:Box29:LstControlPointsY
+NumberOfControlPoints:0
+CONNECTION
+Box239:Out2:Box29:LstControlPointsZ
+NumberOfControlPoints:0
+CONNECTION
+Box239:Out3:Box29:LstIndexsIn
+NumberOfControlPoints:0
+CONNECTION
+showNpoints:lstIndexs:Box239:In3
+NumberOfControlPoints:0
+CONNECTION
+showNpoints:lstSelectedIndexs:Box239:k1
+NumberOfControlPoints:0
 APP_END
 APP_END
index 85c342fa4d48003cdbe001bef151757d24d7b02b..5c879fe46ed579cf246ab0fb1a9448c3c10e93f6 100644 (file)
@@ -494,6 +494,9 @@ new creaMaracasVisu:ShowNPoints_Tools Box238
   set Box238.Params "0"
   set Box238.Type "250"
 
   set Box238.Params "0"
   set Box238.Type "250"
 
+new std:VectorFilterDouble Box239
+  set Box239.Type "14"
+
 
 connect Box06.LstContourPointsX Box04.LstX
 connect showNpoints.lstIndexs Box06.LstIndexsIn
 
 connect Box06.LstContourPointsX Box04.LstX
 connect showNpoints.lstIndexs Box06.LstIndexsIn
@@ -501,7 +504,6 @@ connect Box06.LstContourPointsY Box04.LstY
 connect Box06.LstContourPointsZ Box04.LstZ
 connect Box06.LstIndexsOut Box04.LstIndexs
 connect Box30.BoxChange Box31.In4
 connect Box06.LstContourPointsZ Box04.LstZ
 connect Box06.LstIndexsOut Box04.LstIndexs
 connect Box30.BoxChange Box31.In4
-connect showNpoints.lstIndexs Box29.LstIndexsIn
 connect Box29.LstContourPointsX Box30.lstPointX
 connect Box29.LstContourPointsY Box30.lstPointY
 connect Box29.LstContourPointsZ Box30.lstPointZ
 connect Box29.LstContourPointsX Box30.lstPointX
 connect Box29.LstContourPointsY Box30.lstPointY
 connect Box29.LstContourPointsZ Box30.lstPointZ
@@ -516,9 +518,6 @@ connect showNpoints.lstPointsZ Box70.In2
 connect Box70.Out0 Box06.LstControlPointsX
 connect Box70.Out1 Box06.LstControlPointsY
 connect Box70.Out2 Box06.LstControlPointsZ
 connect Box70.Out0 Box06.LstControlPointsX
 connect Box70.Out1 Box06.LstControlPointsY
 connect Box70.Out2 Box06.LstControlPointsZ
-connect Box70.Out0 Box29.LstControlPointsX
-connect Box70.Out1 Box29.LstControlPointsY
-connect Box70.Out2 Box29.LstControlPointsZ
 connect Box78.Out Box77.Operation
 connect Box66.Out Box11.Renderer
 connect Box66.Out Box30.Renderer
 connect Box78.Out Box77.Operation
 connect Box66.Out Box11.Renderer
 connect Box66.Out Box30.Renderer
@@ -736,6 +735,15 @@ connect Box04.BoxChange Box238.BoxExecute
 connect showNpoints.WidgetShowNPoints Box238.WidgetShowNPoints
 connect Box68.Spacing Box238.Spacing
 connect Box185.Out Box29.OpenClose
 connect showNpoints.WidgetShowNPoints Box238.WidgetShowNPoints
 connect Box68.Spacing Box238.Spacing
 connect Box185.Out Box29.OpenClose
+connect Box70.Out0 Box239.In0
+connect Box70.Out1 Box239.In1
+connect Box70.Out2 Box239.In2
+connect Box239.Out0 Box29.LstControlPointsX
+connect Box239.Out1 Box29.LstControlPointsY
+connect Box239.Out2 Box29.LstControlPointsZ
+connect Box239.Out3 Box29.LstIndexsIn
+connect showNpoints.lstIndexs Box239.In3
+connect showNpoints.lstSelectedIndexs Box239.k1
 
 # Complex input ports
 input point showNpoints.In " "
 
 # Complex input ports
 input point showNpoints.In " "
index 3d758f7d1c27500d2ea4d1662727c382525e5ec8..ae8fedadbde945e51105ac6995bc1aeff14e812b 100644 (file)
@@ -72,7 +72,7 @@ COMPLEX_PORT
 meshmanagermodel
 -150.374274:130.740991:-900.000000
 FIN_COMPLEX_PORT
 meshmanagermodel
 -150.374274:130.740991:-900.000000
 FIN_COMPLEX_PORT
-BOXES:92
+BOXES:93
 BOX
 creaMaracasVisu:ShowNPoints:showNpoints
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:ShowNPoints:showNpoints
 ISEXEC:FALSE
@@ -827,7 +827,15 @@ Params:"0"
 PORT
 Type:"250"
 FIN_BOX
 PORT
 Type:"250"
 FIN_BOX
-CONNECTIONS:177
+BOX
+std:VectorFilterDouble:Box150
+ISEXEC:FALSE
+79.990672:41.410563:-900.000000
+106.270672:38.910563:-900.000000
+PORT
+Type:"14"
+FIN_BOX
+CONNECTIONS:182
 CONNECTION
 Box06:LstContourPointsX:Box04:LstX
 NumberOfControlPoints:0
 CONNECTION
 Box06:LstContourPointsX:Box04:LstX
 NumberOfControlPoints:0
@@ -847,9 +855,6 @@ CONNECTION
 Box30:BoxChange:Box31:In4
 NumberOfControlPoints:0
 CONNECTION
 Box30:BoxChange:Box31:In4
 NumberOfControlPoints:0
 CONNECTION
-showNpoints:lstIndexs:Box29:LstIndexsIn
-NumberOfControlPoints:0
-CONNECTION
 Box29:LstContourPointsX:Box30:lstPointX
 NumberOfControlPoints:0
 CONNECTION
 Box29:LstContourPointsX:Box30:lstPointX
 NumberOfControlPoints:0
 CONNECTION
@@ -892,15 +897,6 @@ CONNECTION
 Box70:Out2:Box06:LstControlPointsZ
 NumberOfControlPoints:0
 CONNECTION
 Box70:Out2:Box06:LstControlPointsZ
 NumberOfControlPoints:0
 CONNECTION
-Box70:Out0:Box29:LstControlPointsX
-NumberOfControlPoints:0
-CONNECTION
-Box70:Out1:Box29:LstControlPointsY
-NumberOfControlPoints:0
-CONNECTION
-Box70:Out2:Box29:LstControlPointsZ
-NumberOfControlPoints:0
-CONNECTION
 Box78:Out:Box77:Operation
 NumberOfControlPoints:0
 CONNECTION
 Box78:Out:Box77:Operation
 NumberOfControlPoints:0
 CONNECTION
@@ -1359,4 +1355,31 @@ NumberOfControlPoints:0
 CONNECTION
 Box04:BoxChange:Box149:BoxExecute
 NumberOfControlPoints:0
 CONNECTION
 Box04:BoxChange:Box149:BoxExecute
 NumberOfControlPoints:0
+CONNECTION
+Box70:Out0:Box150:In0
+NumberOfControlPoints:0
+CONNECTION
+Box70:Out1:Box150:In1
+NumberOfControlPoints:0
+CONNECTION
+Box70:Out2:Box150:In2
+NumberOfControlPoints:0
+CONNECTION
+Box150:Out0:Box29:LstControlPointsX
+NumberOfControlPoints:0
+CONNECTION
+Box150:Out1:Box29:LstControlPointsY
+NumberOfControlPoints:0
+CONNECTION
+Box150:Out2:Box29:LstControlPointsZ
+NumberOfControlPoints:0
+CONNECTION
+Box150:Out3:Box29:LstIndexsIn
+NumberOfControlPoints:0
+CONNECTION
+showNpoints:lstSelectedIndexs:Box150:k1
+NumberOfControlPoints:0
+CONNECTION
+showNpoints:lstIndexs:Box150:In3
+NumberOfControlPoints:0
 APP_END
 APP_END
index 530d9a1224407ce5b0591a715203d3176e19653c..e6826e0bc1881231246b073630d48b4547de90b3 100644 (file)
@@ -303,6 +303,9 @@ new creaMaracasVisu:ShowNPoints_Tools Box149
   set Box149.Params "0"
   set Box149.Type "250"
 
   set Box149.Params "0"
   set Box149.Type "250"
 
+new std:VectorFilterDouble Box150
+  set Box150.Type "14"
+
 
 connect Box06.LstContourPointsX Box04.LstX
 connect showNpoints.lstIndexs Box06.LstIndexsIn
 
 connect Box06.LstContourPointsX Box04.LstX
 connect showNpoints.lstIndexs Box06.LstIndexsIn
@@ -310,7 +313,6 @@ connect Box06.LstContourPointsY Box04.LstY
 connect Box06.LstContourPointsZ Box04.LstZ
 connect Box06.LstIndexsOut Box04.LstIndexs
 connect Box30.BoxChange Box31.In4
 connect Box06.LstContourPointsZ Box04.LstZ
 connect Box06.LstIndexsOut Box04.LstIndexs
 connect Box30.BoxChange Box31.In4
-connect showNpoints.lstIndexs Box29.LstIndexsIn
 connect Box29.LstContourPointsX Box30.lstPointX
 connect Box29.LstContourPointsY Box30.lstPointY
 connect Box29.LstContourPointsZ Box30.lstPointZ
 connect Box29.LstContourPointsX Box30.lstPointX
 connect Box29.LstContourPointsY Box30.lstPointY
 connect Box29.LstContourPointsZ Box30.lstPointZ
@@ -325,9 +327,6 @@ connect showNpoints.lstPointsZ Box70.In2
 connect Box70.Out0 Box06.LstControlPointsX
 connect Box70.Out1 Box06.LstControlPointsY
 connect Box70.Out2 Box06.LstControlPointsZ
 connect Box70.Out0 Box06.LstControlPointsX
 connect Box70.Out1 Box06.LstControlPointsY
 connect Box70.Out2 Box06.LstControlPointsZ
-connect Box70.Out0 Box29.LstControlPointsX
-connect Box70.Out1 Box29.LstControlPointsY
-connect Box70.Out2 Box29.LstControlPointsZ
 connect Box78.Out Box77.Operation
 connect Box66.Out Box11.Renderer
 connect Box66.Out Box30.Renderer
 connect Box78.Out Box77.Operation
 connect Box66.Out Box11.Renderer
 connect Box66.Out Box30.Renderer
@@ -466,6 +465,15 @@ connect Box95.Out Box149.Mesh
 connect showNpoints.WidgetShowNPoints Box149.WidgetShowNPoints
 connect Box68.Spacing Box149.Spacing
 connect Box04.BoxChange Box149.BoxExecute
 connect showNpoints.WidgetShowNPoints Box149.WidgetShowNPoints
 connect Box68.Spacing Box149.Spacing
 connect Box04.BoxChange Box149.BoxExecute
+connect Box70.Out0 Box150.In0
+connect Box70.Out1 Box150.In1
+connect Box70.Out2 Box150.In2
+connect Box150.Out0 Box29.LstControlPointsX
+connect Box150.Out1 Box29.LstControlPointsY
+connect Box150.Out2 Box29.LstControlPointsZ
+connect Box150.Out3 Box29.LstIndexsIn
+connect showNpoints.lstSelectedIndexs Box150.k1
+connect showNpoints.lstIndexs Box150.In3
 
 # Complex input ports
 input point showNpoints.In " "
 
 # Complex input ports
 input point showNpoints.In " "
index 8cdf7986386d80f9abc073b74dee831177d40a69..ad5f7e60e2a064aba471e0fef5810bb98ad71531 100644 (file)
@@ -72,7 +72,7 @@ COMPLEX_PORT
 meshmanagermodel
 -150.374274:130.740991:-900.000000
 FIN_COMPLEX_PORT
 meshmanagermodel
 -150.374274:130.740991:-900.000000
 FIN_COMPLEX_PORT
-BOXES:85
+BOXES:86
 BOX
 creaMaracasVisu:ShowNPoints:showNpoints
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:ShowNPoints:showNpoints
 ISEXEC:FALSE
@@ -757,7 +757,15 @@ ISEXEC:FALSE
 64.038173:-10.778224:-900.000000
 86.443173:-13.278224:-900.000000
 FIN_BOX
 64.038173:-10.778224:-900.000000
 86.443173:-13.278224:-900.000000
 FIN_BOX
-CONNECTIONS:174
+BOX
+std:VectorFilterDouble:Box160
+ISEXEC:FALSE
+74.629682:44.724702:-900.000000
+100.909682:42.224702:-900.000000
+PORT
+Type:"14"
+FIN_BOX
+CONNECTIONS:179
 CONNECTION
 Box06:LstContourPointsX:Box04:LstX
 NumberOfControlPoints:0
 CONNECTION
 Box06:LstContourPointsX:Box04:LstX
 NumberOfControlPoints:0
@@ -777,9 +785,6 @@ CONNECTION
 Box30:BoxChange:Box31:In4
 NumberOfControlPoints:0
 CONNECTION
 Box30:BoxChange:Box31:In4
 NumberOfControlPoints:0
 CONNECTION
-showNpoints:lstIndexs:Box29:LstIndexsIn
-NumberOfControlPoints:0
-CONNECTION
 Box29:LstContourPointsX:Box30:lstPointX
 NumberOfControlPoints:0
 CONNECTION
 Box29:LstContourPointsX:Box30:lstPointX
 NumberOfControlPoints:0
 CONNECTION
@@ -822,15 +827,6 @@ CONNECTION
 Box70:Out2:Box06:LstControlPointsZ
 NumberOfControlPoints:0
 CONNECTION
 Box70:Out2:Box06:LstControlPointsZ
 NumberOfControlPoints:0
 CONNECTION
-Box70:Out0:Box29:LstControlPointsX
-NumberOfControlPoints:0
-CONNECTION
-Box70:Out1:Box29:LstControlPointsY
-NumberOfControlPoints:0
-CONNECTION
-Box70:Out2:Box29:LstControlPointsZ
-NumberOfControlPoints:0
-CONNECTION
 Box08:Widget:widget:widget
 NumberOfControlPoints:0
 CONNECTION
 Box08:Widget:widget:widget
 NumberOfControlPoints:0
 CONNECTION
@@ -1280,4 +1276,31 @@ NumberOfControlPoints:0
 CONNECTION
 Box143:Out:Box157:In
 NumberOfControlPoints:0
 CONNECTION
 Box143:Out:Box157:In
 NumberOfControlPoints:0
+CONNECTION
+showNpoints:lstSelectedIndexs:Box160:k1
+NumberOfControlPoints:0
+CONNECTION
+Box70:Out0:Box160:In0
+NumberOfControlPoints:0
+CONNECTION
+Box70:Out1:Box160:In1
+NumberOfControlPoints:0
+CONNECTION
+Box70:Out2:Box160:In2
+NumberOfControlPoints:0
+CONNECTION
+Box160:Out0:Box29:LstControlPointsX
+NumberOfControlPoints:0
+CONNECTION
+Box160:Out1:Box29:LstControlPointsY
+NumberOfControlPoints:0
+CONNECTION
+Box160:Out2:Box29:LstControlPointsZ
+NumberOfControlPoints:0
+CONNECTION
+Box160:Out3:Box29:LstIndexsIn
+NumberOfControlPoints:0
+CONNECTION
+showNpoints:lstIndexs:Box160:In3
+NumberOfControlPoints:0
 APP_END
 APP_END
index 62cf76675305318ccaa60055ac5d90e44f321ca5..7ec4e32994e35ce983d7dacf9acd4aca27fadc9c 100644 (file)
@@ -275,6 +275,9 @@ new creaMaracasVisu:ShowNPoints_Tools Box158
 
 new creaVtk:PolyDataNormals Box159
 
 
 new creaVtk:PolyDataNormals Box159
 
+new std:VectorFilterDouble Box160
+  set Box160.Type "14"
+
 
 connect Box06.LstContourPointsX Box04.LstX
 connect showNpoints.lstIndexs Box06.LstIndexsIn
 
 connect Box06.LstContourPointsX Box04.LstX
 connect showNpoints.lstIndexs Box06.LstIndexsIn
@@ -282,7 +285,6 @@ connect Box06.LstContourPointsY Box04.LstY
 connect Box06.LstContourPointsZ Box04.LstZ
 connect Box06.LstIndexsOut Box04.LstIndexs
 connect Box30.BoxChange Box31.In4
 connect Box06.LstContourPointsZ Box04.LstZ
 connect Box06.LstIndexsOut Box04.LstIndexs
 connect Box30.BoxChange Box31.In4
-connect showNpoints.lstIndexs Box29.LstIndexsIn
 connect Box29.LstContourPointsX Box30.lstPointX
 connect Box29.LstContourPointsY Box30.lstPointY
 connect Box29.LstContourPointsZ Box30.lstPointZ
 connect Box29.LstContourPointsX Box30.lstPointX
 connect Box29.LstContourPointsY Box30.lstPointY
 connect Box29.LstContourPointsZ Box30.lstPointZ
@@ -297,9 +299,6 @@ connect showNpoints.lstPointsZ Box70.In2
 connect Box70.Out0 Box06.LstControlPointsX
 connect Box70.Out1 Box06.LstControlPointsY
 connect Box70.Out2 Box06.LstControlPointsZ
 connect Box70.Out0 Box06.LstControlPointsX
 connect Box70.Out1 Box06.LstControlPointsY
 connect Box70.Out2 Box06.LstControlPointsZ
-connect Box70.Out0 Box29.LstControlPointsX
-connect Box70.Out1 Box29.LstControlPointsY
-connect Box70.Out2 Box29.LstControlPointsZ
 connect Box66.Out Box11.Renderer
 connect Box66.Out Box30.Renderer
 connect Box66.Out showNpoints.Renderer
 connect Box66.Out Box11.Renderer
 connect Box66.Out Box30.Renderer
 connect Box66.Out showNpoints.Renderer
@@ -435,6 +434,15 @@ connect Box68.Spacing Box158.Spacing
 connect Box04.Out Box159.In
 connect Box159.Out Box158.Mesh
 connect Box143.Out Box157.In
 connect Box04.Out Box159.In
 connect Box159.Out Box158.Mesh
 connect Box143.Out Box157.In
+connect showNpoints.lstSelectedIndexs Box160.k1
+connect Box70.Out0 Box160.In0
+connect Box70.Out1 Box160.In1
+connect Box70.Out2 Box160.In2
+connect Box160.Out0 Box29.LstControlPointsX
+connect Box160.Out1 Box29.LstControlPointsY
+connect Box160.Out2 Box29.LstControlPointsZ
+connect Box160.Out3 Box29.LstIndexsIn
+connect showNpoints.lstIndexs Box160.In3
 
 # Complex input ports
 input point showNpoints.In " "
 
 # Complex input ports
 input point showNpoints.In " "
index aa29dc346dfc517085cd6c041de323e01e9ab7ae..b7b403bfcfae76924a14fb63870df8750be4ebad 100644 (file)
@@ -1,6 +1,6 @@
 # ----------------------------------
 # - BBTKGEditor v 1.5 BBG BlackBox Diagram file
 # ----------------------------------
 # - BBTKGEditor v 1.5 BBG BlackBox Diagram file
-# - /home/garzon/Creatis/C23/creatools_source/creaMaracasVisu/bbtk/bbs/boxes/Mesh_tool_ApplySurface.bbg
+# - /Users/davila/Creatis/C23/creatools_source/creaMaracasVisu/bbtk/bbs/boxes/Mesh_tool_ApplySurface.bbg
 # ----------------------------------
 
 APP_START
 # ----------------------------------
 
 APP_START
@@ -31,7 +31,7 @@ COMPLEX_PORT
 interactorStyleMaracas4
 -285.985042:-186.124821:-900.000000
 FIN_COMPLEX_PORT
 interactorStyleMaracas4
 -285.985042:-186.124821:-900.000000
 FIN_COMPLEX_PORT
-COMPLEXINPUTS:10
+COMPLEXINPUTS:12
 COMPLEX_PORT
 boxChange
 -6.086529:137.355528:-900.000000
 COMPLEX_PORT
 boxChange
 -6.086529:137.355528:-900.000000
@@ -72,7 +72,15 @@ COMPLEX_PORT
 meshmanagermodel
 -150.374274:130.740991:-900.000000
 FIN_COMPLEX_PORT
 meshmanagermodel
 -150.374274:130.740991:-900.000000
 FIN_COMPLEX_PORT
-BOXES:88
+COMPLEX_PORT
+freeplane_transform
+-362.961747:124.482960:-900.000000
+FIN_COMPLEX_PORT
+COMPLEX_PORT
+freeplane_point
+-349.159524:124.829268:-900.000000
+FIN_COMPLEX_PORT
+BOXES:92
 BOX
 creaMaracasVisu:ShowNPoints:showNpoints
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:ShowNPoints:showNpoints
 ISEXEC:FALSE
@@ -132,8 +140,8 @@ FIN_BOX
 BOX
 creaMaracasVisu:ManualContourModel_Box:Box29
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:ManualContourModel_Box:Box29
 ISEXEC:FALSE
-52.918677:14.139324:-900.000000
-77.438677:11.639324:-900.000000
+73.068248:11.504380:-900.000000
+97.588248:9.004380:-900.000000
 PORT
 NbPoints:"40"
 FIN_BOX
 PORT
 NbPoints:"40"
 FIN_BOX
@@ -174,10 +182,8 @@ FIN_BOX
 BOX
 creaMaracasVisu:ShowNPoints_Tools:Box60
 ISEXEC:FALSE
 BOX
 creaMaracasVisu:ShowNPoints_Tools:Box60
 ISEXEC:FALSE
--271.434991:53.686536:-900.000000
--248.999991:51.186536:-900.000000
-PORT
-Params:"156 276 97 0 0 1"
+-347.228377:43.301757:-900.000000
+-324.793377:40.801757:-900.000000
 FIN_BOX
 BOX
 vtk:ImageVtkProperties:Box68
 FIN_BOX
 BOX
 vtk:ImageVtkProperties:Box68
@@ -522,8 +528,8 @@ FIN_BOX
 BOX
 std:VectorFilterString:Box100
 ISEXEC:FALSE
 BOX
 std:VectorFilterString:Box100
 ISEXEC:FALSE
--265.790737:67.872984:-900.000000
--237.750737:65.372984:-900.000000
+-331.974328:66.943004:-900.000000
+-303.934328:64.443004:-900.000000
 PORT
 In0:"0  1  2   3   4   5   6   7   8      9       10   11   12   13"
 PORT
 PORT
 In0:"0  1  2   3   4   5   6   7   8      9       10   11   12   13"
 PORT
@@ -534,8 +540,8 @@ FIN_BOX
 BOX
 std:ConcatStrings:Box101
 ISEXEC:FALSE
 BOX
 std:ConcatStrings:Box101
 ISEXEC:FALSE
--265.899318:61.380437:-900.000000
--243.139318:58.880437:-900.000000
+-332.082909:60.450457:-900.000000
+-309.322909:57.950457:-900.000000
 FIN_BOX
 BOX
 wx:CheckBox:Box103
 FIN_BOX
 BOX
 wx:CheckBox:Box103
@@ -784,12 +790,48 @@ FIN_BOX
 BOX
 std:VectorFilterDouble:Box140
 ISEXEC:FALSE
 BOX
 std:VectorFilterDouble:Box140
 ISEXEC:FALSE
-91.473998:30.841320:-900.000000
-117.753998:28.341320:-900.000000
+87.289087:26.966402:-900.000000
+113.569087:24.466402:-900.000000
 PORT
 Type:"14"
 FIN_BOX
 PORT
 Type:"14"
 FIN_BOX
-CONNECTIONS:177
+BOX
+std:MagicBox:Box141
+ISEXEC:FALSE
+-379.690365:113.117077:-900.000000
+-357.980365:110.617077:-900.000000
+FIN_BOX
+BOX
+std:MagicBox:Box142
+ISEXEC:FALSE
+-353.346525:113.061609:-900.000000
+-331.636525:110.561609:-900.000000
+FIN_BOX
+BOX
+std:ConcatStrings:Box143
+ISEXEC:FALSE
+-388.450292:99.312418:-900.000000
+-365.690292:96.812418:-900.000000
+PORT
+In2:"  "
+PORT
+In4:"  "
+PORT
+In6:"  "
+FIN_BOX
+BOX
+creaVtk:TransformVector:Box144
+ISEXEC:FALSE
+-388.799646:107.580462:-900.000000
+-366.479646:105.080462:-900.000000
+PORT
+InX:"0"
+PORT
+InY:"1"
+PORT
+InZ:"0"
+FIN_BOX
+CONNECTIONS:185
 CONNECTION
 Box06:LstContourPointsX:Box04:LstX
 NumberOfControlPoints:0
 CONNECTION
 Box06:LstContourPointsX:Box04:LstX
 NumberOfControlPoints:0
@@ -1321,4 +1363,28 @@ NumberOfControlPoints:0
 CONNECTION
 Box140:Out3:Box29:LstIndexsIn
 NumberOfControlPoints:0
 CONNECTION
 Box140:Out3:Box29:LstIndexsIn
 NumberOfControlPoints:0
+CONNECTION
+freeplane_transform:freeplane_transform:Box141:In
+NumberOfControlPoints:0
+CONNECTION
+freeplane_point:freeplane_point:Box142:In
+NumberOfControlPoints:0
+CONNECTION
+Box142:Out:Box143:In1
+NumberOfControlPoints:0
+CONNECTION
+Box141:Out:Box144:Transform
+NumberOfControlPoints:0
+CONNECTION
+Box144:OutX:Box143:In3
+NumberOfControlPoints:0
+CONNECTION
+Box144:OutY:Box143:In5
+NumberOfControlPoints:0
+CONNECTION
+Box144:OutZ:Box143:In7
+NumberOfControlPoints:0
+CONNECTION
+Box143:Out:Box60:Params
+NumberOfControlPoints:0
 APP_END
 APP_END
index 90eaffddc46d349afda465a280432eba8baa0c16..ce86fea0e1d48f625383277e8a3d4840c90e3d82 100644 (file)
@@ -1,6 +1,6 @@
 # ----------------------------------
 # - BBTKGEditor v 1.5 BBS BlackBox Script (Complex Box)
 # ----------------------------------
 # - BBTKGEditor v 1.5 BBS BlackBox Script (Complex Box)
-# - /home/garzon/Creatis/C23/creatools_source/creaMaracasVisu/bbtk/bbs/boxes/Mesh_tool_ApplySurface.bbs
+# - /Users/davila/Creatis/C23/creatools_source/creaMaracasVisu/bbtk/bbs/boxes/Mesh_tool_ApplySurface.bbs
 # ----------------------------------
 
 include std
 # ----------------------------------
 
 include std
@@ -58,7 +58,6 @@ new std:AddStringToVector Box58
   set Box58.In9 "Tool - Create Volume Surface from 3 or 4 points (use Close Spline 2 - Close Surface Off)"
 
 new creaMaracasVisu:ShowNPoints_Tools Box60
   set Box58.In9 "Tool - Create Volume Surface from 3 or 4 points (use Close Spline 2 - Close Surface Off)"
 
 new creaMaracasVisu:ShowNPoints_Tools Box60
-  set Box60.Params "156 276 97 0 0 1"
 
 new vtk:ImageVtkProperties Box68
 
 
 new vtk:ImageVtkProperties Box68
 
@@ -288,6 +287,20 @@ new wx:OutputText Box139
 new std:VectorFilterDouble Box140
   set Box140.Type "14"
 
 new std:VectorFilterDouble Box140
   set Box140.Type "14"
 
+new std:MagicBox Box141
+
+new std:MagicBox Box142
+
+new std:ConcatStrings Box143
+  set Box143.In2 "  "
+  set Box143.In4 "  "
+  set Box143.In6 "  "
+
+new creaVtk:TransformVector Box144
+  set Box144.InX "0"
+  set Box144.InY "1"
+  set Box144.InZ "0"
+
 
 connect Box06.LstContourPointsX Box04.LstX
 connect showNpoints.lstIndexs Box06.LstIndexsIn
 
 connect Box06.LstContourPointsX Box04.LstX
 connect showNpoints.lstIndexs Box06.LstIndexsIn
@@ -451,6 +464,12 @@ connect Box140.Out0 Box29.LstControlPointsX
 connect Box140.Out1 Box29.LstControlPointsY
 connect Box140.Out2 Box29.LstControlPointsZ
 connect Box140.Out3 Box29.LstIndexsIn
 connect Box140.Out1 Box29.LstControlPointsY
 connect Box140.Out2 Box29.LstControlPointsZ
 connect Box140.Out3 Box29.LstIndexsIn
+connect Box142.Out Box143.In1
+connect Box141.Out Box144.Transform
+connect Box144.OutX Box143.In3
+connect Box144.OutY Box143.In5
+connect Box144.OutZ Box143.In7
+connect Box143.Out Box60.Params
 
 # Complex input ports
 input point showNpoints.In " "
 
 # Complex input ports
 input point showNpoints.In " "
@@ -463,6 +482,8 @@ input wxvtkbaseview2 Box64.In " "
 input wxvtkbaseview3 Box65.In " "
 input wxvtkbaseview4 Box69.In " "
 input wxvtkbaseview1 Box71.In " "
 input wxvtkbaseview3 Box65.In " "
 input wxvtkbaseview4 Box69.In " "
 input wxvtkbaseview1 Box71.In " "
+input freeplane_transform Box141.In " "
+input freeplane_point Box142.In " "
 
 # Complex output ports
 output widget Box08.Widget " "
 
 # Complex output ports
 output widget Box08.Widget " "
index aed6670333cdec8d69585f2f275feafa99599405..b632bc5ce813667d097345635641540653b42fbe 100644 (file)
@@ -38,6 +38,8 @@ public:
     void OnReset(wxCommandEvent& event);
     void OnMoveDown(wxCommandEvent& event);
     void OnMoveUp(wxCommandEvent& event);
     void OnReset(wxCommandEvent& event);
     void OnMoveDown(wxCommandEvent& event);
     void OnMoveUp(wxCommandEvent& event);
+    void OnMemory(wxCommandEvent& event);
+    void OnMemoryGoBack(wxCommandEvent& event);
     void OnSliderGeneralTrack(wxScrollEvent& event);
     void OnSliderGeneralRelease(wxScrollEvent& event);
     
     void OnSliderGeneralTrack(wxScrollEvent& event);
     void OnSliderGeneralRelease(wxScrollEvent& event);
     
@@ -48,6 +50,8 @@ private:
     std::vector<double>     mPossiblePoint;
     std::vector<double>     mLastPossiblePoint_localReference;
     std::vector<double>     mActualPoint;
     std::vector<double>     mPossiblePoint;
     std::vector<double>     mLastPossiblePoint_localReference;
     std::vector<double>     mActualPoint;
+    std::vector<double>     mMemoryPoint;
+    vtkMatrix4x4            *mMemoryMatrix;
     TransformWidget2        *mBox;
     
     // Type : Module A
     TransformWidget2        *mBox;
     
     // Type : Module A
@@ -68,8 +72,9 @@ TransformWidgetPanel::TransformWidgetPanel(TransformWidget2* box, wxWindow *pare
   : wxPanel( parent, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL),
   mBox(box)
 {
   : wxPanel( parent, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL),
   mBox(box)
 {
-    t                       = vtkTransform::New();
-    tt                      = vtkTransform::New();
+    t                       = vtkTransform::New();   // Transoform activa
+    tt                      = vtkTransform::New();   // Transform temporal para el slider
+    mMemoryMatrix           = vtkMatrix4x4::New();
     mttActualPoint.push_back(0);
     mttActualPoint.push_back(0);
     mttActualPoint.push_back(0);
     mttActualPoint.push_back(0);
     mttActualPoint.push_back(0);
     mttActualPoint.push_back(0);
@@ -113,28 +118,32 @@ TransformWidgetPanel::TransformWidgetPanel(TransformWidget2* box, wxWindow *pare
     
     if (mBox->bbGetInputType()==1)
     {
     
     if (mBox->bbGetInputType()==1)
     {
-        sizeSliderWidget.Set(250,-1    );
-        sizeButton.Set( 45 , -1 );
-        wxRadioButton *rBtnX    = new wxRadioButton( this, -1, _T("ri")         , wxDefaultPosition    , wxDefaultSize , wxRB_GROUP);
-        wxRadioButton *rBtnY    = new wxRadioButton( this, -1, _T("rj")         , wxDefaultPosition    , wxDefaultSize , 0);
-        wxRadioButton *rBtnZ    = new wxRadioButton( this, -1, _T("rk")         , wxDefaultPosition    , wxDefaultSize , 0);
-        wxRadioButton *rBtnC    = new wxRadioButton( this, -1, _T("Cen")        , wxDefaultPosition   , wxDefaultSize , 0);
+        sizeSliderWidget.Set( 160 , -1 );
+        sizeButton.Set( 20 , -1 );
+        wxRadioButton *rBtnX     = new wxRadioButton( this, -1, _T("ri")         , wxDefaultPosition  , wxDefaultSize , wxRB_GROUP   );
+        wxRadioButton *rBtnY     = new wxRadioButton( this, -1, _T("rj")         , wxDefaultPosition  , wxDefaultSize , 0            );
+        wxRadioButton *rBtnZ     = new wxRadioButton( this, -1, _T("rk")         , wxDefaultPosition  , wxDefaultSize , 0            );
+        wxRadioButton *rBtnC     = new wxRadioButton( this, -1, _T("Cen")        , wxDefaultPosition  , wxDefaultSize , 0)           ;
         rBtnC->SetValue(true);        mTool = 3;
         rBtnC->SetValue(true);        mTool = 3;
-        mSliderGeneral          = new wxSlider     ( this, -1, 0 , -180, 180    , wxDefaultPosition,sizeSliderWidget ,wxSL_HORIZONTAL, wxDefaultValidator                                   );
-        cbLocalReference        = new wxCheckBox   ( this,-1, _T("Loc Ref")     , wxDefaultPosition,wxDefaultSize    ,wxCHK_2STATE | wxALIGN_RIGHT                                          );
-        wxButton *mBtnMoveDown  = new wxButton     ( this, -1, _T("-")          , wxDefaultPosition, sizeButton                                                                             );
-        wxButton *mBtnMoveUp    = new wxButton     ( this, -1, _T("+")          , wxDefaultPosition, sizeButton                                                                             );
-        wxButton *mBtnReset     = new wxButton     ( this, -1, _T("Reset")      , wxDefaultPosition, sizeButton                                                                             );
-        Connect( rBtnX->GetId()         , wxEVT_COMMAND_RADIOBUTTON_SELECTED    , (wxObjectEventFunction)(void (wxPanel::*)(wxEvent&)) &TransformWidgetPanel::OnRadioButtonX                );
-        Connect( rBtnY->GetId()         , wxEVT_COMMAND_RADIOBUTTON_SELECTED    , (wxObjectEventFunction)(void (wxPanel::*)(wxEvent&)) &TransformWidgetPanel::OnRadioButtonY                );
-        Connect( rBtnZ->GetId()         , wxEVT_COMMAND_RADIOBUTTON_SELECTED    , (wxObjectEventFunction)(void (wxPanel::*)(wxEvent&)) &TransformWidgetPanel::OnRadioButtonZ                );
-        Connect( rBtnC->GetId()         , wxEVT_COMMAND_RADIOBUTTON_SELECTED    , (wxObjectEventFunction)(void (wxPanel::*)(wxEvent&)) &TransformWidgetPanel::OnRadioButtonN                );
-        Connect(mBtnReset->GetId()      , wxEVT_COMMAND_BUTTON_CLICKED          , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnReset                 );
-        Connect(mBtnMoveDown->GetId()   , wxEVT_COMMAND_BUTTON_CLICKED          , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnMoveDown              );
-        Connect(mBtnMoveUp->GetId()     , wxEVT_COMMAND_BUTTON_CLICKED          , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnMoveUp                );
-        Connect( mSliderGeneral->GetId(), wxEVT_SCROLL_THUMBRELEASE             , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnSliderGeneralRelease  );
-        Connect( mSliderGeneral->GetId(), wxEVT_SCROLL_THUMBTRACK               , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnSliderGeneralTrack    );
-        Connect( mSliderGeneral->GetId(), wxEVT_SCROLL_CHANGED                  , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnSliderGeneralTrack    );
+        mSliderGeneral           = new wxSlider     ( this, -1, 0 , -180, 180    , wxDefaultPosition,sizeSliderWidget ,wxSL_HORIZONTAL, wxDefaultValidator                                   );
+        cbLocalReference         = new wxCheckBox   ( this,-1, _T("Loc Ref")     , wxDefaultPosition,wxDefaultSize    ,wxCHK_2STATE | wxALIGN_RIGHT                                          );
+        wxButton *BtnMoveDown    = new wxButton     ( this, -1, _T("-")          , wxDefaultPosition, sizeButton                                                                             );
+        wxButton *BtnMoveUp      = new wxButton     ( this, -1, _T("+")          , wxDefaultPosition, sizeButton                                                                             );
+        wxButton *BtnReset       = new wxButton     ( this, -1, _T("Init")      , wxDefaultPosition, sizeButton                                                                             );
+        wxButton *BtnMemory      = new wxButton     ( this, -1, _T("Set")       , wxDefaultPosition, sizeButton                                                                             );
+        wxButton *BtnMemoryGoBack= new wxButton     ( this, -1, _T("Reset")       , wxDefaultPosition, sizeButton                                                                             );
+        Connect( rBtnX->GetId()          , wxEVT_COMMAND_RADIOBUTTON_SELECTED    , (wxObjectEventFunction)(void (wxPanel::*)(wxEvent&)) &TransformWidgetPanel::OnRadioButtonX                );
+        Connect( rBtnY->GetId()          , wxEVT_COMMAND_RADIOBUTTON_SELECTED    , (wxObjectEventFunction)(void (wxPanel::*)(wxEvent&)) &TransformWidgetPanel::OnRadioButtonY                );
+        Connect( rBtnZ->GetId()          , wxEVT_COMMAND_RADIOBUTTON_SELECTED    , (wxObjectEventFunction)(void (wxPanel::*)(wxEvent&)) &TransformWidgetPanel::OnRadioButtonZ                );
+        Connect( rBtnC->GetId()          , wxEVT_COMMAND_RADIOBUTTON_SELECTED    , (wxObjectEventFunction)(void (wxPanel::*)(wxEvent&)) &TransformWidgetPanel::OnRadioButtonN                );
+        Connect( BtnReset->GetId()       , wxEVT_COMMAND_BUTTON_CLICKED          , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnReset                 );
+        Connect( BtnMoveDown->GetId()    , wxEVT_COMMAND_BUTTON_CLICKED          , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnMoveDown              );
+        Connect( BtnMoveUp->GetId()      , wxEVT_COMMAND_BUTTON_CLICKED          , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnMoveUp                );
+        Connect( BtnMemory->GetId()      , wxEVT_COMMAND_BUTTON_CLICKED          , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnMemory                );
+        Connect( BtnMemoryGoBack->GetId(), wxEVT_COMMAND_BUTTON_CLICKED          , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnMemoryGoBack          );
+        Connect( mSliderGeneral->GetId() , wxEVT_SCROLL_THUMBRELEASE             , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnSliderGeneralRelease  );
+        Connect( mSliderGeneral->GetId() , wxEVT_SCROLL_THUMBTRACK               , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnSliderGeneralTrack    );
+        Connect( mSliderGeneral->GetId() , wxEVT_SCROLL_CHANGED                  , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &TransformWidgetPanel::OnSliderGeneralTrack    );
         
         wxBoxSizer *sizerA = new wxBoxSizer(wxHORIZONTAL);
         sizerA->Add( rBtnC              , 1 );
         
         wxBoxSizer *sizerA = new wxBoxSizer(wxHORIZONTAL);
         sizerA->Add( rBtnC              , 1 );
@@ -142,12 +151,14 @@ TransformWidgetPanel::TransformWidgetPanel(TransformWidget2* box, wxWindow *pare
         sizerA->Add( rBtnY              , 1 );
         sizerA->Add( rBtnZ              , 1 );
         wxBoxSizer *sizerB = new wxBoxSizer(wxHORIZONTAL);
         sizerA->Add( rBtnY              , 1 );
         sizerA->Add( rBtnZ              , 1 );
         wxBoxSizer *sizerB = new wxBoxSizer(wxHORIZONTAL);
-        sizerB->Add( mSliderGeneral     , 0 );
+        sizerB->Add( mSliderGeneral     , 1 );
+        sizerB->Add( BtnMoveDown        , 0 );
+        sizerB->Add( BtnMoveUp          , 0 );
         wxBoxSizer *sizerC = new wxBoxSizer(wxHORIZONTAL);
         sizerC->Add( cbLocalReference   , 1 );
         wxBoxSizer *sizerC = new wxBoxSizer(wxHORIZONTAL);
         sizerC->Add( cbLocalReference   , 1 );
-        sizerC->Add( mBtnReset          , 1 );
-        sizerC->Add( mBtnMoveDown       , 1 );
-        sizerC->Add( mBtnMoveUp         , 1 );
+        sizerC->Add( BtnReset           , 1 );
+        sizerC->Add( BtnMemory          , 1 );
+        sizerC->Add( BtnMemoryGoBack    , 1 );
         wxBoxSizer *sizer = new wxBoxSizer(wxVERTICAL);
         sizer->Add( sizerA              , 0 );
         sizer->Add( sizerB              , 0 );
         wxBoxSizer *sizer = new wxBoxSizer(wxVERTICAL);
         sizer->Add( sizerA              , 0 );
         sizer->Add( sizerB              , 0 );
@@ -374,6 +385,27 @@ void TransformWidgetPanel::OnMoveUp(wxCommandEvent& event)
     } // if mTool == 3
 }
 
     } // if mTool == 3
 }
 
+void TransformWidgetPanel::OnMemory(wxCommandEvent& event)
+{
+    mMemoryPoint            = mActualPoint;
+    mMemoryMatrix->DeepCopy( t->GetMatrix() );
+}
+
+void TransformWidgetPanel::OnMemoryGoBack(wxCommandEvent& event)
+{
+    mActualPoint = mMemoryPoint;
+    t->GetMatrix()->Identity();
+    vtkMatrix4x4 *m = vtkMatrix4x4::New();
+    m->DeepCopy( mMemoryMatrix );
+    t->SetMatrix( m );
+    mBox->bbSetOutputActualPoint( mActualPoint );
+    mBox->bbSignalOutputModification(std::string("ActualPoint"));
+    mBox->bbSetOutputOut( t );
+    mBox->bbSignalOutputModification(std::string("Out"));
+}
+
+
+
 void TransformWidgetPanel::OnSliderGeneralRelease(wxScrollEvent& event)
 {
     if ((mTool>=0) && (mTool<=2))
 void TransformWidgetPanel::OnSliderGeneralRelease(wxScrollEvent& event)
 {
     if ((mTool>=0) && (mTool<=2))
index b4ba379963e38cee8124ace5da22e20ca395dd54..b5ed682a8c1aafaf4da5d19d909f2657e11084ab 100644 (file)
@@ -90,7 +90,8 @@ void ViewShowNPoints::AddVtkPoint()
         printf("EED ShowNPoints Warning: Renderer Not Set\n");
         return;
     }
         printf("EED ShowNPoints Warning: Renderer Not Set\n");
         return;
     }
-    
+
+    lstActorAdded.push_back(true);
     renderer->AddActor( sphereActor );
     // Actor
     vtkTextActor3D *textActor = vtkTextActor3D::New();
     renderer->AddActor( sphereActor );
     // Actor
     vtkTextActor3D *textActor = vtkTextActor3D::New();
@@ -127,6 +128,7 @@ void ViewShowNPoints::ErasePoint(int id)
             lstActorsSphere.erase( lstActorsSphere.begin()+id );
             lstActorsText.erase( lstActorsText.begin()+id );
             lstSourceSphere.erase( lstSourceSphere.begin()+id );
             lstActorsSphere.erase( lstActorsSphere.begin()+id );
             lstActorsText.erase( lstActorsText.begin()+id );
             lstSourceSphere.erase( lstSourceSphere.begin()+id );
+            lstActorAdded.erase( lstActorAdded.begin()+id );
         } // if id
     } // if renderer
 }
         } // if id
     } // if renderer
 }
@@ -142,3 +144,34 @@ void ViewShowNPoints::SetModelShowNPoints( ModelShowNPoints*  modelShowNPoints)
 {
     mmodelShowNPoints = modelShowNPoints;
 }
 {
     mmodelShowNPoints = modelShowNPoints;
 }
+
+//------------------------------------------------------------------------
+void ViewShowNPoints::TryToShowActorInRender( int id, bool show )
+{
+    if (show==false)  // try to remove actor to render
+    {
+        if (lstActorAdded[id]==true)
+        {
+            lstActorAdded[id]=false;
+            renderer->RemoveActor( lstActorsSphere[id] );
+            renderer->RemoveActor( lstActorsText[id] );
+        } // if lstActorAdded  true
+    } else { // try to add actor to render
+        if (lstActorAdded[id]==false)
+        {
+            lstActorAdded[id]=true;
+            renderer->AddActor( lstActorsSphere[id] );
+            renderer->AddActor( lstActorsText[id] );
+        } // if lstActorAdded  false
+    } // if show
+}
+
+//------------------------------------------------------------------------
+void ViewShowNPoints::TryToShowActorsInRender( bool show )
+{
+    int id,size=lstActorsSphere.size();
+    for (id=0;id<size;id++)
+    {
+        TryToShowActorInRender( id, show );
+    } // for id
+}
index 468c53eae6854a9d7215dce21a2b55f5cdd850d0..2abe86e6f1ebbed18f5683962c965b2cf0b14944 100644 (file)
@@ -29,10 +29,13 @@ class ViewShowNPoints
       void AddPoint();
       void Render();
       void ErasePoint(int id);
       void AddPoint();
       void Render();
       void ErasePoint(int id);
-      
+      void TryToShowActorInRender( int id, bool show );
+      void TryToShowActorsInRender( bool show );
+
       std::vector<vtkActor*>            lstActorsSphere;//NTU changed from prop3D to Actor
       std::vector<vtkTextActor3D*>      lstActorsText;
       std::vector<vtkSphereSource*>     lstSourceSphere;
       std::vector<vtkActor*>            lstActorsSphere;//NTU changed from prop3D to Actor
       std::vector<vtkTextActor3D*>      lstActorsText;
       std::vector<vtkSphereSource*>     lstSourceSphere;
+      std::vector<bool>                 lstActorAdded;
       std::vector<double>               mcolour;
       double                            mopacity;
       double                            ratioRadio;
       std::vector<double>               mcolour;
       double                            mopacity;
       double                            ratioRadio;
index c5b080843b2745bd1237be6e83fefa5a3bcd0b05..36c6a840eb1893f82033e0fbbbc8a1cd4ef93265 100644 (file)
                               wxDefaultSize,
                               wxNB_TOP );
           panel2  = new wxPanel(bookGroupManager);
                               wxDefaultSize,
                               wxNB_TOP );
           panel2  = new wxPanel(bookGroupManager);
-          cbVisuActualCollection                = new wxCheckBox    ( panel2,-1, _T("A.V.")   ,   wxDefaultPosition, sizeButton );
+          cbVisuActualCollection                = new wxCheckBox    ( panel2,-1, _T("Cur.")   ,   wxDefaultPosition, sizeButton );
           txtNrCollections                      = new wxStaticText  ( panel2,-1, _T("    1/1    "));
           wxButton *btnBackCollection           = new wxButton      ( panel2, -1, _T("<")     ,   wxDefaultPosition, sizeButton );
           wxButton *btnNextCollection           = new wxButton      ( panel2, -1, _T(">")     ,   wxDefaultPosition, sizeButton );
           txtNrCollections                      = new wxStaticText  ( panel2,-1, _T("    1/1    "));
           wxButton *btnBackCollection           = new wxButton      ( panel2, -1, _T("<")     ,   wxDefaultPosition, sizeButton );
           wxButton *btnNextCollection           = new wxButton      ( panel2, -1, _T(">")     ,   wxDefaultPosition, sizeButton );
           wxFlexGridSizer *sizer7               = new wxFlexGridSizer(2);
           wxFlexGridSizer *sizer8               = new wxFlexGridSizer(2);
         
           wxFlexGridSizer *sizer7               = new wxFlexGridSizer(2);
           wxFlexGridSizer *sizer8               = new wxFlexGridSizer(2);
         
-          cbVisuActualCollection      -> SetToolTip( _T("Visu actual collection") );
+          cbVisuActualCollection      -> SetToolTip( _T("Current group") );
           btnInsertCollectionBefore   -> SetToolTip( _T("+  Add group before") );
           btnInsertCollectionAfter    -> SetToolTip( _T("+>  Add group after") );
           btnDeleteCollection         -> SetToolTip( _T("-  Erase group") );
           btnInsertCollectionBefore   -> SetToolTip( _T("+  Add group before") );
           btnInsertCollectionAfter    -> SetToolTip( _T("+>  Add group after") );
           btnDeleteCollection         -> SetToolTip( _T("-  Erase group") );
@@ -668,10 +668,12 @@ void WidgetShowNPoints::OnInsertPoint_()
     
     StopAutoAddPoints();
     StopTrackPoint();
     
     StopAutoAddPoints();
     StopTrackPoint();
+
     if (GetViewShowNPoints()->renderer==NULL)
     {
         return;
     }
     if (GetViewShowNPoints()->renderer==NULL)
     {
         return;
     }
+    UndoRedo_SaveCollection(); //A
     std::vector<double> point = GetModelShowNPoints()->GetReferencePoint();
     if (point.size()==3)
     {
     std::vector<double> point = GetModelShowNPoints()->GetReferencePoint();
     if (point.size()==3)
     {
@@ -682,7 +684,7 @@ void WidgetShowNPoints::OnInsertPoint_()
     }
     RefreshCollectionText();
     RefreshColourCollection();
     }
     RefreshCollectionText();
     RefreshColourCollection();
-    UndoRedo_SaveCollection();
+    UndoRedo_SaveCollection(); //B
 }
 
 //------------------------------------------------------------------------
 }
 
 //------------------------------------------------------------------------
@@ -703,12 +705,13 @@ void WidgetShowNPoints::OnAddPoint__()
        std::vector<double> point = GetModelShowNPoints()->GetReferencePoint();
        if (point.size()==3)
        {
        std::vector<double> point = GetModelShowNPoints()->GetReferencePoint();
        if (point.size()==3)
        {
+        UndoRedo_SaveCollection(); //A
                AddPoint(point[0],point[1],point[2], (const char*) ( textCtrl->GetValue().mb_str() ) );
         SetOutputBox();
         // EED 2022-05-19
         //renderer->GetRenderWindow()->Render();
         GetViewShowNPoints()->Render();
                AddPoint(point[0],point[1],point[2], (const char*) ( textCtrl->GetValue().mb_str() ) );
         SetOutputBox();
         // EED 2022-05-19
         //renderer->GetRenderWindow()->Render();
         GetViewShowNPoints()->Render();
-        UndoRedo_SaveCollection();
+        UndoRedo_SaveCollection(); //B
        } else {//mpoint.size
                printf("creaMaracasVisu::ShowNPoints (not match point) \n");
        }
        } else {//mpoint.size
                printf("creaMaracasVisu::ShowNPoints (not match point) \n");
        }
@@ -867,6 +870,8 @@ void WidgetShowNPoints::StopAutoAddPoints( )
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnSetPoint_()
 {
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnSetPoint_()
 {
+    UndoRedo_SaveCollection(); //A
+
     StopAutoAddPoints();
     StopTrackPoint();
 
     StopAutoAddPoints();
     StopTrackPoint();
 
@@ -891,7 +896,7 @@ void WidgetShowNPoints::OnSetPoint_()
     RefreshCollectionText();
     RefreshColourCollection();
     SetOutputBox();
     RefreshCollectionText();
     RefreshColourCollection();
     SetOutputBox();
-    UndoRedo_SaveCollection();
+    UndoRedo_SaveCollection(); //B
 }
 
 //------------------------------------------------------------------------
 }
 
 //------------------------------------------------------------------------
@@ -935,7 +940,6 @@ void WidgetShowNPoints::MovePoint_(double step)
                 if (dataArrayNormals!=NULL)
                 {
                     dataArrayNormals->GetTuple(idMeshPoint, normal);
                 if (dataArrayNormals!=NULL)
                 {
                     dataArrayNormals->GetTuple(idMeshPoint, normal);
-                    
                     int direction = step;
     //                pN[0] = p[0] / spc[0] + direction*normal[0];
     //                pN[1] = p[1] / spc[1] + direction*normal[1];
                     int direction = step;
     //                pN[0] = p[0] / spc[0] + direction*normal[0];
     //                pN[1] = p[1] / spc[1] + direction*normal[1];
@@ -943,12 +947,13 @@ void WidgetShowNPoints::MovePoint_(double step)
                     pN[0] = x + (direction * normal[0]);
                     pN[1] = y + (direction * normal[1]);
                     pN[2] = z + (direction * normal[2]);
                     pN[0] = x + (direction * normal[0]);
                     pN[1] = y + (direction * normal[1]);
                     pN[2] = z + (direction * normal[2]);
+                    UndoRedo_SaveCollection(); //A
                     GetModelShowNPoints()->SetPointById(idControlPoint, pN);
         //          GetViewShowNPoints()->RefreshPoint(idControlPoint);
     //                RefreshCollectionText();
     //                RefreshColourCollection();
     //                SetOutputBox();
                     GetModelShowNPoints()->SetPointById(idControlPoint, pN);
         //          GetViewShowNPoints()->RefreshPoint(idControlPoint);
     //                RefreshCollectionText();
     //                RefreshColourCollection();
     //                SetOutputBox();
-                    UndoRedo_SaveCollection();
+                    UndoRedo_SaveCollection(); //B
                 } else {
                     printf("Error!  WidgetShowNPoints::MovePoint_  Missing normals in aux_mesh  \n");
                 }
                 } else {
                     printf("Error!  WidgetShowNPoints::MovePoint_  Missing normals in aux_mesh  \n");
                 }
@@ -999,11 +1004,12 @@ void WidgetShowNPoints::MovePoint_(double step)
                 v[1] = 0;
                 v[2] = 0;
             }// if mag
                 v[1] = 0;
                 v[2] = 0;
             }// if mag
+            UndoRedo_SaveCollection(); //A
             point.push_back( p[0] + step*v[0] );
             point.push_back( p[1] + step*v[1] );
             point.push_back( p[2] + step*v[2] );
             GetModelShowNPoints()->SetPointById(id,point);
             point.push_back( p[0] + step*v[0] );
             point.push_back( p[1] + step*v[1] );
             point.push_back( p[2] + step*v[2] );
             GetModelShowNPoints()->SetPointById(id,point);
-            UndoRedo_SaveCollection();
+            UndoRedo_SaveCollection(); //B
      } // if id
     } // if aux_mesh
  RefreshCollectionText();
      } // if id
     } // if aux_mesh
  RefreshCollectionText();
@@ -1039,6 +1045,7 @@ void WidgetShowNPoints::TrackingPoint( )
         
         if (idTrack>=0)
         {
         
         if (idTrack>=0)
         {
+            UndoRedo_SaveCollection(); //A
             GetModelShowNPoints()->SetPointId_mReferencePoint(idTrack);
             
             RefreshCollectionText();
             GetModelShowNPoints()->SetPointId_mReferencePoint(idTrack);
             
             RefreshCollectionText();
@@ -1046,7 +1053,7 @@ void WidgetShowNPoints::TrackingPoint( )
 
 //            GetViewShowNPoints()->RefreshPoint(idTrack);
 //            GetViewShowNPoints()->Render();
 
 //            GetViewShowNPoints()->RefreshPoint(idTrack);
 //            GetViewShowNPoints()->Render();
-            UndoRedo_SaveCollection();
+            UndoRedo_SaveCollection(); //B
         } // if id
     } // if trackPointFlag
 }
         } // if id
     } // if trackPointFlag
 }
@@ -1094,10 +1101,11 @@ void WidgetShowNPoints::StopTrackPoint( )
             // EED 2022-05-19
                        //lstActorsText[id]->SetInput(  (const char*) ( textCtrl->GetValue().mb_str() ) );
                        //renderer->GetRenderWindow()->Render();
             // EED 2022-05-19
                        //lstActorsText[id]->SetInput(  (const char*) ( textCtrl->GetValue().mb_str() ) );
                        //renderer->GetRenderWindow()->Render();
+            UndoRedo_SaveCollection(); //A
             GetViewShowNPoints()->lstActorsText[id]->SetInput(  (const char*) ( textCtrl->GetValue().mb_str() ) );
             GetViewShowNPoints()->Render();
             SetOutputBox();
             GetViewShowNPoints()->lstActorsText[id]->SetInput(  (const char*) ( textCtrl->GetValue().mb_str() ) );
             GetViewShowNPoints()->Render();
             SetOutputBox();
-            UndoRedo_SaveCollection();
+            UndoRedo_SaveCollection(); //B
                } // if id
        }
 
                } // if id
        }
 
@@ -1135,6 +1143,7 @@ void WidgetShowNPoints::StopTrackPoint( )
         StopTrackPoint();
 
         //ErasePoint( GetModelShowNPoints()->IdInsidePoint() );
         StopTrackPoint();
 
         //ErasePoint( GetModelShowNPoints()->IdInsidePoint() );
+        UndoRedo_SaveCollection(); //A
         if (ErasePoint( GetModelShowNPoints()->GetIdCurrentPoint() ) == true)
         {
             SetOutputBox();
         if (ErasePoint( GetModelShowNPoints()->GetIdCurrentPoint() ) == true)
         {
             SetOutputBox();
@@ -1144,7 +1153,7 @@ void WidgetShowNPoints::StopTrackPoint( )
             RefreshCollectionText();
             RefreshColourCollection();
             StopTrackPoint();
             RefreshCollectionText();
             RefreshColourCollection();
             StopTrackPoint();
-            UndoRedo_SaveCollection();
+            UndoRedo_SaveCollection(); //B
         }
     }
 
         }
     }
 
@@ -1163,13 +1172,14 @@ void WidgetShowNPoints::StopTrackPoint( )
         StopAutoAddPoints();
         StopTrackPoint();
 
         StopAutoAddPoints();
         StopTrackPoint();
 
+        UndoRedo_SaveCollection(); //A
         int id = GetViewShowNPoints()->lstActorsSphere.size()-1;
         ErasePoint( id );
         
         RefreshCollectionText();
         RefreshColourCollection();
         
         int id = GetViewShowNPoints()->lstActorsSphere.size()-1;
         ErasePoint( id );
         
         RefreshCollectionText();
         RefreshColourCollection();
         
-        UndoRedo_SaveCollection();
+        UndoRedo_SaveCollection(); //B
         GetViewShowNPoints()->Render();
         SetOutputBox();
         StopTrackPoint();
         GetViewShowNPoints()->Render();
         SetOutputBox();
         StopTrackPoint();
@@ -1192,8 +1202,9 @@ void WidgetShowNPoints::OnDeleteAllPoints_()
     StopAutoAddPoints();
     StopTrackPoint();
 
     StopAutoAddPoints();
     StopTrackPoint();
 
+    UndoRedo_SaveCollection(); //A
     DeleteAllPoints_();
     DeleteAllPoints_();
-    UndoRedo_SaveCollection();
+    UndoRedo_SaveCollection(); //B
 }
 
 //------------------------------------------------------------------------
 }
 
 //------------------------------------------------------------------------
@@ -1407,9 +1418,10 @@ void WidgetShowNPoints::InsertCollectionBefore_()
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnInsertCollectionBefore_()
 {
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnInsertCollectionBefore_()
 {
+    UndoRedo_SaveCollection(); //A
     InsertCollectionBefore_();
     CreatePointsIntoNewCollection();
     InsertCollectionBefore_();
     CreatePointsIntoNewCollection();
-    UndoRedo_SaveCollection();
+    UndoRedo_SaveCollection(); //B
 }
 
 
 }
 
 
@@ -1434,9 +1446,10 @@ void WidgetShowNPoints::InsertCollectionAfter_()
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnInsertCollectionAfter_()
 {
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnInsertCollectionAfter_()
 {
+    UndoRedo_SaveCollection(); //A
     InsertCollectionAfter_();
     CreatePointsIntoNewCollection();
     InsertCollectionAfter_();
     CreatePointsIntoNewCollection();
-    UndoRedo_SaveCollection();
+    UndoRedo_SaveCollection(); //B
 }
 
 //------------------------------------------------------------------------
 }
 
 //------------------------------------------------------------------------
@@ -1576,13 +1589,14 @@ void WidgetShowNPoints::DeleteCollection_()
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnDeleteCollection_()
 {
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnDeleteCollection_()
 {
+    UndoRedo_SaveCollection(); //A
     DeleteCollection_();
     SetOutputBox();
     GetViewShowNPoints()->Render();
     RefreshCollectionText();
     RefreshColourCollection();
     StopTrackPoint();
     DeleteCollection_();
     SetOutputBox();
     GetViewShowNPoints()->Render();
     RefreshCollectionText();
     RefreshColourCollection();
     StopTrackPoint();
-    UndoRedo_SaveCollection();
+    UndoRedo_SaveCollection(); //B
 }
 
 //------------------------------------------------------------------------
 }
 
 //------------------------------------------------------------------------
@@ -1609,8 +1623,9 @@ void WidgetShowNPoints::ResetCollections_()
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnResetCollections_()
 {
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnResetCollections_()
 {
+    UndoRedo_SaveCollection(); //A
     ResetCollections_();
     ResetCollections_();
-    UndoRedo_SaveCollection();
+    UndoRedo_SaveCollection(); //B
 }
 
 
 }
 
 
@@ -1632,7 +1647,7 @@ void WidgetShowNPoints::OnBackCollection(wxCommandEvent &event)
     RefreshCollectionText();
     RefreshColourCollection();
     StopTrackPoint();
     RefreshCollectionText();
     RefreshColourCollection();
     StopTrackPoint();
-    UndoRedo_SaveCollection();
+//    UndoRedo_SaveCollection();
 }
 
 //------------------------------------------------------------------------
 }
 
 //------------------------------------------------------------------------
@@ -1647,7 +1662,7 @@ void WidgetShowNPoints::OnNextCollection(wxCommandEvent &event)
     RefreshCollectionText();
     RefreshColourCollection();
     StopTrackPoint();
     RefreshCollectionText();
     RefreshColourCollection();
     StopTrackPoint();
-    UndoRedo_SaveCollection();
+//    UndoRedo_SaveCollection();
 }
 
 //------------------------------------------------------------------------
 }
 
 //------------------------------------------------------------------------
@@ -1667,55 +1682,64 @@ void WidgetShowNPoints::DetectCollectionActive()
     RefreshColourCollection();
 }
 
     RefreshColourCollection();
 }
 
+
+
+
 //------------------------------------------------------------------------
 void WidgetShowNPoints::RefreshColourCollection()
 {
     UpdatePoints_();
     std::vector<double> colourAll;
 //------------------------------------------------------------------------
 void WidgetShowNPoints::RefreshColourCollection()
 {
     UpdatePoints_();
     std::vector<double> colourAll;
-    colourAll.push_back(1);
-    colourAll.push_back(0);
     colourAll.push_back(0);
     colourAll.push_back(0);
+    colourAll.push_back(1);
+    colourAll.push_back(1);
     std::vector<double> colourActualGroup;
     colourActualGroup.push_back(1);
     std::vector<double> colourActualGroup;
     colourActualGroup.push_back(1);
-    colourActualGroup.push_back(1);
     colourActualGroup.push_back(0);
     colourActualGroup.push_back(0);
-
+    colourActualGroup.push_back(0);
     // For all collections
     SetColour( colourAll );
     // For all collections
     SetColour( colourAll );
-    int i,size=lstViewShowNPoints.size();
-    for (i=0;i<size;i++)
+    int sizeLstPoints;
+    int iCollection,sizeLstCollection=lstViewShowNPoints.size();
+    for ( iCollection=0 ; iCollection<sizeLstCollection ; iCollection++ )
     {
     {
-        lstViewShowNPoints[i] -> mcolour    = colourAll;
-        lstViewShowNPoints[i] -> ratioRadio = 1;
-        if ((cbVisuActualCollection!=NULL) && (cbVisuActualCollection->GetValue()==true))
+        if (iCollection==mActualCollection)
         {
         {
-            lstViewShowNPoints[i] -> mopacity   = 0.0;
+            // Actual collection
+            lstViewShowNPoints[mActualCollection] -> mcolour = colourActualGroup;
+            lstViewShowNPoints[mActualCollection] -> mopacity   = sCtrlOpacity->GetValue()*10.0/100.0;
+            lstViewShowNPoints[mActualCollection] -> ratioRadio = 1.2;
+            lstViewShowNPoints[mActualCollection] -> RefreshEachPoint();
+            
+            //Actual Point
+            int curPnt      = lstModelShowNPoints[mActualCollection]->GetIdCurrentPoint();
+            sizeLstPoints   = lstModelShowNPoints[mActualCollection]->GetLstPointsSize();
+            if ((curPnt>=0)  && (curPnt<sizeLstPoints  ) )
+            {
+                std::vector<double> colourActualPoint;
+                colourActualPoint.push_back(1);
+                colourActualPoint.push_back(1);
+                colourActualPoint.push_back(0);
+                double radio          = GetModelShowNPoints()->GetRadio();
+                lstViewShowNPoints[mActualCollection] -> mcolour  = colourActualPoint;
+                lstViewShowNPoints[mActualCollection]->RefreshPoint( curPnt   );
+                lstViewShowNPoints[mActualCollection] -> mcolour = colourActualGroup;
+            } // if
+            lstViewShowNPoints[mActualCollection]->TryToShowActorsInRender(true);
         } else {
         } else {
-            lstViewShowNPoints[i] -> mopacity   = sCtrlOpacity->GetValue()*10.0/100.0;
-        }
-        lstViewShowNPoints[i]->RefreshEachPoint();
+            lstViewShowNPoints[iCollection] -> mcolour    = colourAll;
+            lstViewShowNPoints[iCollection] -> ratioRadio = 1;
+            if ((cbVisuActualCollection!=NULL) && (cbVisuActualCollection->GetValue()==true))
+            {
+                lstViewShowNPoints[iCollection]->TryToShowActorsInRender(false);
+      //          lstViewShowNPoints[i] -> mopacity   = 0.0;
+            } else {
+                lstViewShowNPoints[iCollection]->TryToShowActorsInRender(true);
+      //          lstViewShowNPoints[i] -> mopacity   = sCtrlOpacity->GetValue()*10.0/100.0;
+            }
+            lstViewShowNPoints[iCollection]->RefreshEachPoint();
+        }// if mActualCollection
     } // for i
     } // for i
-    
-    // Actual collection
-    lstViewShowNPoints[mActualCollection] -> mcolour = colourActualGroup;
-    lstViewShowNPoints[mActualCollection] -> mopacity   = sCtrlOpacity->GetValue()*10.0/100.0;
-    lstViewShowNPoints[mActualCollection] -> ratioRadio = 1.1;
-    lstViewShowNPoints[mActualCollection] -> RefreshEachPoint();
-    
-    //Actual Point
-    int curPnt = lstModelShowNPoints[mActualCollection] -> GetIdCurrentPoint();
-    size=lstModelShowNPoints[mActualCollection]->GetLstPointsSize();
-    if ((curPnt>=0)  && (curPnt<size  ) )
-    {
-        std::vector<double> colourActualPoint;
-        colourActualPoint.push_back(0);
-        colourActualPoint.push_back(0);
-        colourActualPoint.push_back(1);
-        double radio          = GetModelShowNPoints()->GetRadio();
-        lstViewShowNPoints[mActualCollection] -> mcolour  = colourActualPoint;
-        lstViewShowNPoints[mActualCollection]->RefreshPoint( curPnt   );
-        lstViewShowNPoints[mActualCollection] -> mcolour = colourActualGroup;
-    } // if
     lstViewShowNPoints[mActualCollection] -> renderer->GetRenderWindow()->Render();
 }
 
     lstViewShowNPoints[mActualCollection] -> renderer->GetRenderWindow()->Render();
 }
 
@@ -1752,6 +1776,25 @@ void WidgetShowNPoints::OnSaveCollections_( std::string filename )
 
 }
 
 
 }
 
+//------------------------------------------------------------------------
+void WidgetShowNPoints::OnSaveCollectionsIdsCurrent_( std::string filename )
+{
+    FILE *ff;
+    ff = fopen( filename.c_str() , "w+" );
+    if (ff!=NULL)
+    {
+        int i,size = lstModelShowNPoints.size();
+        fprintf(ff,"ActualCollection %d \n",mActualCollection);
+        fprintf(ff,"NumberOfGroups %d \n",size);
+        for (i=0 ; i<size ; i++)
+        {
+            fprintf(ff,"CurrentIdPoint %d \n",lstModelShowNPoints[i]->GetIdCurrentPoint());
+        } // for i
+        fclose(ff);
+    } else {   // else ff
+        printf("WidgetShowNPoints::Save Groups Points  ...Error... creating file \n");
+    } //ff
+}
 
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnSaveCollections(wxCommandEvent &event)
 
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnSaveCollections(wxCommandEvent &event)
@@ -1831,6 +1874,31 @@ void WidgetShowNPoints::OnLoadCollections_( std::string filename )
     StopTrackPoint();
 }
 
     StopTrackPoint();
 }
 
+
+//------------------------------------------------------------------------
+void WidgetShowNPoints::OnLoadCollectionsIdsCurrent_( std::string filename )
+{
+    FILE *ff = fopen( filename.c_str() , "r+" );
+    int iGroup,sizeGroups;
+    int IdCurrentPoint;
+    char chartmp[256];
+    fscanf(ff," %s %d",chartmp,&mActualCollection);     // ActualCollection
+    fscanf(ff," %s %d",chartmp,&sizeGroups);            // NumberOfGroups
+    for (iGroup=0;iGroup<sizeGroups;iGroup++)
+    {
+        fscanf(ff," %s %d",chartmp,&IdCurrentPoint);  // CurrentPointId
+        lstModelShowNPoints[iGroup]->SetIdCurrentPoint( IdCurrentPoint );
+    } // for iGroup
+    
+    GetViewShowNPoints()->Render();
+    RefreshCollectionText();
+    RefreshColourCollection();
+
+}
+
+
+
+
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnLoadCollections(wxCommandEvent &event)
 {
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnLoadCollections(wxCommandEvent &event)
 {
@@ -1858,8 +1926,9 @@ void WidgetShowNPoints::OnLoadCollections(wxCommandEvent &event)
             if (FD->GetReturnCode()==wxID_OK)
             {
                 std::string filename= (const char*) ( FD->GetPath().mb_str() );
             if (FD->GetReturnCode()==wxID_OK)
             {
                 std::string filename= (const char*) ( FD->GetPath().mb_str() );
+                UndoRedo_SaveCollection(); // A
                 OnLoadCollections_( filename );
                 OnLoadCollections_( filename );
-                UndoRedo_SaveCollection();
+                UndoRedo_SaveCollection(); // B
             }     // dialog box
 }
 
             }     // dialog box
 }
 
@@ -2036,11 +2105,12 @@ void WidgetShowNPoints::InvertLstPoints_()
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnInvertLstPoints_()
 {
 //------------------------------------------------------------------------
 void WidgetShowNPoints::OnInvertLstPoints_()
 {
+    UndoRedo_SaveCollection(); // A
     StopAutoAddPoints();
     StopTrackPoint();
     InvertLstPoints_();
     SetOutputBox();
     StopAutoAddPoints();
     StopTrackPoint();
     InvertLstPoints_();
     SetOutputBox();
-    UndoRedo_SaveCollection();
+    UndoRedo_SaveCollection(); // B
 }
 
 
 }
 
 
@@ -2068,6 +2138,7 @@ void WidgetShowNPoints::OnUndo(wxCommandEvent &event)
         idUndoRedo=-1;
     } else {
         OnLoadCollections_( GetUndoRedoFileName() );
         idUndoRedo=-1;
     } else {
         OnLoadCollections_( GetUndoRedoFileName() );
+        OnLoadCollectionsIdsCurrent_( GetUndoRedoFileName()+".current" );
     }// if idUndoRedo
     idUndoRedo++;
 
     }// if idUndoRedo
     idUndoRedo++;
 
@@ -2082,6 +2153,7 @@ void WidgetShowNPoints::OnRedo(wxCommandEvent &event)
     } else {
         ResetCollections_();
         OnLoadCollections_( GetUndoRedoFileName() );
     } else {
         ResetCollections_();
         OnLoadCollections_( GetUndoRedoFileName() );
+        OnLoadCollectionsIdsCurrent_( GetUndoRedoFileName()+".current" );
         idUndoRedo++;
     }// if idUndoRedo
 }
         idUndoRedo++;
     }// if idUndoRedo
 }
@@ -2090,6 +2162,7 @@ void WidgetShowNPoints::OnRedo(wxCommandEvent &event)
 void WidgetShowNPoints::UndoRedo_SaveCollection()
 {
     OnSaveCollections_( GetUndoRedoFileName() );
 void WidgetShowNPoints::UndoRedo_SaveCollection()
 {
     OnSaveCollections_( GetUndoRedoFileName() );
+    OnSaveCollectionsIdsCurrent_( GetUndoRedoFileName()+".current" );
     maxUndoRedo = idUndoRedo;
     idUndoRedo++;
 }
     maxUndoRedo = idUndoRedo;
     idUndoRedo++;
 }
index 5ed2ea19225b999f1d9932ba460268336bc79298..79c111a595890a5ee341594d86679358abb547fb 100644 (file)
@@ -72,8 +72,10 @@ class WidgetShowNPoints : public wxPanel
       void OnNextCollection(wxCommandEvent &event);
       void OnSaveCollections(wxCommandEvent &event);
       void OnSaveCollections_( std::string filename );
       void OnNextCollection(wxCommandEvent &event);
       void OnSaveCollections(wxCommandEvent &event);
       void OnSaveCollections_( std::string filename );
+      void OnSaveCollectionsIdsCurrent_( std::string filename );
       void OnLoadCollections(wxCommandEvent &event);
       void OnLoadCollections_( std::string filename );
       void OnLoadCollections(wxCommandEvent &event);
       void OnLoadCollections_( std::string filename );
+      void OnLoadCollectionsIdsCurrent_( std::string filename );
       void ResetCollections_();
       void OnResetCollections_();
       void OnResetCollections(wxCommandEvent &event);
       void ResetCollections_();
       void OnResetCollections_();
       void OnResetCollections(wxCommandEvent &event);
index 5b561fb3b15a4dd4b29f354821d28f41191a0c0d..d0e98d0a28c072b03d1b5dc76770ff63e246dfa9 100644 (file)
@@ -317,17 +317,14 @@ void manualContourBaseControler::MouseDLeft(int x, int y )
 {
        if (_state==0)
        {
 {
        if (_state==0)
        {
-
                int z=GetZ();
                /*bool temp = */ _manViewBaseCont->SelectPosibleContour(x,y,z);
                int z=GetZ();
                /*bool temp = */ _manViewBaseCont->SelectPosibleContour(x,y,z);
-
                _manViewBaseCont->SelectPosiblePoint(x,y,z);
                _manViewBaseCont->SelectPosiblePoint(x,y,z);
-
                if ( _manViewBaseCont->GetPosibleSelected() )
                {
                        _editable = true;
                }
                if ( _manViewBaseCont->GetPosibleSelected() )
                {
                        _editable = true;
                }
-       }
+       } // if _state==0
 }
 // ----------------------------------------------------------------------------
 void manualContourBaseControler::MouseMove(int x, int y) // virtual
 }
 // ----------------------------------------------------------------------------
 void manualContourBaseControler::MouseMove(int x, int y) // virtual
index b5b93b431c101905787bbadcf1d4774fbe8046f0..c2008f43cc50e483e2e7f98e8bcdf6c08494a9a2 100644 (file)
@@ -587,32 +587,49 @@ bool manualViewBaseContour::SelectPosibleContour(int x, int y, int z)
        bool result=false;
        SetPosibleSelected(result);
     int id = GetIdPoint(x,y,z);
        bool result=false;
        SetPosibleSelected(result);
     int id = GetIdPoint(x,y,z);
-       
-       if( !GetEditable() && !_selected && id!= -1)
-       {
-               result=true;
-               _posibleSelected=true;          
-       }
-       else
+
+/* EED 2023-07-29
+    if( !GetEditable() && !_selected && id!= -1)
        {
        {
-               if ( (GetEditable()==true) && (id==-1 ) && (this->_lstViewPoints.size()>=2) )
+               result           = true;
+               _posibleSelected = true;
+       }else{
+        if ( (GetEditable()==true) && (id==-1 ) && (this->_lstViewPoints.size()>=2) )
                {
                        if (ifTouchContour(x,y,z)==true)
                        {
                {
                        if (ifTouchContour(x,y,z)==true)
                        {
-                               result=true;
+                               result = true;
                                SetPosibleSelected(result);
                                SetPosibleSelected(result);
-                       }
+                       } // ifTouchContour
                }
                }
-
                if (GetEditable()==false)
                {
                        if (ifTouchContour(x,y,z)==true)
                        {
                if (GetEditable()==false)
                {
                        if (ifTouchContour(x,y,z)==true)
                        {
-                               result=true;
+                               result = true;
                                SetPosibleSelected(result);
                                SetPosibleSelected(result);
-                       }
-               }
-       }
+                       } // ifTouchContor
+               } // if GetEditable
+       } // if !GetEditable() && !_selected && id!= -1
+*/
+
+       if ( (GetEditable()==true) && (id==-1 ) && (this->_lstViewPoints.size()>=2) )
+            {
+                if (ifTouchContour(x,y,z)==true)
+                {
+                    result = true;
+                    SetPosibleSelected(result);
+                } // ifTouchContour
+            }
+            if (GetEditable()==false)
+            {
+                if (ifTouchContour(x,y,z)==true)
+                {
+                    result = true;
+                    SetPosibleSelected(result);
+                } // ifTouchContor
+            } // if GetEditable
+    
        return result;
 }
 // ----------------------------------------------------------------------------
        return result;
 }
 // ----------------------------------------------------------------------------
@@ -632,7 +649,8 @@ void manualViewBaseContour::UnSelectLstPoints(){
 // ----------------------------------------------------------------------------
 void manualViewBaseContour::UnSelectAllPoints(){
        int i,size=_lstViewPoints.size();
 // ----------------------------------------------------------------------------
 void manualViewBaseContour::UnSelectAllPoints(){
        int i,size=_lstViewPoints.size();
-       for (i=0;i<size;i++){
+       for (i=0;i<size;i++)
+    {
                UnSelectPoint(i);
        }
        Refresh();
                UnSelectPoint(i);
        }
        Refresh();
index 01332860ca390e243d586844c50681b3158ac54d..0563710a9da1ca691704d3065ae5b41e7070bf07 100644 (file)
@@ -359,14 +359,21 @@ bool manualViewContour::ifTouchContour(int x,int y,int z)
                                d1 = sqrt( (ppA[0]-xx)*(ppA[0]-xx) + (ppA[1]-yy)*(ppA[1]-yy) + (ppA[2]-zz)*(ppA[2]-zz));
                                d2 = sqrt( (ppB[0]-xx)*(ppB[0]-xx) + (ppB[1]-yy)*(ppB[1]-yy) + (ppB[2]-zz)*(ppB[2]-zz));
                                d3 = sqrt( (ppB[0]-ppA[0])*(ppB[0]-ppA[0]) + (ppB[1]-ppA[1])*(ppB[1]-ppA[1]) + (ppB[2]-ppA[2])*(ppB[2]-ppA[2]));
                                d1 = sqrt( (ppA[0]-xx)*(ppA[0]-xx) + (ppA[1]-yy)*(ppA[1]-yy) + (ppA[2]-zz)*(ppA[2]-zz));
                                d2 = sqrt( (ppB[0]-xx)*(ppB[0]-xx) + (ppB[1]-yy)*(ppB[1]-yy) + (ppB[2]-zz)*(ppB[2]-zz));
                                d3 = sqrt( (ppB[0]-ppA[0])*(ppB[0]-ppA[0]) + (ppB[1]-ppA[1])*(ppB[1]-ppA[1]) + (ppB[2]-ppA[2])*(ppB[2]-ppA[2]));
-                               if (  ((d1+d2)>=d3) &&  ((d1+d2)<=d3*1.3) ) 
+                               if (  ((d1+d2)>=d3) &&  ((d1+d2)<=d3*1.3) )
                                {
                                        result  = true;
                                        i               = nps;
                                } // if
                                {
                                        result  = true;
                                        i               = nps;
                                } // if
+                if (  (d1<0.75*_spc[0]) ||  (d2<0.75*_spc[0]) )
+                {
+                    result    = true;
+                    i        = nps;
+                } // if
+
                        } // for i
                } // if GetSizeLstPoints()==2
        } // if min max
                        } // for i
                } // if GetSizeLstPoints()==2
        } // if min max
+    
        return result;
 }
 
        return result;
 }