1 # ----------------------------------
2 # - BBTKGEditor v 1.5 BBS BlackBox Script (Complex Box)
3 # - /Users/davila/Creatis/C23/creatools_source/creaMaracasVisu/bbtk/bbs/boxes/Mesh_tool_ApplyThresholdConnectivity.bbs
4 # ----------------------------------
8 include creaMaracasVisu
16 define Mesh_tool_ApplyThresholdConnectivity creaMaracasVisu
18 author "info-dev@creatis.insa-lyon.fr"
19 description "Show N Points"
23 new creaMaracasVisu:ShowNPoints showNpoints
24 set showNpoints.Radio "2"
25 set showNpoints.Type "3"
26 set showNpoints.WinTitle "1.1 Points"
28 new wx:LayoutLine Box08
30 new vtk:UpdateRender Box11
31 set Box11.Active "true"
33 new std:MultipleInputs Box31
35 new creaMaracasVisu:wxPopupMenu Box57
36 set Box57.WithCtrlKey "true"
38 new std:AddStringToVector Box58
39 set Box58.In0 "+ Add point"
40 set Box58.In1 "(+) Insert point"
41 set Box58.In2 "Track point"
42 set Box58.In3 "Set Nearest point"
43 set Box58.In4 "- Erase point"
44 set Box58.In5 "-- Delete all points"
45 set Box58.In6 "----------------------"
46 set Box58.In7 "+> Insert group after"
47 set Box58.In8 "- Delete group"
48 set Box58.In9 "Tool - Inverse Normals"
50 new creaMaracasVisu:ShowNPoints_Tools Box60
52 new vtk:ImageVtkProperties Box68
55 set Box78.In "Union Intersection Difference Replace"
57 new wx:LayoutLine Box79
58 set Box79.Orientation "H"
59 set Box79.WinTitle "New Surface ( Magenta = Red+Yellow )"
61 new wx:CommandButton Box80
64 new std:MagicBox Box66
66 new std:MagicBox Box67
68 new creaMaracasVisu:PolyDataToActor_Widget Box48
69 set Box48.meshOpacity "50"
71 new vtk:vtkImageDataPointerRelay Box35
73 new creaMaracasVisu:PolyDataToActor_Widget Box37
74 set Box37.color "0 1 1"
75 set Box37.meshOpacity "100"
77 new wx:LayoutLine Box38
78 set Box38.Orientation "H"
79 set Box38.WinTitle "Threshold Surface (Yellow)"
81 new wx:LayoutTab Box39
83 new wx:LayoutTab Box40
85 new wx:CommandButton Box42
86 set Box42.Label "Apply (Magenta->To Red)"
88 new wx:CommandButton Box43
89 set Box43.Label "Reset Tool"
91 new wx:LayoutLine Box44
92 set Box44.Orientation "V"
93 set Box44.WinTitle "1.2 Mesh Action"
95 new creaVtk:MeshManager_tool Box45
98 new std:MagicBox Box46
100 new std:MultipleInputs Box51
102 new creaMaracasVisu:ShowNPoints_Tools Box52
105 new std:MultipleInputs Box53
107 new std:MultipleInputs Box55
109 new creaMaracasVisu:MeshContours_Widget Box62
110 set Box62.colorMesh "1 1 0"
112 new std:MagicBox Box63
114 new std:MagicBox Box64
116 new std:MagicBox Box65
118 new std:MagicBox Box69
120 new std:MagicBox Box71
122 new creaMaracasVisu:MeshContours_Widget Box72
123 set Box72.colorMesh "0 1 1"
125 new wx:LayoutLine Box81
126 set Box81.WinTitle "Step 1. Surface"
128 new wx:LayoutTab Box82
130 new wx:OutputText Box84
132 new wx:LayoutTab Box86
134 new creaVtk:MeshManager Box92
136 new creaVtk:MeshManager_tool Box93
139 new std:MagicBox Box94
141 new creaMaracasVisu:wxVtkBaseView_Info Box96
143 new wx:LayoutLine Box98
144 set Box98.Orientation "H"
146 new std:AddStringToVector Box99
147 set Box99.In0 "Auto Add Points (Start/Stop)"
149 new std:VectorFilterString Box100
150 set Box100.In0 "0 1 2 3 4 5 6 7 8 9 10 "
151 set Box100.In1 "1 5 10 20 30 40 50 0 100 110 210"
154 new std:ConcatStrings Box101
156 new creaVtk:ImageThresholdConnectivity Box102
157 set Box102.Border "50"
159 new wx:LayoutLine Box105
160 set Box105.WinTitle "1.2 Surface"
162 new creaMaracasVisu:SliderMinMax Box106
163 set Box106.InMax "2000"
164 set Box106.InMaxShow "-500"
165 set Box106.InMin "-1100"
166 set Box106.InMinShow "-1100"
167 set Box106.ShowActual "false"
171 set Box107.Label "true"
174 set Box107.ReactiveOnTrack "true"
175 set Box107.Title "Border size"
177 new wx:CommandButton Box108
178 set Box108.Label "Refresh"
180 new std:ConcatStrings Box110
183 new std:MultipleInputs Box111
185 new std:MultipleInputs Box112
187 new creaVtk:MarchingCubes2 Box113
188 set Box113.BoxProcessMode "Manual"
189 set Box113.Value "128"
191 new creaVtk:ImageGaussianSmooth2 Box114
192 set Box114.StdDevX "1"
193 set Box114.StdDevY "1"
194 set Box114.StdDevZ "1"
196 new std:MultipleInputs Box118
198 new std:MagicBox Box120
200 new creaMaracasVisu:ColorLayerImageView Box122
201 set Box122.ColorBarPosition "-1000 -1000"
202 set Box122.TypeControlsInterface "2"
203 set Box122.lstTransparenceBoundaries "0"
205 new wx:LayoutLine Box124
206 set Box124.Orientation "V"
207 set Box124.WinTitle "1.3 Apply Changes"
209 new wx:LayoutTab Box125
211 new wx:LayoutLine Box126
212 set Box126.Orientation "H"
214 new creaVtk:PolyDataToImageData Box127
215 set Box127.BoxProcessMode "Manual"
217 new vtk:CreateImage Box128
219 new vtk:BinaryOperations Box129
221 new creaVtk:ImageThreshold Box130
222 set Box130.InValue "255"
223 set Box130.OutValue "0"
224 set Box130.Upper "10000"
226 new creaVtk:MarchingCubes2 Box131
227 set Box131.Value "128"
229 new creaVtk:ImageGaussianSmooth2 Box132
230 set Box132.StdDevX "1"
231 set Box132.StdDevY "1"
232 set Box132.StdDevZ "1"
234 new creaVtk:PolyDataNormals Box133
235 set Box133.BoxProcessMode "Manual"
237 new std:StringSelect Box134
238 set Box134.In0 "0 128"
239 set Box134.In1 "0 500"
240 set Box134.In2 "1 128"
241 set Box134.In3 "7 128"
243 new std:GetVectorStringElement Box135
246 new std:GetVectorStringElement Box136
249 new PackRecalage:AddImageToVector Box137
251 new vtk:GetVectorVtkImageDataElement Box138
254 new vtk:CreateImage Box139
256 new toolsbbtk:ImageVtkPropertiesWidget Box140
259 connect Box31.BoxChange Box11.BoxExecute
260 connect Box58.Out Box57.In
261 connect showNpoints.WidgetShowNPoints Box60.WidgetShowNPoints
262 connect Box57.BoxChange Box60.BoxExecute
263 connect Box68.Spacing Box60.Spacing
264 connect Box66.Out Box11.Renderer
265 connect Box66.Out showNpoints.Renderer
266 connect Box66.Out Box48.render
267 connect Box48.boxchange Box31.In1
268 connect Box35.Out Box68.In
269 connect Box35.Out showNpoints.Image
270 connect Box66.Out Box37.render
271 connect Box38.Widget Box39.Widget2
272 connect Box79.Widget Box40.Widget2
273 connect Box46.Out Box45.MeshManagerModel
274 connect Box42.BoxChange Box51.BoxExecute
275 connect Box45.BoxChange Box51.In2
276 connect Box52.BoxChange Box51.In4
277 connect showNpoints.WidgetShowNPoints Box52.WidgetShowNPoints
278 connect Box42.BoxChange Box53.In3
279 connect Box52.BoxChange Box55.In2
280 connect Box63.BoxChange showNpoints.BoxExecute
281 connect Box64.Out Box57.wxVtkBaseView2
282 connect Box64.Out Box62._wxvtkbaseview2D1
283 connect Box65.Out Box57.wxVtkBaseView3
284 connect Box65.Out Box62._wxvtkbaseview2D2
285 connect Box69.Out Box57.wxVtkBaseView4
286 connect Box69.Out Box62._wxvtkbaseview2D3
287 connect Box71.Out Box57.wxVtkBaseView
288 connect Box71.Out Box62._wxvtkbaseview3D1
289 connect Box71.Out Box72._wxvtkbaseview3D1
290 connect Box64.Out Box72._wxvtkbaseview2D1
291 connect Box65.Out Box72._wxvtkbaseview2D2
292 connect Box69.Out Box72._wxvtkbaseview2D3
293 connect Box72._widget Box79.Widget6
294 connect Box62._widget Box38.Widget7
295 connect Box39.Widget Box81.Widget2
296 connect Box40.Widget Box81.Widget4
297 connect Box44.Widget Box82.Widget2
298 connect Box82.Widget Box79.Widget2
299 connect Box84.Widget Box44.Widget9
300 connect showNpoints.Widget Box86.Widget2
301 connect Box57.BoxChange Box08.BoxExecute
302 connect Box92.MeshManagerModel Box93.MeshManagerModel
303 connect Box92.MeshBase Box72._polydata
304 connect Box92.MeshBase Box37.polydata
305 connect Box81.Widget Box08.Widget2
306 connect Box94.BoxChange Box37.boxexecute
307 connect Box71.Out Box96.wxVtkBaseView
308 connect Box96.vtkRenderer Box66.In
309 connect Box37.widget Box79.Widget7
310 connect Box48.widget Box38.Widget8
311 connect Box43.Widget Box44.Widget1
312 connect Box78.Widget Box98.Widget2
313 connect Box80.Widget Box98.Widget4
314 connect Box98.Widget Box44.Widget3
315 connect Box99.Out Box58.StringVector
316 connect Box100.Out1 Box101.In1
317 connect Box101.Out Box60.Type
318 connect Box57.Out Box100.sk1
319 connect showNpoints.lstPointsX Box102.LstX
320 connect showNpoints.lstPointsY Box102.LstY
321 connect showNpoints.lstPointsZ Box102.LstZ
322 connect Box35.Out Box102.In
323 connect Box106.Widget Box105.Widget2
324 connect Box107.Out Box102.Border
325 connect Box106.OutStart Box110.In1
326 connect Box106.OutEnd Box110.In3
327 connect Box110.Out Box102.Threshold
328 connect Box63.BoxChange Box111.In1
329 connect Box31.BoxChange Box111.In3
330 connect Box111.BoxChange Box62._execute
331 connect Box63.BoxChange Box112.In1
332 connect Box37.boxchange Box112.In3
333 connect Box112.BoxChange Box72._execute
334 connect Box113.BoxChange Box31.BoxExecute
335 connect Box113.Out Box48.polydata
336 connect Box113.Out Box62._polydata
337 connect Box113.BoxChange Box48.boxexecute
338 connect Box114.Out Box113.In
339 connect Box118.BoxChange Box113.BoxExecute
340 connect Box108.BoxChange Box118.In3
341 connect Box80.BoxChange Box53.In2
342 connect Box43.BoxChange Box118.In2
343 connect Box43.BoxChange Box120.BoxExecute
344 connect Box120.BoxChange Box53.In4
345 connect Box43.BoxChange Box55.BoxExecute
346 connect Box42.BoxChange Box118.In4
347 connect Box64.Out Box122.WxVtkBaseView
348 connect Box65.Out Box122.WxVtkBaseView1
349 connect Box69.Out Box122.WxVtkBaseView2
350 connect Box108.Widget Box105.Widget8
351 connect Box107.Widget Box105.Widget6
352 connect Box106.BoxChange Box122.BoxExecute
353 connect Box122.Widget Box105.Widget7
354 connect Box102.Out Box122.In
355 connect Box42.Widget Box124.Widget1
356 connect Box124.Widget Box82.Widget4
357 connect Box105.Widget Box125.Widget2
358 connect Box86.Widget Box126.Widget2
359 connect Box125.Widget Box126.Widget4
360 connect Box126.Widget Box38.Widget2
361 connect Box67.Out Box127.InPolyData
362 connect Box68.Spacing Box128.Spacing
363 connect Box68.TypeName Box128.OutputFormat
364 connect Box68.Size Box128.Dimensions
365 connect Box128.Out Box127.InImage
366 connect Box127.Out Box129.In1
367 connect Box102.Out Box129.In2
368 connect Box129.Out Box130.In
369 connect Box132.Out Box131.In
370 connect Box130.Out Box132.In
371 connect Box131.Out Box133.In
372 connect Box53.BoxChange Box133.BoxExecute
373 connect Box133.Out Box93.Mesh
374 connect Box133.Out Box45.Mesh
375 connect Box133.BoxChange Box94.BoxExecute
376 connect Box133.BoxChange Box93.BoxExecute
377 connect Box78.Out Box134.In
378 connect Box134.Out Box135.In
379 connect Box135.Out Box129.Operation
380 connect Box134.Out Box136.In
381 connect Box136.Out Box130.Lower
382 connect Box102.Out Box137.In0
383 connect Box137.Out Box138.In
384 connect Box68.TypeName Box139.OutputFormat
385 connect Box68.Spacing Box139.Spacing
386 connect Box68.Size Box139.Dimensions
387 connect Box139.Out Box138.ErrorValue
388 connect Box138.Out Box114.In
389 connect Box53.BoxChange Box127.BoxExecute
390 connect Box35.Out Box140.in
391 connect Box140.widget Box125.Widget3
393 # Complex input ports
394 input point showNpoints.In " "
395 input mesh Box67.In " "
396 input image Box35.In " "
397 input title Box08.WinTitle " "
398 input meshmanagermodel Box46.In " "
399 input boxChange Box63.In " "
400 input wxvtkbaseview2 Box64.In " "
401 input wxvtkbaseview3 Box65.In " "
402 input wxvtkbaseview4 Box69.In " "
403 input wxvtkbaseview1 Box71.In " "
405 # Complex output ports
406 output widget Box08.Widget " "
407 output interactorStyleMaracas Box57.InteractorStyleMaracas " "
408 output interactorStyleMaracas2 Box57.InteractorStyleMaracas2 " "
409 output interactorStyleMaracas3 Box57.InteractorStyleMaracas3 " "
410 output interactorStyleMaracas4 Box57.InteractorStyleMaracas4 " "