1 # ----------------------------------
2 # - BBTKGEditor v 1.5 BBS BlackBox Script (Complex Box)
3 # - /Users/davila/Creatis/C23/creatools_source/creaMaracasVisu/bbtk/bbs/boxes/Mesh_tool_ApplyPatch.bbs
4 # ----------------------------------
8 include creaMaracasVisu
14 define Mesh_tool_ApplyPatch 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 creaVtk:BooleanOperationPolyDataFilter Box77
73 set Box77.BoxProcessMode "Manual"
74 set Box77.ReorientDifferenceCells "false"
77 set Box78.In "Union Intersection Difference"
79 new wx:LayoutLine Box79
80 set Box79.Orientation "H"
81 set Box79.WinTitle "New Surface ( Magenta = Red+Yellow )"
83 new wx:CommandButton Box80
86 new std:MagicBox Box66
88 new std:MagicBox Box67
90 new vtk:vtkImageDataPointerRelay Box35
94 set Box34.Label "true"
97 set Box34.ReactiveOnTrack "true"
98 set Box34.Title "Splines Opacity"
103 new creaMaracasVisu:PolyDataToActor_Widget Box37
104 set Box37.color "0 1 1"
105 set Box37.meshOpacity "100"
107 new wx:LayoutLine Box38
108 set Box38.Orientation "H"
109 set Box38.WinTitle "Interpolated Surface (Yellow)"
111 new wx:LayoutTab Box39
113 new wx:LayoutTab Box40
115 new wx:CommandButton Box42
116 set Box42.Label "Apply (Magenta->To Red)"
118 new wx:CommandButton Box43
119 set Box43.Label "Reset Tool"
121 new wx:LayoutLine Box44
122 set Box44.Orientation "V"
123 set Box44.WinTitle "1.2 Mesh Action"
125 new creaVtk:MeshManager_tool Box45
128 new std:MagicBox Box46
130 new wx:ComboBox Box49
131 set Box49.In "25 50 100 150"
132 set Box49.Selection "0"
133 set Box49.Title "Number of Points"
135 new wx:LayoutLine Box50
136 set Box50.Orientation "V"
137 set Box50.WinTitle "Config"
139 new std:MultipleInputs Box51
141 new creaMaracasVisu:ShowNPoints_Tools Box52
144 new std:MultipleInputs Box53
146 new std:MultipleInputs Box55
148 new std:MagicBox Box63
150 new std:MagicBox Box64
152 new std:MagicBox Box65
154 new std:MagicBox Box69
156 new std:MagicBox Box71
158 new creaMaracasVisu:MeshContours_Widget Box72
159 set Box72.colorMesh "0 1 1"
161 new wx:LayoutLine Box81
163 new wx:LayoutTab Box82
165 new wx:LayoutTab Box86
167 new wx:OutputText Box87
169 new wx:OutputText Box88
171 new creaVtk:MeshManager Box92
173 new creaVtk:MeshManager_tool Box93
176 new std:MagicBox Box94
178 new creaVtk:PolyDataNormals Box95
181 new creaVtk:LinearExtrusionFilter Box96
183 new creaMaracasVisu:PolyDataToActor_Widget Box98
187 set Box99.Label "true"
190 set Box99.ReactiveOnTrack "true"
191 set Box99.Title "Angle Correction"
196 new wx:LayoutLine Box101
197 set Box101.Orientation "V"
199 new wx:LayoutLine Box102
200 set Box102.Orientation "H"
201 set Box102.WinTitle "Extrusion"
203 new std:MultipleInputs Box103
205 new creaMaracasVisu:wxVtkBaseView_Info Box105
207 new wx:LayoutTab Box106
209 new creaMaracasVisu:MeshContours_Widget Box107
210 set Box107.colorMesh "1 1 0"
212 new creaVtk:MeshReduction_DecimatePro Box108
213 set Box108.TargetReduction "0.8"
215 new std:MagicBox Box109
217 new creaVtk:MeshReduction_QuadricDecimation Box110
218 set Box110.TargetReduction "0.5"
220 new std:AddStringToVector Box111
221 set Box111.In0 "Tool - Inverse Normals"
223 new std:VectorFilterString Box112
224 set Box112.In0 "0 1 2 3 4 5 6 7 8 9 10 11"
225 set Box112.In1 "1 5 10 20 30 40 50 0 100 110 200 210"
228 new std:ConcatStrings Box114
230 new creaVtk:PolyDataNormals Box115
232 new creaVtk:PolyDataNormals Box116
234 new wx:LayoutLine Box117
235 set Box117.Orientation "H"
239 set Box118.Label "true"
242 set Box118.ReactiveOnTrack "true"
243 set Box118.Title "Extrusion"
245 new std:AddStringToVector Box119
246 set Box119.In0 "Auto Add Points (Start/Stop)"
248 new creaMaracasVisu:ShowNPoints_Tools Box120
249 set Box120.BoxProcessMode "Manual"
250 set Box120.Type "220"
252 new wx:CommandButton Box121
255 new wx:CommandButton Box127
258 new creaMaracasVisu:ShowNPoints_Tools Box128
259 set Box128.BoxProcessMode "Manual"
260 set Box128.Type "220"
262 new std:ConcatStrings Box130
265 new std:ConcatStrings Box131
268 new std:MultipleInputs Box126
270 new wx:LayoutLine Box129
271 set Box129.Orientation "H"
273 new std:GetVectorDoubleSubVector Box132
274 set Box132.ErrorValue "0"
278 new creaVtk:CleanPolyData Box133
280 new wx:LayoutLine Box134
281 set Box134.Orientation "V"
282 set Box134.WinTitle "1.3 Apply Changes"
284 new wx:LayoutLine Box145
285 set Box145.Orientation "H"
286 set Box145.WinTitle "Extrusion"
288 new wx:LayoutLine Box146
289 set Box146.Orientation "H"
290 set Box146.WinTitle "New Surface ( Magenta = Red+Yellow )"
292 new wx:LayoutTab Box147
295 connect Box06.LstContourPointsX Box04.LstX
296 connect showNpoints.lstIndexs Box06.LstIndexsIn
297 connect Box06.LstContourPointsY Box04.LstY
298 connect Box06.LstContourPointsZ Box04.LstZ
299 connect Box06.LstIndexsOut Box04.LstIndexs
300 connect Box30.BoxChange Box31.In4
301 connect showNpoints.lstIndexs Box29.LstIndexsIn
302 connect Box29.LstContourPointsX Box30.lstPointX
303 connect Box29.LstContourPointsY Box30.lstPointY
304 connect Box29.LstContourPointsZ Box30.lstPointZ
305 connect Box29.LstIndexsOut Box30.lstIndexs
306 connect Box31.BoxChange Box11.BoxExecute
307 connect showNpoints.WidgetShowNPoints Box60.WidgetShowNPoints
308 connect Box57.BoxChange Box60.BoxExecute
309 connect Box68.Spacing Box60.Spacing
310 connect showNpoints.lstPointsX Box70.In0
311 connect showNpoints.lstPointsY Box70.In1
312 connect showNpoints.lstPointsZ Box70.In2
313 connect Box70.Out0 Box06.LstControlPointsX
314 connect Box70.Out1 Box06.LstControlPointsY
315 connect Box70.Out2 Box06.LstControlPointsZ
316 connect Box70.Out0 Box29.LstControlPointsX
317 connect Box70.Out1 Box29.LstControlPointsY
318 connect Box70.Out2 Box29.LstControlPointsZ
319 connect Box78.Out Box77.Operation
320 connect Box66.Out Box11.Renderer
321 connect Box66.Out Box30.Renderer
322 connect Box66.Out showNpoints.Renderer
323 connect Box67.Out Box77.In1
324 connect Box35.Out Box68.In
325 connect Box68.Spacing Box70.k1
326 connect Box35.Out showNpoints.Image
327 connect Box34.Out Box36.In1
328 connect Box36.Out Box30.Opacity
329 connect Box34.BoxChange Box31.In2
330 connect Box66.Out Box37.render
331 connect Box38.Widget Box39.Widget2
332 connect Box46.Out Box45.MeshManagerModel
333 connect Box49.OutString Box06.NbPoints
334 connect Box45.BoxChange Box51.In2
335 connect Box52.BoxChange Box51.In4
336 connect showNpoints.WidgetShowNPoints Box52.WidgetShowNPoints
337 connect Box80.BoxChange Box53.In2
338 connect Box53.BoxChange Box77.BoxExecute
339 connect Box43.BoxChange Box55.BoxExecute
340 connect Box52.BoxChange Box55.In2
341 connect Box43.BoxChange Box53.In6
342 connect Box63.BoxChange showNpoints.BoxExecute
343 connect Box64.Out Box57.wxVtkBaseView2
344 connect Box65.Out Box57.wxVtkBaseView3
345 connect Box69.Out Box57.wxVtkBaseView4
346 connect Box71.Out Box57.wxVtkBaseView
347 connect Box71.Out Box72._wxvtkbaseview3D1
348 connect Box64.Out Box72._wxvtkbaseview2D1
349 connect Box65.Out Box72._wxvtkbaseview2D2
350 connect Box69.Out Box72._wxvtkbaseview2D3
351 connect Box37.widget Box79.Widget4
352 connect Box39.Widget Box81.Widget2
353 connect Box44.Widget Box82.Widget2
354 connect Box86.Widget Box38.Widget2
355 connect Box50.Widget Box86.Widget4
356 connect showNpoints.Widget Box86.Widget2
357 connect Box87.Widget Box50.Widget8
358 connect Box88.Widget Box50.Widget9
359 connect Box49.Widget Box50.Widget2
360 connect Box34.Widget Box50.Widget4
361 connect Box57.BoxChange Box08.BoxExecute
362 connect Box92.MeshManagerModel Box93.MeshManagerModel
363 connect Box77.BoxChange Box93.BoxExecute
364 connect Box92.MeshBase Box72._polydata
365 connect Box92.MeshBase Box37.polydata
366 connect Box37.boxchange Box72._execute
367 connect Box81.Widget Box08.Widget2
368 connect Box94.BoxChange Box37.boxexecute
369 connect Box77.BoxChange Box94.BoxExecute
370 connect Box04.Out Box95.In
371 connect Box95.Out Box96.In
372 connect Box99.Out Box100.In1
373 connect Box100.Out Box95.Param
374 connect Box99.BoxChange Box103.In4
375 connect Box103.BoxChange Box98.boxexecute
376 connect Box71.Out Box105.wxVtkBaseView
377 connect Box105.vtkRenderer Box66.In
378 connect Box98.boxchange Box31.In6
379 connect Box101.Widget Box102.Widget2
380 connect Box102.Widget Box106.Widget2
381 connect Box40.Widget Box81.Widget6
382 connect Box66.Out Box98.render
383 connect Box64.Out Box107._wxvtkbaseview2D1
384 connect Box65.Out Box107._wxvtkbaseview2D2
385 connect Box69.Out Box107._wxvtkbaseview2D3
386 connect Box71.Out Box107._wxvtkbaseview3D1
387 connect Box103.BoxChange Box107._execute
388 connect Box63.BoxChange Box103.In1
389 connect Box67.Out Box60.Mesh
390 connect Box109.Out Box98.polydata
391 connect Box109.Out Box107._polydata
392 connect Box109.Out Box77.In2
393 connect Box96.Out Box110.In
394 connect Box72._widget Box79.Widget3
395 connect Box58.Out Box111.StringVector
396 connect Box111.Out Box57.In
397 connect Box57.Out Box112.sk1
398 connect Box112.Out1 Box114.In1
399 connect Box114.Out Box60.Type
400 connect Box115.Out Box45.Mesh
401 connect Box96.Out Box116.In
402 connect Box116.Out Box109.In
403 connect Box115.Out Box93.Mesh
404 connect Box43.Widget Box44.Widget1
405 connect Box78.Widget Box117.Widget2
406 connect Box80.Widget Box117.Widget4
407 connect Box117.Widget Box44.Widget3
408 connect Box118.Out Box96.ScalarFactor
409 connect Box118.BoxChange Box103.In3
410 connect Box119.Out Box58.StringVector
411 connect Box68.Spacing Box120.Spacing
412 connect showNpoints.WidgetShowNPoints Box120.WidgetShowNPoints
413 connect Box121.BoxChange Box120.BoxExecute
414 connect Box127.BoxChange Box128.BoxExecute
415 connect Box68.Spacing Box128.Spacing
416 connect showNpoints.WidgetShowNPoints Box128.WidgetShowNPoints
417 connect Box130.Out Box120.Params
418 connect Box131.Out Box128.Params
419 connect Box120.BoxChange Box31.In3
420 connect Box128.BoxChange Box31.In5
421 connect showNpoints.BoxChange Box126.In4
422 connect Box128.BoxChange Box126.In2
423 connect Box120.BoxChange Box126.In1
424 connect Box126.BoxChange Box31.BoxExecute
425 connect Box127.Widget Box129.Widget4
426 connect Box121.Widget Box129.Widget6
427 connect Box99.Widget Box101.Widget7
428 connect Box118.Widget Box101.Widget4
429 connect Box129.Widget Box101.Widget1
430 connect Box60.Out Box132.In
431 connect Box132.Out Box131.In1
432 connect Box132.Out Box130.In1
433 connect Box77.Out Box133.In
434 connect Box133.Out Box115.In
435 connect Box42.Widget Box134.Widget3
436 connect Box42.BoxChange Box51.BoxExecute
437 connect Box106.Widget Box38.Widget4
438 connect Box98.widget Box145.Widget4
439 connect Box107._widget Box145.Widget2
440 connect Box145.Widget Box38.Widget7
441 connect Box79.Widget Box146.Widget6
442 connect Box146.Widget Box40.Widget2
443 connect Box82.Widget Box146.Widget2
444 connect Box134.Widget Box147.Widget2
445 connect Box147.Widget Box146.Widget3
446 connect Box42.BoxChange Box53.In3
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 " "