1 # ----------------------------------
2 # - BBTKGEditor v 1.5 BBS BlackBox Script (Complex Box)
3 # - /Users/davila/Creatis/C23/creatools_source/creaMaracasVisu/bbtk/bbs/boxes/Mesh_tool_ApplyPatchSimple.bbs
4 # ----------------------------------
8 include creaMaracasVisu
14 define Mesh_tool_ApplyPatchSimple creaMaracasVisu
16 author "info-dev@creatis.insa-lyon.fr"
17 description "Show N Points"
21 new creaMaracasVisu:ShowNPoints showNpoints
22 set showNpoints.Radio "2"
23 set showNpoints.Type "4"
24 set showNpoints.WinTitle "1.1 Splines"
26 new creaVtk:CreateMeshFromPoints Box04
28 new creaMaracasVisu:ManualContourModel_Box Box06
29 set Box06.DoubleContour "1"
30 set Box06.NbPoints "100"
31 set Box06.OpenClose "false"
32 set Box06.OpenClose2 "false"
34 new wx:LayoutLine Box08
36 new vtk:UpdateRender Box11
37 set Box11.Active "true"
39 new creaMaracasVisu:DrawAxisTree3D Box30
40 set Box30.Colour "0 0 1"
41 set Box30.LineWidth "2"
43 new std:MultipleInputs Box31
45 new creaMaracasVisu:ManualContourModel_Box Box29
46 set Box29.NbPoints "40"
47 set Box29.OpenClose "false"
48 set Box29.OpenClose2 "false"
50 new creaMaracasVisu:wxPopupMenu Box57
51 set Box57.WithCtrlKey "true"
53 new std:AddStringToVector Box58
54 set Box58.In0 "+ Add point"
55 set Box58.In1 "(+) Insert point"
56 set Box58.In2 "Track point"
57 set Box58.In3 "Set Nearest point"
58 set Box58.In4 "- Erase point"
59 set Box58.In5 "-- Delete all points"
60 set Box58.In6 "----------------------"
61 set Box58.In7 "+> Insert group after"
62 set Box58.In8 "- Delete group"
63 set Box58.In9 "Tool - 3 or 4 points to surface"
65 new creaMaracasVisu:ShowNPoints_Tools Box60
67 new vtk:ImageVtkProperties Box68
69 new std:VectorFilterDouble Box70
72 new wx:LayoutLine Box79
73 set Box79.Orientation "H"
74 set Box79.WinTitle "New Surface ( Magenta = Red+Yellow )"
76 new wx:CommandButton Box80
79 new std:MagicBox Box66
81 new std:MagicBox Box67
83 new creaMaracasVisu:PolyDataToActor_Widget Box48
85 new vtk:vtkImageDataPointerRelay Box35
89 set Box34.Label "true"
92 set Box34.ReactiveOnTrack "true"
93 set Box34.Title "Splines Opacity"
98 new creaMaracasVisu:PolyDataToActor_Widget Box37
99 set Box37.color "0 1 1"
100 set Box37.meshOpacity "100"
102 new wx:LayoutLine Box38
103 set Box38.Orientation "H"
105 new wx:LayoutTab Box40
107 new wx:CommandButton Box42
108 set Box42.Label "Apply (Magenta->To Red)"
110 new wx:CommandButton Box43
111 set Box43.Label "Reset Tool"
113 new wx:LayoutLine Box44
114 set Box44.Orientation "V"
115 set Box44.WinTitle "1.3 Mesh Action"
117 new creaVtk:MeshManager_tool Box45
120 new std:MagicBox Box46
122 new wx:ComboBox Box49
123 set Box49.In "25 50 100 150"
124 set Box49.Selection "0"
125 set Box49.Title "Number of Points"
127 new wx:LayoutLine Box50
128 set Box50.Orientation "V"
129 set Box50.WinTitle "Config"
131 new std:MultipleInputs Box51
133 new creaMaracasVisu:ShowNPoints_Tools Box52
136 new std:MultipleInputs Box53
138 new std:MultipleInputs Box55
140 new creaMaracasVisu:MeshContours_Widget Box62
141 set Box62.colorMesh "1 1 0"
143 new std:MagicBox Box63
145 new std:MagicBox Box64
147 new std:MagicBox Box65
149 new std:MagicBox Box69
151 new std:MagicBox Box71
153 new creaMaracasVisu:MeshContours_Widget Box72
154 set Box72.colorMesh "0 1 1"
156 new wx:LayoutLine Box81
157 set Box81.WinTitle "Step 1. Surface"
159 new wx:LayoutTab Box82
161 new wx:LayoutTab Box86
163 new wx:OutputText Box87
165 new wx:OutputText Box88
167 new creaVtk:MeshManager Box92
169 new creaVtk:MeshManager_tool Box93
172 new creaMaracasVisu:wxVtkBaseView_Info Box105
174 new std:AddStringToVector Box111
175 set Box111.In0 "Tool - Inverse Normals"
177 new std:VectorFilterString Box112
178 set Box112.In0 "0 1 2 3 4 5 6 7 8 9 10 11"
179 set Box112.In1 "1 5 10 20 30 40 50 0 100 110 200 210"
182 new std:ConcatStrings Box114
184 new wx:LayoutLine Box117
185 set Box117.Orientation "H"
187 new std:AddStringToVector Box119
188 set Box119.In0 "Auto Add Points (Start/Stop)"
190 new creaMaracasVisu:ShowNPoints_Tools Box120
191 set Box120.BoxProcessMode "Manual"
192 set Box120.Type "220"
194 new wx:CommandButton Box121
197 new wx:CommandButton Box127
200 new creaMaracasVisu:ShowNPoints_Tools Box128
201 set Box128.BoxProcessMode "Manual"
202 set Box128.Type "220"
204 new std:ConcatStrings Box130
207 new std:ConcatStrings Box131
210 new std:MultipleInputs Box126
212 new wx:LayoutLine Box129
213 set Box129.Orientation "H"
214 set Box129.WinTitle "1.2 Curvature"
216 new std:GetVectorDoubleSubVector Box132
217 set Box132.ErrorValue "0"
221 new wx:LayoutLine Box134
222 set Box134.Orientation "V"
223 set Box134.WinTitle "1.4 Apply Changes"
225 new creaVtk:CleanMeshWithPatch Box135
227 new creaVtk:PolyDataToImageData Box139
229 new vtk:CreateImage Box140
231 new vtk:MarchingCubes Box141
233 new vtk:ImageGaussianSmooth Box142
234 set Box142.StdDevX "1"
235 set Box142.StdDevY "1"
236 set Box142.StdDevZ "1"
238 new creaVtk:MeshReduction_DecimatePro Box143
239 set Box143.BoxProcessMode "Manual"
240 set Box143.TargetReduction "0.8"
242 new wx:LayoutLine Box145
243 set Box145.Orientation "V"
244 set Box145.WinTitle "Visu"
246 new wx:LayoutTab Box146
248 new wx:LayoutLine Box147
249 set Box147.Orientation "V"
250 set Box147.WinTitle "Visu"
252 new wx:LayoutTab Box148
254 new std:MagicBox Box150
256 new creaVtk:ImageGaussianSmooth2 Box151
257 set Box151.StdDevX "1"
258 set Box151.StdDevY "1"
259 set Box151.StdDevZ "1"
261 new creaVtk:MarchingCubes2 Box152
262 set Box152.Value "128"
264 new std:MultipleInputs Box154
266 new wx:LayoutLine Box136
267 set Box136.Orientation "V"
268 set Box136.WinTitle "conf"
270 new wx:LayoutTab Box137
272 new wx:LayoutLine Box138
273 set Box138.Orientation "V"
274 set Box138.WinTitle "conf"
276 new wx:LayoutTab Box144
278 new wx:OutputText Box149
280 new wx:OutputText Box153
282 new wx:OutputText Box155
284 new wx:OutputText Box156
287 connect Box06.LstContourPointsX Box04.LstX
288 connect showNpoints.lstIndexs Box06.LstIndexsIn
289 connect Box06.LstContourPointsY Box04.LstY
290 connect Box06.LstContourPointsZ Box04.LstZ
291 connect Box06.LstIndexsOut Box04.LstIndexs
292 connect Box30.BoxChange Box31.In4
293 connect showNpoints.lstIndexs Box29.LstIndexsIn
294 connect Box29.LstContourPointsX Box30.lstPointX
295 connect Box29.LstContourPointsY Box30.lstPointY
296 connect Box29.LstContourPointsZ Box30.lstPointZ
297 connect Box29.LstIndexsOut Box30.lstIndexs
298 connect Box31.BoxChange Box11.BoxExecute
299 connect showNpoints.WidgetShowNPoints Box60.WidgetShowNPoints
300 connect Box57.BoxChange Box60.BoxExecute
301 connect Box68.Spacing Box60.Spacing
302 connect showNpoints.lstPointsX Box70.In0
303 connect showNpoints.lstPointsY Box70.In1
304 connect showNpoints.lstPointsZ Box70.In2
305 connect Box70.Out0 Box06.LstControlPointsX
306 connect Box70.Out1 Box06.LstControlPointsY
307 connect Box70.Out2 Box06.LstControlPointsZ
308 connect Box70.Out0 Box29.LstControlPointsX
309 connect Box70.Out1 Box29.LstControlPointsY
310 connect Box70.Out2 Box29.LstControlPointsZ
311 connect Box66.Out Box11.Renderer
312 connect Box66.Out Box30.Renderer
313 connect Box66.Out showNpoints.Renderer
314 connect Box04.Out Box48.polydata
315 connect Box66.Out Box48.render
316 connect Box48.boxchange Box31.In1
317 connect Box35.Out Box68.In
318 connect Box68.Spacing Box70.k1
319 connect Box35.Out showNpoints.Image
320 connect Box34.Out Box36.In1
321 connect Box36.Out Box30.Opacity
322 connect Box34.BoxChange Box31.In2
323 connect Box66.Out Box37.render
324 connect Box79.Widget Box40.Widget2
325 connect Box46.Out Box45.MeshManagerModel
326 connect Box49.OutString Box06.NbPoints
327 connect Box45.BoxChange Box51.In2
328 connect Box52.BoxChange Box51.In4
329 connect showNpoints.WidgetShowNPoints Box52.WidgetShowNPoints
330 connect Box80.BoxChange Box53.In2
331 connect Box43.BoxChange Box55.BoxExecute
332 connect Box52.BoxChange Box55.In2
333 connect Box43.BoxChange Box53.In6
334 connect Box63.BoxChange showNpoints.BoxExecute
335 connect Box63.BoxChange Box62._execute
336 connect Box64.Out Box57.wxVtkBaseView2
337 connect Box64.Out Box62._wxvtkbaseview2D1
338 connect Box65.Out Box57.wxVtkBaseView3
339 connect Box65.Out Box62._wxvtkbaseview2D2
340 connect Box69.Out Box57.wxVtkBaseView4
341 connect Box69.Out Box62._wxvtkbaseview2D3
342 connect Box71.Out Box57.wxVtkBaseView
343 connect Box71.Out Box62._wxvtkbaseview3D1
344 connect Box71.Out Box72._wxvtkbaseview3D1
345 connect Box64.Out Box72._wxvtkbaseview2D1
346 connect Box65.Out Box72._wxvtkbaseview2D2
347 connect Box69.Out Box72._wxvtkbaseview2D3
348 connect Box44.Widget Box82.Widget2
349 connect Box82.Widget Box79.Widget2
350 connect Box86.Widget Box38.Widget2
351 connect Box50.Widget Box86.Widget4
352 connect showNpoints.Widget Box86.Widget2
353 connect Box87.Widget Box50.Widget8
354 connect Box88.Widget Box50.Widget9
355 connect Box49.Widget Box50.Widget2
356 connect Box34.Widget Box50.Widget4
357 connect Box57.BoxChange Box08.BoxExecute
358 connect Box92.MeshManagerModel Box93.MeshManagerModel
359 connect Box92.MeshBase Box72._polydata
360 connect Box92.MeshBase Box37.polydata
361 connect Box37.boxchange Box72._execute
362 connect Box81.Widget Box08.Widget2
363 connect Box71.Out Box105.wxVtkBaseView
364 connect Box105.vtkRenderer Box66.In
365 connect Box40.Widget Box81.Widget6
366 connect Box04.Out Box62._polydata
367 connect Box67.Out Box60.Mesh
368 connect Box58.Out Box111.StringVector
369 connect Box111.Out Box57.In
370 connect Box57.Out Box112.sk1
371 connect Box112.Out1 Box114.In1
372 connect Box114.Out Box60.Type
373 connect Box43.Widget Box44.Widget1
374 connect Box80.Widget Box117.Widget4
375 connect Box117.Widget Box44.Widget3
376 connect Box119.Out Box58.StringVector
377 connect Box68.Spacing Box120.Spacing
378 connect showNpoints.WidgetShowNPoints Box120.WidgetShowNPoints
379 connect Box121.BoxChange Box120.BoxExecute
380 connect Box127.BoxChange Box128.BoxExecute
381 connect Box68.Spacing Box128.Spacing
382 connect showNpoints.WidgetShowNPoints Box128.WidgetShowNPoints
383 connect Box130.Out Box120.Params
384 connect Box131.Out Box128.Params
385 connect Box120.BoxChange Box31.In3
386 connect Box128.BoxChange Box31.In5
387 connect showNpoints.BoxChange Box126.In4
388 connect Box128.BoxChange Box126.In2
389 connect Box120.BoxChange Box126.In1
390 connect Box126.BoxChange Box31.BoxExecute
391 connect Box127.Widget Box129.Widget4
392 connect Box121.Widget Box129.Widget6
393 connect Box60.Out Box132.In
394 connect Box132.Out Box131.In1
395 connect Box132.Out Box130.In1
396 connect Box42.Widget Box134.Widget3
397 connect Box67.Out Box135.Mesh
398 connect Box04.Out Box135.Patch
399 connect showNpoints.lstPointsX Box135.LstX
400 connect showNpoints.lstPointsY Box135.LstY
401 connect showNpoints.lstPointsZ Box135.LstZ
402 connect showNpoints.lstIndexs Box135.LstIndexs
403 connect Box68.Spacing Box135.Spacing
404 connect Box135.Out Box139.InPolyData
405 connect Box68.Spacing Box140.Spacing
406 connect Box68.Size Box140.Dimensions
407 connect Box68.TypeName Box140.OutputFormat
408 connect Box140.Out Box139.InImage
409 connect Box139.Out Box142.In
410 connect Box129.Widget Box146.Widget2
411 connect Box146.Widget Box38.Widget4
412 connect Box42.BoxChange Box51.BoxExecute
413 connect Box134.Widget Box148.Widget3
414 connect Box148.Widget Box79.Widget4
415 connect Box143.Out Box45.Mesh
416 connect Box143.Out Box93.Mesh
417 connect Box53.BoxChange Box143.BoxExecute
418 connect Box53.BoxChange Box150.BoxExecute
419 connect Box139.Out Box151.In
420 connect Box151.Out Box141.In
421 connect Box151.Out Box152.In
422 connect Box152.Out Box143.In
423 connect Box42.BoxChange Box53.In3
424 connect Box150.BoxChange Box37.boxexecute
425 connect Box150.BoxChange Box154.In1
426 connect Box143.BoxChange Box154.In3
427 connect Box154.BoxChange Box93.BoxExecute
428 connect Box38.Widget Box81.Widget2
429 connect Box62._widgetB Box136.Widget2
430 connect Box48.widgetB Box136.Widget4
431 connect Box62._widgetA Box145.Widget2
432 connect Box48.widgetA Box145.Widget4
433 connect Box145.Widget Box137.Widget2
434 connect Box137.Widget Box38.Widget6
435 connect Box136.Widget Box137.Widget4
436 connect Box72._widgetA Box147.Widget2
437 connect Box37.widgetA Box147.Widget4
438 connect Box72._widgetB Box138.Widget2
439 connect Box37.widgetB Box138.Widget4
440 connect Box147.Widget Box144.Widget2
441 connect Box138.Widget Box144.Widget4
442 connect Box144.Widget Box79.Widget6
443 connect Box149.Widget Box145.Widget9
444 connect Box153.Widget Box136.Widget9
445 connect Box155.Widget Box147.Widget9
446 connect Box156.Widget Box138.Widget9
448 # Complex input ports
449 input point showNpoints.In " "
450 input mesh Box67.In " "
451 input image Box35.In " "
452 input title Box08.WinTitle " "
453 input meshmanagermodel Box46.In " "
454 input boxChange Box63.In " "
455 input wxvtkbaseview2 Box64.In " "
456 input wxvtkbaseview3 Box65.In " "
457 input wxvtkbaseview4 Box69.In " "
458 input wxvtkbaseview1 Box71.In " "
460 # Complex output ports
461 output widget Box08.Widget " "
462 output interactorStyleMaracas Box57.InteractorStyleMaracas " "
463 output interactorStyleMaracas2 Box57.InteractorStyleMaracas2 " "
464 output interactorStyleMaracas3 Box57.InteractorStyleMaracas3 " "
465 output interactorStyleMaracas4 Box57.InteractorStyleMaracas4 " "