From: eduardo.davila@creatis.insa-lyon.fr Date: Fri, 24 Oct 2025 13:02:37 +0000 (+0200) Subject: #3403 ContourMovePointIn3D X-Git-Url: http://git.creatis.insa-lyon.fr/pubgit/?a=commitdiff_plain;h=refs%2Fheads%2Fvtk9itk5wx3-macos;p=creaContours.git #3403 ContourMovePointIn3D --- diff --git a/bbtk/bbs/boxes/ContourMovePointIn3D.bbg b/bbtk/bbs/boxes/ContourMovePointIn3D.bbg new file mode 100644 index 0000000..00478f8 --- /dev/null +++ b/bbtk/bbs/boxes/ContourMovePointIn3D.bbg @@ -0,0 +1,768 @@ +# ---------------------------------- +# - BBTKGEditor v 1.6 BBG BlackBox Diagram file +# - /Users/davila/Creatis/C23/creatools_source/creaContours/bbtk/bbs/boxes/ContourMovePointIn3D.bbg +# ---------------------------------- + +APP_START +CATEGORY: +DESCRIPTION:Description ?? +AUTHOR:Author ?? +EXPORTFORMAT:0 +COMPLEXBOX:TRUE +COMPLEXBOXNAME:ContourMovePointIn3D +PACKAGENAME:creaContours +COMPLEXOUTPUTS:1 +COMPLEX_PORT +wxwindowout +17.246455:-111.745877:-900.000000 +FIN_COMPLEX_PORT +COMPLEXINPUTS:10 +COMPLEX_PORT +contourmainframe +87.402342:123.895825:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +vtkrender3D +117.063710:123.705688:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +_iAxis +-34.348442:120.152126:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +lstX +-119.548138:116.413202:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +lstY +-97.633102:116.765205:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +lstZ +-75.492565:117.136530:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +_lstIndex +-164.624212:115.618232:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +point +16.147631:116.433675:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +spc +33.285665:116.286191:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +active +-196.064919:113.846235:-900.000000 +FIN_COMPLEX_PORT +BOXES:55 +BOX +toolsbbtk:ImageVtkPropertiesWidget:Box303 +ISEXEC:FALSE +-5828.849693:-593.897977:-900.000000 +-5805.524693:-596.397977:-900.000000 +FIN_BOX +BOX +std:VectorFilterDouble:Box477 +ISEXEC:FALSE +-89.376546:33.756355:-900.000000 +-63.096546:31.256355:-900.000000 +PORT +Type:"14" +FIN_BOX +BOX +vtk:SphereList:Box478 +ISEXEC:FALSE +-79.693963:0.030328:-900.000000 +-57.988963:-2.469672:-900.000000 +PORT +Opacity:"1" +PORT +lstRadio:"3" +FIN_BOX +BOX +wx:CommandButton:Box480 +ISEXEC:FALSE +38.186417:-22.022207:-900.000000 +60.946417:-24.522207:-900.000000 +PORT +Label:"-" +FIN_BOX +BOX +wx:CommandButton:Box481 +ISEXEC:FALSE +66.220728:-21.589227:-900.000000 +88.980728:-24.089227:-900.000000 +PORT +Label:"+" +FIN_BOX +BOX +wx:LayoutLine:Box482 +ISEXEC:FALSE +38.352530:-31.061707:-900.000000 +73.432530:-33.561707:-900.000000 +PORT +Orientation:"H" +FIN_BOX +BOX +std:ConcatStrings:Box485 +ISEXEC:FALSE +-35.341576:56.102270:-900.000000 +-12.581576:53.602270:-900.000000 +FIN_BOX +BOX +vtk:UpdateRender:Box486 +ISEXEC:FALSE +-39.024982:-49.092177:-900.000000 +-16.889982:-51.592177:-900.000000 +PORT +Active:"true" +FIN_BOX +BOX +wx:Slider:Box487 +ISEXEC:FALSE +-39.857631:42.707829:-900.000000 +-8.297631:40.207829:-900.000000 +PORT +In:"0" +PORT +Label:"true" +PORT +Max:"125" +PORT +Min:"0" +PORT +ReactiveOnTrack:"true" +PORT +Title:"Sphere size" +FIN_BOX +BOX +std:Div:Box488 +ISEXEC:FALSE +-40.160604:32.377733:-900.000000 +-19.125604:29.877733:-900.000000 +PORT +In2:"100" +FIN_BOX +BOX +std:Mul:Box489 +ISEXEC:FALSE +-41.460784:25.675390:-900.000000 +-20.375784:23.175390:-900.000000 +PORT +In2:"2" +FIN_BOX +BOX +std:MultipleInputs:Box490 +ISEXEC:FALSE +-84.805814:15.212490:-900.000000 +-62.725814:12.712490:-900.000000 +FIN_BOX +BOX +std:ConcatStrings:Box491 +ISEXEC:FALSE +-48.821878:13.901856:-900.000000 +-26.061878:11.401856:-900.000000 +FIN_BOX +BOX +std:VectorFilterDouble:Box492 +ISEXEC:FALSE +-48.358232:-0.184888:-900.000000 +-22.078232:-2.684888:-900.000000 +PORT +Type:"10" +FIN_BOX +BOX +vtk:SphereList:Box493 +ISEXEC:FALSE +-52.709173:-33.528010:-900.000000 +-31.004173:-36.028010:-900.000000 +PORT +Colour:"1 1 0" +PORT +Opacity:"1" +PORT +lstRadio:"3" +FIN_BOX +BOX +std:ConcatStrings:Box495 +ISEXEC:FALSE +-21.835749:12.892024:-900.000000 +0.924251:10.392024:-900.000000 +FIN_BOX +BOX +std:GetVectorDoubleElement:Box498 +ISEXEC:FALSE +-50.731757:-7.699619:-900.000000 +-27.496757:-10.199619:-900.000000 +PORT +I:"0" +FIN_BOX +BOX +std:GetVectorDoubleElement:Box499 +ISEXEC:FALSE +-19.338795:-8.384267:-900.000000 +3.896205:-10.884267:-900.000000 +PORT +I:"1" +FIN_BOX +BOX +std:GetVectorDoubleElement:Box500 +ISEXEC:FALSE +13.342317:-8.064090:-900.000000 +36.577317:-10.564090:-900.000000 +PORT +I:"2" +FIN_BOX +BOX +std:ConcatStrings:Box501 +ISEXEC:FALSE +-46.317731:-14.879402:-900.000000 +-23.557731:-17.379402:-900.000000 +FIN_BOX +BOX +std:ConcatStrings:Box502 +ISEXEC:FALSE +-19.629552:-13.244000:-900.000000 +3.130448:-15.744000:-900.000000 +FIN_BOX +BOX +std:ConcatStrings:Box503 +ISEXEC:FALSE +12.217486:-13.601278:-900.000000 +34.977486:-16.101278:-900.000000 +FIN_BOX +BOX +std:MathOperationVector:Box505 +ISEXEC:FALSE +-39.422524:6.150166:-900.000000 +-14.902524:3.650166:-900.000000 +PORT +Type:"2" +FIN_BOX +BOX +std:Mul:Box506 +ISEXEC:FALSE +-25.329422:19.081811:-900.000000 +-4.244422:16.581811:-900.000000 +PORT +In2:"1.1" +FIN_BOX +BOX +creaContours:wxContourMainFrame_tool:Box541 +ISEXEC:FALSE +-19.660798:-92.124407:-900.000000 +3.684202:-94.624407:-900.000000 +PORT +Type:"10" +FIN_BOX +BOX +std:ConcatStrings:Box548 +ISEXEC:FALSE +7.355017:-62.980422:-900.000000 +30.115017:-65.480422:-900.000000 +PORT +In2:" " +PORT +In4:" " +PORT +In6:" " +FIN_BOX +BOX +std:ConcatStrings:Box549 +ISEXEC:FALSE +-4.861435:-75.764152:-900.000000 +17.898565:-78.264152:-900.000000 +PORT +In2:" -1" +PORT +In4:" " +FIN_BOX +BOX +std:ConcatStrings:Box550 +ISEXEC:FALSE +28.946262:-75.664996:-900.000000 +51.706262:-78.164996:-900.000000 +PORT +In2:" 1" +PORT +In4:" " +FIN_BOX +BOX +creaContours:wxContourMainFrame_tool:Box551 +ISEXEC:FALSE +22.847460:-92.494385:-900.000000 +46.192460:-94.994385:-900.000000 +PORT +Type:"10" +FIN_BOX +BOX +wx:LayoutLine:Box561 +ISEXEC:FALSE +23.498822:-47.392920:-900.000000 +58.578822:-49.892920:-900.000000 +PORT +Orientation:"H" +FIN_BOX +BOX +wx:StaticBox:Box566 +ISEXEC:FALSE +19.529767:-53.502705:-900.000000 +41.154767:-56.002705:-900.000000 +PORT +BoxTitle:"Control point modification" +FIN_BOX +BOX +wx:CheckBox:Box571 +ISEXEC:FALSE +64.321137:-38.952713:-900.000000 +87.081137:-41.452713:-900.000000 +PORT +Title:"With neighborhood" +FIN_BOX +BOX +std:MagicBox:Box572 +ISEXEC:FALSE +82.648918:110.205963:-900.000000 +104.358918:107.705963:-900.000000 +FIN_BOX +BOX +std:MagicBox:Box573 +ISEXEC:FALSE +112.240149:109.741306:-900.000000 +133.950149:107.241306:-900.000000 +FIN_BOX +BOX +std:MagicBox:Box574 +ISEXEC:FALSE +-39.932551:108.659524:-900.000000 +-18.222551:106.159524:-900.000000 +FIN_BOX +BOX +std:MagicBox:Box575 +ISEXEC:FALSE +-125.034495:108.064690:-900.000000 +-103.324495:105.564690:-900.000000 +FIN_BOX +BOX +std:MagicBox:Box576 +ISEXEC:FALSE +-101.831866:108.417622:-900.000000 +-80.121866:105.917622:-900.000000 +FIN_BOX +BOX +std:MagicBox:Box577 +ISEXEC:FALSE +-78.505411:108.341253:-900.000000 +-56.795411:105.841253:-900.000000 +FIN_BOX +BOX +std:MagicBox:Box578 +ISEXEC:FALSE +-168.404447:106.465292:-900.000000 +-146.694447:103.965292:-900.000000 +FIN_BOX +BOX +std:MagicBox:Box579 +ISEXEC:FALSE +10.507953:107.238631:-900.000000 +32.217953:104.738631:-900.000000 +FIN_BOX +BOX +std:MagicBox:Box580 +ISEXEC:FALSE +27.507860:102.953235:-900.000000 +49.217860:100.453235:-900.000000 +FIN_BOX +BOX +std:VectorFilterDouble:Box41 +ISEXEC:FALSE +-93.145622:50.688487:-900.000000 +-66.865622:48.188487:-900.000000 +PORT +Type:"11" +FIN_BOX +BOX +std:StringSelect:Box43 +ISEXEC:FALSE +-58.106716:-72.623066:-900.000000 +-33.586716:-75.123066:-900.000000 +PORT +In0:"0" +PORT +In1:"10" +FIN_BOX +BOX +std:ReplaceString:Box49 +ISEXEC:FALSE +-209.887774:92.408815:-900.000000 +-187.917774:89.908815:-900.000000 +PORT +Replace:"1" +PORT +Search:"True" +FIN_BOX +BOX +std:ReplaceString:Box50 +ISEXEC:FALSE +-210.911380:86.451250:-900.000000 +-188.941380:83.951250:-900.000000 +PORT +Replace:"1" +PORT +Search:"true" +FIN_BOX +BOX +std:ReplaceString:Box51 +ISEXEC:FALSE +-210.708570:81.873405:-900.000000 +-188.738570:79.373405:-900.000000 +PORT +Replace:"1" +PORT +Search:"TRUE" +FIN_BOX +BOX +std:ReplaceString:Box52 +ISEXEC:FALSE +-211.105838:76.125234:-900.000000 +-189.135838:73.625234:-900.000000 +PORT +Replace:"1" +PORT +Search:"T" +FIN_BOX +BOX +std:ReplaceString:Box53 +ISEXEC:FALSE +-211.042393:69.110104:-900.000000 +-189.072393:66.610104:-900.000000 +PORT +Replace:"1" +PORT +Search:"t" +FIN_BOX +BOX +std:ReplaceString:Box54 +ISEXEC:FALSE +-185.590103:92.697502:-900.000000 +-163.620103:90.197502:-900.000000 +PORT +Replace:"0" +PORT +Search:"False" +FIN_BOX +BOX +std:ReplaceString:Box55 +ISEXEC:FALSE +-186.613710:86.739937:-900.000000 +-164.643710:84.239937:-900.000000 +PORT +Replace:"0" +PORT +Search:"false" +FIN_BOX +BOX +std:ReplaceString:Box56 +ISEXEC:FALSE +-186.410900:82.162092:-900.000000 +-164.440900:79.662092:-900.000000 +PORT +Replace:"0" +PORT +Search:"FALSE" +FIN_BOX +BOX +std:ReplaceString:Box57 +ISEXEC:FALSE +-186.808168:76.413921:-900.000000 +-164.838168:73.913921:-900.000000 +PORT +Replace:"0" +PORT +Search:"F" +FIN_BOX +BOX +std:ReplaceString:Box58 +ISEXEC:FALSE +-186.744723:69.398791:-900.000000 +-164.774723:66.898791:-900.000000 +PORT +Replace:"0" +PORT +Search:"f" +FIN_BOX +BOX +std:ConcatStrings:Box59 +ISEXEC:FALSE +-204.227305:103.914570:-900.000000 +-181.467305:101.414570:-900.000000 +FIN_BOX +BOX +std:ConcatStrings:Box60 +ISEXEC:FALSE +-126.687285:12.421665:-900.000000 +-103.927285:9.921665:-900.000000 +FIN_BOX +CONNECTIONS:86 +CONNECTION +Box477:Out0:Box478:lstPointX +NumberOfControlPoints:0 +CONNECTION +Box477:Out1:Box478:lstPointY +NumberOfControlPoints:0 +CONNECTION +Box477:Out2:Box478:lstPointZ +NumberOfControlPoints:0 +CONNECTION +Box481:Widget:Box482:Widget2 +NumberOfControlPoints:0 +CONNECTION +Box480:Widget:Box482:Widget1 +NumberOfControlPoints:0 +CONNECTION +Box485:Out:Box477:k1 +NumberOfControlPoints:0 +CONNECTION +Box487:Out:Box488:In1 +NumberOfControlPoints:0 +CONNECTION +Box488:Out:Box489:In1 +NumberOfControlPoints:0 +CONNECTION +Box487:BoxChange:Box490:In2 +NumberOfControlPoints:0 +CONNECTION +Box490:BoxChange:Box478:BoxExecute +NumberOfControlPoints:0 +CONNECTION +Box489:Out:Box491:In1 +NumberOfControlPoints:0 +CONNECTION +Box491:Out:Box478:lstRadio +NumberOfControlPoints:0 +CONNECTION +Box477:Out0:Box492:In0 +NumberOfControlPoints:0 +CONNECTION +Box477:Out1:Box492:In1 +NumberOfControlPoints:0 +CONNECTION +Box478:BoxChange:Box493:BoxExecute +NumberOfControlPoints:0 +CONNECTION +Box493:BoxChange:Box486:BoxExecute +NumberOfControlPoints:0 +CONNECTION +Box495:Out:Box493:lstRadio +NumberOfControlPoints:0 +CONNECTION +Box492:Out1:Box498:In +NumberOfControlPoints:0 +CONNECTION +Box492:Out1:Box499:In +NumberOfControlPoints:0 +CONNECTION +Box492:Out1:Box500:In +NumberOfControlPoints:0 +CONNECTION +Box498:Out:Box501:In1 +NumberOfControlPoints:0 +CONNECTION +Box501:Out:Box493:lstPointX +NumberOfControlPoints:0 +CONNECTION +Box499:Out:Box502:In1 +NumberOfControlPoints:0 +CONNECTION +Box502:Out:Box493:lstPointY +NumberOfControlPoints:0 +CONNECTION +Box500:Out:Box503:In1 +NumberOfControlPoints:0 +CONNECTION +Box503:Out:Box493:lstPointZ +NumberOfControlPoints:0 +CONNECTION +Box505:Out:Box492:In3 +NumberOfControlPoints:0 +CONNECTION +Box477:Out2:Box492:In2 +NumberOfControlPoints:0 +CONNECTION +Box489:Out:Box506:In1 +NumberOfControlPoints:0 +CONNECTION +Box506:Out:Box495:In1 +NumberOfControlPoints:0 +CONNECTION +Box548:Out:Box549:In1 +NumberOfControlPoints:0 +CONNECTION +Box548:Out:Box550:In1 +NumberOfControlPoints:0 +CONNECTION +Box549:Out:Box541:Param1 +NumberOfControlPoints:0 +CONNECTION +Box550:Out:Box551:Param1 +NumberOfControlPoints:0 +CONNECTION +Box480:BoxChange:Box541:BoxExecute +NumberOfControlPoints:0 +CONNECTION +Box481:BoxChange:Box551:BoxExecute +NumberOfControlPoints:0 +CONNECTION +Box492:Out0:Box548:In5 +NumberOfControlPoints:0 +CONNECTION +Box487:Widget:Box561:Widget2 +NumberOfControlPoints:0 +CONNECTION +Box561:Widget:Box566:BoxContent +NumberOfControlPoints:0 +CONNECTION +Box485:Out:Box548:In1 +NumberOfControlPoints:0 +CONNECTION +Box482:Widget:Box561:Widget5 +NumberOfControlPoints:0 +CONNECTION +Box571:Out:Box548:In7 +NumberOfControlPoints:0 +CONNECTION +Box571:Widget:Box561:Widget3 +NumberOfControlPoints:0 +CONNECTION +contourmainframe:contourmainframe:Box572:In +NumberOfControlPoints:0 +CONNECTION +Box572:Out:Box541:wxContourMainFrame +NumberOfControlPoints:0 +CONNECTION +Box572:Out:Box551:wxContourMainFrame +NumberOfControlPoints:0 +CONNECTION +vtkrender3D:vtkrender3D:Box573:In +NumberOfControlPoints:0 +CONNECTION +Box573:Out:Box486:Renderer +NumberOfControlPoints:0 +CONNECTION +Box573:Out:Box493:Renderer +NumberOfControlPoints:0 +CONNECTION +Box566:Widget:wxwindowout:wxwindowout +NumberOfControlPoints:0 +CONNECTION +Box573:Out:Box478:Renderer +NumberOfControlPoints:0 +CONNECTION +_iAxis:_iAxis:Box574:In +NumberOfControlPoints:0 +CONNECTION +Box574:Out:Box485:In1 +NumberOfControlPoints:0 +CONNECTION +lstX:lstX:Box575:In +NumberOfControlPoints:0 +CONNECTION +lstY:lstY:Box576:In +NumberOfControlPoints:0 +CONNECTION +lstZ:lstZ:Box577:In +NumberOfControlPoints:0 +CONNECTION +_lstIndex:_lstIndex:Box578:In +NumberOfControlPoints:0 +CONNECTION +Box578:Out:Box477:In3 +NumberOfControlPoints:0 +CONNECTION +point:point:Box579:In +NumberOfControlPoints:0 +CONNECTION +Box579:Out:Box505:In0 +NumberOfControlPoints:0 +CONNECTION +spc:spc:Box580:In +NumberOfControlPoints:0 +CONNECTION +Box580:Out:Box505:In1 +NumberOfControlPoints:0 +CONNECTION +Box575:Out:Box41:In0 +NumberOfControlPoints:0 +CONNECTION +Box576:Out:Box41:In1 +NumberOfControlPoints:0 +CONNECTION +Box577:Out:Box41:In2 +NumberOfControlPoints:0 +CONNECTION +Box41:Out0:Box477:In0 +NumberOfControlPoints:0 +CONNECTION +Box41:Out1:Box477:In1 +NumberOfControlPoints:0 +CONNECTION +Box41:Out2:Box477:In2 +NumberOfControlPoints:0 +CONNECTION +Box580:Out:Box41:k1 +NumberOfControlPoints:0 +CONNECTION +Box43:Out:Box541:Type +NumberOfControlPoints:0 +CONNECTION +Box43:Out:Box551:Type +NumberOfControlPoints:0 +CONNECTION +Box49:Out:Box50:In +NumberOfControlPoints:0 +CONNECTION +Box50:Out:Box51:In +NumberOfControlPoints:0 +CONNECTION +Box51:Out:Box52:In +NumberOfControlPoints:0 +CONNECTION +Box52:Out:Box53:In +NumberOfControlPoints:0 +CONNECTION +Box54:Out:Box55:In +NumberOfControlPoints:0 +CONNECTION +Box55:Out:Box56:In +NumberOfControlPoints:0 +CONNECTION +Box56:Out:Box57:In +NumberOfControlPoints:0 +CONNECTION +Box57:Out:Box58:In +NumberOfControlPoints:0 +CONNECTION +Box53:Out:Box54:In +NumberOfControlPoints:0 +CONNECTION +active:active:Box59:In1 +NumberOfControlPoints:0 +CONNECTION +Box59:Out:Box49:In +NumberOfControlPoints:0 +CONNECTION +Box58:Out:Box60:In1 +NumberOfControlPoints:0 +CONNECTION +Box60:Out:Box478:Opacity +NumberOfControlPoints:0 +CONNECTION +Box60:Out:Box493:Opacity +NumberOfControlPoints:0 +CONNECTION +Box60:Out:Box43:In +NumberOfControlPoints:0 +APP_END diff --git a/bbtk/bbs/boxes/ContourMovePointIn3D.bbs b/bbtk/bbs/boxes/ContourMovePointIn3D.bbs new file mode 100644 index 0000000..0691843 --- /dev/null +++ b/bbtk/bbs/boxes/ContourMovePointIn3D.bbs @@ -0,0 +1,283 @@ +# ---------------------------------- +# - BBTKGEditor v 1.6 BBS BlackBox Script (Complex Box) +# - /Users/davila/Creatis/C23/creatools_source/creaContours/bbtk/bbs/boxes/ContourMovePointIn3D.bbs +# ---------------------------------- + +include std +include itkvtk +include toolsbbtk +include std +include vtk +include wx +include creaContours + +define ContourMovePointIn3D creaContours + +author "Author ??" +description "Description ??" + +category "" + +new toolsbbtk:ImageVtkPropertiesWidget Box303 + +new std:VectorFilterDouble Box477 + set Box477.Type "14" + +new vtk:SphereList Box478 + set Box478.Opacity "1" + set Box478.lstRadio "3" + +new wx:CommandButton Box480 + set Box480.Label "-" + +new wx:CommandButton Box481 + set Box481.Label "+" + +new wx:LayoutLine Box482 + set Box482.Orientation "H" + +new std:ConcatStrings Box485 + +new vtk:UpdateRender Box486 + set Box486.Active "true" + +new wx:Slider Box487 + set Box487.In "0" + set Box487.Label "true" + set Box487.Max "125" + set Box487.Min "0" + set Box487.ReactiveOnTrack "true" + set Box487.Title "Sphere size" + +new std:Div Box488 + set Box488.In2 "100" + +new std:Mul Box489 + set Box489.In2 "2" + +new std:MultipleInputs Box490 + +new std:ConcatStrings Box491 + +new std:VectorFilterDouble Box492 + set Box492.Type "10" + +new vtk:SphereList Box493 + set Box493.Colour "1 1 0" + set Box493.Opacity "1" + set Box493.lstRadio "3" + +new std:ConcatStrings Box495 + +new std:GetVectorDoubleElement Box498 + set Box498.I "0" + +new std:GetVectorDoubleElement Box499 + set Box499.I "1" + +new std:GetVectorDoubleElement Box500 + set Box500.I "2" + +new std:ConcatStrings Box501 + +new std:ConcatStrings Box502 + +new std:ConcatStrings Box503 + +new std:MathOperationVector Box505 + set Box505.Type "2" + +new std:Mul Box506 + set Box506.In2 "1.1" + +new creaContours:wxContourMainFrame_tool Box541 + set Box541.Type "10" + +new std:ConcatStrings Box548 + set Box548.In2 " " + set Box548.In4 " " + set Box548.In6 " " + +new std:ConcatStrings Box549 + set Box549.In2 " -1" + set Box549.In4 " " + +new std:ConcatStrings Box550 + set Box550.In2 " 1" + set Box550.In4 " " + +new creaContours:wxContourMainFrame_tool Box551 + set Box551.Type "10" + +new wx:LayoutLine Box561 + set Box561.Orientation "H" + +new wx:StaticBox Box566 + set Box566.BoxTitle "Control point modification" + +new wx:CheckBox Box571 + set Box571.Title "With neighborhood" + +new std:MagicBox Box572 + +new std:MagicBox Box573 + +new std:MagicBox Box574 + +new std:MagicBox Box575 + +new std:MagicBox Box576 + +new std:MagicBox Box577 + +new std:MagicBox Box578 + +new std:MagicBox Box579 + +new std:MagicBox Box580 + +new std:VectorFilterDouble Box41 + set Box41.Type "11" + +new std:StringSelect Box43 + set Box43.In0 "0" + set Box43.In1 "10" + +new std:ReplaceString Box49 + set Box49.Replace "1" + set Box49.Search "True" + +new std:ReplaceString Box50 + set Box50.Replace "1" + set Box50.Search "true" + +new std:ReplaceString Box51 + set Box51.Replace "1" + set Box51.Search "TRUE" + +new std:ReplaceString Box52 + set Box52.Replace "1" + set Box52.Search "T" + +new std:ReplaceString Box53 + set Box53.Replace "1" + set Box53.Search "t" + +new std:ReplaceString Box54 + set Box54.Replace "0" + set Box54.Search "False" + +new std:ReplaceString Box55 + set Box55.Replace "0" + set Box55.Search "false" + +new std:ReplaceString Box56 + set Box56.Replace "0" + set Box56.Search "FALSE" + +new std:ReplaceString Box57 + set Box57.Replace "0" + set Box57.Search "F" + +new std:ReplaceString Box58 + set Box58.Replace "0" + set Box58.Search "f" + +new std:ConcatStrings Box59 + +new std:ConcatStrings Box60 + + +connect Box477.Out0 Box478.lstPointX +connect Box477.Out1 Box478.lstPointY +connect Box477.Out2 Box478.lstPointZ +connect Box481.Widget Box482.Widget2 +connect Box480.Widget Box482.Widget1 +connect Box485.Out Box477.k1 +connect Box487.Out Box488.In1 +connect Box488.Out Box489.In1 +connect Box487.BoxChange Box490.In2 +connect Box490.BoxChange Box478.BoxExecute +connect Box489.Out Box491.In1 +connect Box491.Out Box478.lstRadio +connect Box477.Out0 Box492.In0 +connect Box477.Out1 Box492.In1 +connect Box478.BoxChange Box493.BoxExecute +connect Box493.BoxChange Box486.BoxExecute +connect Box495.Out Box493.lstRadio +connect Box492.Out1 Box498.In +connect Box492.Out1 Box499.In +connect Box492.Out1 Box500.In +connect Box498.Out Box501.In1 +connect Box501.Out Box493.lstPointX +connect Box499.Out Box502.In1 +connect Box502.Out Box493.lstPointY +connect Box500.Out Box503.In1 +connect Box503.Out Box493.lstPointZ +connect Box505.Out Box492.In3 +connect Box477.Out2 Box492.In2 +connect Box489.Out Box506.In1 +connect Box506.Out Box495.In1 +connect Box548.Out Box549.In1 +connect Box548.Out Box550.In1 +connect Box549.Out Box541.Param1 +connect Box550.Out Box551.Param1 +connect Box480.BoxChange Box541.BoxExecute +connect Box481.BoxChange Box551.BoxExecute +connect Box492.Out0 Box548.In5 +connect Box487.Widget Box561.Widget2 +connect Box561.Widget Box566.BoxContent +connect Box485.Out Box548.In1 +connect Box482.Widget Box561.Widget5 +connect Box571.Out Box548.In7 +connect Box571.Widget Box561.Widget3 +connect Box572.Out Box541.wxContourMainFrame +connect Box572.Out Box551.wxContourMainFrame +connect Box573.Out Box486.Renderer +connect Box573.Out Box493.Renderer +connect Box573.Out Box478.Renderer +connect Box574.Out Box485.In1 +connect Box578.Out Box477.In3 +connect Box579.Out Box505.In0 +connect Box580.Out Box505.In1 +connect Box575.Out Box41.In0 +connect Box576.Out Box41.In1 +connect Box577.Out Box41.In2 +connect Box41.Out0 Box477.In0 +connect Box41.Out1 Box477.In1 +connect Box41.Out2 Box477.In2 +connect Box580.Out Box41.k1 +connect Box43.Out Box541.Type +connect Box43.Out Box551.Type +connect Box49.Out Box50.In +connect Box50.Out Box51.In +connect Box51.Out Box52.In +connect Box52.Out Box53.In +connect Box54.Out Box55.In +connect Box55.Out Box56.In +connect Box56.Out Box57.In +connect Box57.Out Box58.In +connect Box53.Out Box54.In +connect Box59.Out Box49.In +connect Box58.Out Box60.In1 +connect Box60.Out Box478.Opacity +connect Box60.Out Box493.Opacity +connect Box60.Out Box43.In + +# Complex input ports +input contourmainframe Box572.In " " +input vtkrender3D Box573.In " " +input _iAxis Box574.In " " +input lstX Box575.In " " +input lstY Box576.In " " +input lstZ Box577.In " " +input _lstIndex Box578.In " " +input point Box579.In " " +input spc Box580.In " " +input active Box59.In1 " " + +# Complex output ports +output wxwindowout Box566.Widget " " + + +endefine diff --git a/bbtk/src/bbcreaContourswxContourMainFrame_tool.cxx b/bbtk/src/bbcreaContourswxContourMainFrame_tool.cxx index cb89d79..00d40e8 100644 --- a/bbtk/src/bbcreaContourswxContourMainFrame_tool.cxx +++ b/bbtk/src/bbcreaContourswxContourMainFrame_tool.cxx @@ -110,16 +110,16 @@ void wxContourMainFrame_tool::Process() { // Todo.... implementd in JavaScript } // Type 6 - + // Move Control Point Normal direction - if (bbGetInputType()==10) + if ( (bbGetInputType()==10) && (bbGetInputParam1().size()==4) ) { - std::vector param1 =bbGetInputParam1(); - int idContour = (int)param1[0]; - int idControlPoint = (int)param1[1]; - printf("EED wxContourMainFrame_tool::Process type 10 idControlPoint=%d\n", idControlPoint ); - int step = (int)param1[2]; - wxContourMainFrame::getInstance()->MoveControlPoint( idContour , idControlPoint, step ); + std::vector param1 = bbGetInputParam1(); + int idContour = (int)param1[0]; + int idControlPoint = (int)param1[1]; + int useNeighborhood = (int)param1[2]; + double step = param1[3]; + wxContourMainFrame::getInstance()->MoveControlPoint( idContour , idControlPoint, step , useNeighborhood); } // Type 10 } // if wxContourMainFrame::getInstance()!=NULL diff --git a/bbtk/src/bbcreaContourswxContourMainFrame_tool.h b/bbtk/src/bbcreaContourswxContourMainFrame_tool.h index 87fc72f..938993e 100644 --- a/bbtk/src/bbcreaContourswxContourMainFrame_tool.h +++ b/bbtk/src/bbcreaContourswxContourMainFrame_tool.h @@ -46,8 +46,8 @@ BBTK_BEGIN_DESCRIBE_BLACK_BOX(wxContourMainFrame_tool,bbtk::AtomicBlackBox); BBTK_AUTHOR("InfoDev"); BBTK_DESCRIPTION("(C++,JavaScript) (type4 in JavaScript) No Description."); BBTK_CATEGORY("empty"); - BBTK_INPUT(wxContourMainFrame_tool,Type,"(default 0) Type 0:nothing 1:Isovalue segmentation of Image, 2:Isovalue segmentation actual slice, 3:Reset Camera, 4:OnSave, 5:OnRead (JavaScript) 6:GetContours (JavaScript)",int,""); - BBTK_INPUT(wxContourMainFrame_tool,Param1,"List of parameters (vector double) Type1:[step,isovalue,sampling,method,x,y,min,max] Replace all old contours Type2:[isovalue,sampling,method,iSlice,x,y] Replace acutal slice ", std::vector,""); + BBTK_INPUT(wxContourMainFrame_tool,Type,"(default 0) Type 0:nothing 1:Isovalue segmentation of Image, 2:Isovalue segmentation actual slice, 3:Reset Camera, 4:OnSave, 5:OnRead (JavaScript) 6:GetContours (JavaScript) 10:MoveControlPoint (use param1)",int,""); + BBTK_INPUT(wxContourMainFrame_tool,Param1,"List of parameters (vector double) Type1:[step,isovalue,sampling,method,x,y,min,max] Replace all old contours Type2:[isovalue,sampling,method,iSlice,x,y] Replace acutal slice Type10:[idContour idControlPoint useNeighborhood step] ", std::vector,""); BBTK_INPUT(wxContourMainFrame_tool,Param2,"List of parameters (vector string) Type 4:Filename (JavaScript) Type 5:FileName (JavaScript) ", std::vector,""); BBTK_INPUT(wxContourMainFrame_tool,Image,"Image", vtkImageData*,""); BBTK_INPUT(wxContourMainFrame_tool, wxContourMainFrame, "wxContourMainFrame (used in JavaScript)", wxContourMainFrame*, ""); diff --git a/lib/Interface_ManagerContour_NDimensions/wxContourMainFrame.cxx b/lib/Interface_ManagerContour_NDimensions/wxContourMainFrame.cxx index 986cfd2..ef61531 100644 --- a/lib/Interface_ManagerContour_NDimensions/wxContourMainFrame.cxx +++ b/lib/Interface_ManagerContour_NDimensions/wxContourMainFrame.cxx @@ -3442,7 +3442,7 @@ void wxContourMainFrame::SetMaxContoursByInstant(int max) _maxContoursByInstant = max; } -void wxContourMainFrame::MoveControlPoint( int idContour , int idControlPoint, int step ) +void wxContourMainFrame::MoveControlPoint2( int idContour , int idControlPoint, double step ) { //std::vector tempVector; //getInstantVector( tempVector ); @@ -3483,6 +3483,32 @@ void wxContourMainFrame::MoveControlPoint( int idContour , int idControlPoint, i mbm->MovePoint( idControlPoint ,vxB*step,vyB*step,0); RefreshInterface(); - } // - + } // if lstContours.size +} + + +void wxContourMainFrame::MoveControlPoint( int idContour , int idControlPoint, double step , int useNeighborhood ) +{ + Instant *instant = kernelManager->getCurrentInstant (); + std::vector< ContourThing ** > lstContours = kernelManager->getOutlinesAtInstant (instant); + if (lstContours.size()>0) + { + if (useNeighborhood==1) // Also modify neighborhood + { + manualBaseModel *mbm = (*(lstContours[0]))->getModel(); + int id1=idControlPoint - 1; + if ( id1<0 ) + { + id1 = mbm->GetSizeLstPoints()-1; + } // if id1 < 0 + int id2=idControlPoint + 1; + if ( id2==mbm->GetSizeLstPoints() ) + { + id2 = 0; + } // if id2 = maxpoints list + MoveControlPoint2( idContour , id1 , step/2 ); + MoveControlPoint2( idContour , id2 , step/2 ); + } + MoveControlPoint2( idContour , idControlPoint , step ); + } // if } diff --git a/lib/Interface_ManagerContour_NDimensions/wxContourMainFrame.h b/lib/Interface_ManagerContour_NDimensions/wxContourMainFrame.h index 76c882f..41ce47e 100644 --- a/lib/Interface_ManagerContour_NDimensions/wxContourMainFrame.h +++ b/lib/Interface_ManagerContour_NDimensions/wxContourMainFrame.h @@ -332,8 +332,9 @@ class wxContourMainFrame : public wxPanel { void ResetCamera(); void CleanContoursWithEmptyPoints(); void SetMaxContoursByInstant(int max); - void MoveControlPoint( int idContour , int idControlPoint, int step ); - + void MoveControlPoint2( int idContour , int idControlPoint, double step ); + void MoveControlPoint( int idContour , int idControlPoint, double step, int useNeighborhood ); + private: //------------------------------------------------------------------------------------------------------------ // Private methods