1 # ----------------------------------
2 # - BBTKGEditor v 1.5 BBS BlackBox Script (Complex Box)
3 # - /home/garzon/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
84 set Box80.Label "Refresh"
86 new std:MagicBox Box66
88 new std:MagicBox Box67
90 new creaMaracasVisu:PolyDataToActor_Widget Box48
92 new vtk:vtkImageDataPointerRelay Box35
96 set Box34.Label "true"
99 set Box34.ReactiveOnTrack "true"
100 set Box34.Title "Splines Opacity"
105 new creaMaracasVisu:PolyDataToActor_Widget Box37
106 set Box37.color "0 1 1"
107 set Box37.meshOpacity "100"
109 new wx:LayoutLine Box38
110 set Box38.Orientation "H"
111 set Box38.WinTitle "Interpolated Surface (Yellow)"
113 new wx:LayoutTab Box39
115 new wx:LayoutTab Box40
117 new wx:CommandButton Box42
118 set Box42.Label "Apply (Magenta->To Red)"
120 new wx:CommandButton Box43
121 set Box43.Label "Reset Tool"
123 new wx:LayoutLine Box44
124 set Box44.Orientation "V"
125 set Box44.WinTitle "1.2 Mesh Action"
127 new creaVtk:MeshManager_tool Box45
130 new std:MagicBox Box46
132 new wx:ComboBox Box49
133 set Box49.In "25 50 100 150"
134 set Box49.Selection "0"
135 set Box49.Title "Number of Points"
137 new wx:LayoutLine Box50
138 set Box50.Orientation "V"
139 set Box50.WinTitle "Config"
141 new std:MultipleInputs Box51
143 new creaMaracasVisu:ShowNPoints_Tools Box52
146 new std:MultipleInputs Box53
148 new std:MultipleInputs Box55
150 new creaMaracasVisu:MeshContours_Widget Box62
151 set Box62.colorMesh "0 0 1"
153 new std:MagicBox Box63
155 new std:MagicBox Box64
157 new std:MagicBox Box65
159 new std:MagicBox Box69
161 new std:MagicBox Box71
163 new creaMaracasVisu:MeshContours_Widget Box72
164 set Box72.colorMesh "0 1 1"
166 new wx:LayoutLine Box81
167 set Box81.WinTitle "Step 1. Surface"
169 new wx:LayoutTab Box82
171 new wx:LayoutTab Box86
173 new wx:OutputText Box87
175 new wx:OutputText Box88
177 new creaVtk:MeshManager Box92
179 new creaVtk:MeshManager_tool Box93
182 new std:MagicBox Box94
184 new creaVtk:PolyDataNormals Box95
187 new creaVtk:LinearExtrusionFilter Box96
189 new creaMaracasVisu:PolyDataToActor_Widget Box98
193 set Box99.Label "true"
196 set Box99.ReactiveOnTrack "true"
197 set Box99.Title "Angle Correction"
202 new wx:LayoutLine Box101
203 set Box101.Orientation "V"
205 new wx:LayoutLine Box102
206 set Box102.Orientation "H"
207 set Box102.WinTitle "Extrusion"
209 new std:MultipleInputs Box103
211 new creaMaracasVisu:wxVtkBaseView_Info Box105
213 new wx:LayoutTab Box106
215 new creaMaracasVisu:MeshContours_Widget Box107
216 set Box107.colorMesh "1 1 0"
218 new creaVtk:MeshReduction_DecimatePro Box108
219 set Box108.TargetReduction "0.8"
221 new std:MagicBox Box109
223 new creaVtk:MeshReduction_QuadricDecimation Box110
224 set Box110.TargetReduction "0.5"
226 new std:AddStringToVector Box111
227 set Box111.In0 "Tool - Inverse Normals"
229 new std:VectorFilterString Box112
230 set Box112.In0 "0 1 2 3 4 5 6 7 8 9 10 11"
231 set Box112.In1 "1 5 10 20 30 40 50 0 100 110 200 210"
234 new std:ConcatStrings Box114
236 new creaVtk:PolyDataNormals Box115
238 new creaVtk:PolyDataNormals Box116
240 new wx:LayoutLine Box117
241 set Box117.Orientation "H"
245 set Box118.Label "true"
248 set Box118.ReactiveOnTrack "true"
249 set Box118.Title "Extrusion"
251 new std:AddStringToVector Box119
252 set Box119.In0 "Auto Add Points (Start/Stop)"
254 new creaMaracasVisu:ShowNPoints_Tools Box120
255 set Box120.BoxProcessMode "Manual"
256 set Box120.Type "220"
258 new wx:CommandButton Box121
261 new wx:CommandButton Box127
264 new creaMaracasVisu:ShowNPoints_Tools Box128
265 set Box128.BoxProcessMode "Manual"
266 set Box128.Type "220"
268 new std:ConcatStrings Box130
271 new std:ConcatStrings Box131
274 new std:MultipleInputs Box126
276 new wx:LayoutLine Box129
277 set Box129.Orientation "H"
279 new std:GetVectorDoubleSubVector Box132
280 set Box132.ErrorValue "0"
284 new creaVtk:CleanPolyData Box133
286 new wx:LayoutLine Box134
287 set Box134.Orientation "V"
288 set Box134.WinTitle "1.3 Apply Changes"
291 connect Box06.LstContourPointsX Box04.LstX
292 connect showNpoints.lstIndexs Box06.LstIndexsIn
293 connect Box06.LstContourPointsY Box04.LstY
294 connect Box06.LstContourPointsZ Box04.LstZ
295 connect Box06.LstIndexsOut Box04.LstIndexs
296 connect Box30.BoxChange Box31.In4
297 connect showNpoints.lstIndexs Box29.LstIndexsIn
298 connect Box29.LstContourPointsX Box30.lstPointX
299 connect Box29.LstContourPointsY Box30.lstPointY
300 connect Box29.LstContourPointsZ Box30.lstPointZ
301 connect Box29.LstIndexsOut Box30.lstIndexs
302 connect Box31.BoxChange Box11.BoxExecute
303 connect showNpoints.WidgetShowNPoints Box60.WidgetShowNPoints
304 connect Box57.BoxChange Box60.BoxExecute
305 connect Box68.Spacing Box60.Spacing
306 connect showNpoints.lstPointsX Box70.In0
307 connect showNpoints.lstPointsY Box70.In1
308 connect showNpoints.lstPointsZ Box70.In2
309 connect Box70.Out0 Box06.LstControlPointsX
310 connect Box70.Out1 Box06.LstControlPointsY
311 connect Box70.Out2 Box06.LstControlPointsZ
312 connect Box70.Out0 Box29.LstControlPointsX
313 connect Box70.Out1 Box29.LstControlPointsY
314 connect Box70.Out2 Box29.LstControlPointsZ
315 connect Box78.Out Box77.Operation
316 connect Box66.Out Box11.Renderer
317 connect Box66.Out Box30.Renderer
318 connect Box66.Out showNpoints.Renderer
319 connect Box67.Out Box77.In1
320 connect Box04.Out Box48.polydata
321 connect Box66.Out Box48.render
322 connect Box48.boxchange Box31.In1
323 connect Box35.Out Box68.In
324 connect Box68.Spacing Box70.k1
325 connect Box35.Out showNpoints.Image
326 connect Box34.Out Box36.In1
327 connect Box36.Out Box30.Opacity
328 connect Box34.BoxChange Box31.In2
329 connect Box66.Out Box37.render
330 connect Box38.Widget Box39.Widget2
331 connect Box79.Widget Box40.Widget2
332 connect Box46.Out Box45.MeshManagerModel
333 connect Box49.OutString Box06.NbPoints
334 connect Box42.BoxChange Box51.BoxExecute
335 connect Box45.BoxChange Box51.In2
336 connect Box52.BoxChange Box51.In4
337 connect showNpoints.WidgetShowNPoints Box52.WidgetShowNPoints
338 connect Box80.BoxChange Box53.In2
339 connect Box53.BoxChange Box77.BoxExecute
340 connect Box42.BoxChange Box53.In3
341 connect Box43.BoxChange Box55.BoxExecute
342 connect Box52.BoxChange Box55.In2
343 connect Box43.BoxChange Box53.In6
344 connect Box63.BoxChange showNpoints.BoxExecute
345 connect Box63.BoxChange Box62._execute
346 connect Box64.Out Box57.wxVtkBaseView2
347 connect Box64.Out Box62._wxvtkbaseview2D1
348 connect Box65.Out Box57.wxVtkBaseView3
349 connect Box65.Out Box62._wxvtkbaseview2D2
350 connect Box69.Out Box57.wxVtkBaseView4
351 connect Box69.Out Box62._wxvtkbaseview2D3
352 connect Box71.Out Box57.wxVtkBaseView
353 connect Box71.Out Box62._wxvtkbaseview3D1
354 connect Box71.Out Box72._wxvtkbaseview3D1
355 connect Box64.Out Box72._wxvtkbaseview2D1
356 connect Box65.Out Box72._wxvtkbaseview2D2
357 connect Box69.Out Box72._wxvtkbaseview2D3
358 connect Box37.widget Box79.Widget4
359 connect Box62._widget Box38.Widget7
360 connect Box39.Widget Box81.Widget2
361 connect Box44.Widget Box82.Widget2
362 connect Box82.Widget Box79.Widget2
363 connect Box86.Widget Box38.Widget2
364 connect Box50.Widget Box86.Widget4
365 connect showNpoints.Widget Box86.Widget2
366 connect Box87.Widget Box50.Widget8
367 connect Box88.Widget Box50.Widget9
368 connect Box49.Widget Box50.Widget2
369 connect Box34.Widget Box50.Widget4
370 connect Box57.BoxChange Box08.BoxExecute
371 connect Box92.MeshManagerModel Box93.MeshManagerModel
372 connect Box77.BoxChange Box93.BoxExecute
373 connect Box92.MeshBase Box72._polydata
374 connect Box92.MeshBase Box37.polydata
375 connect Box37.boxchange Box72._execute
376 connect Box81.Widget Box08.Widget2
377 connect Box94.BoxChange Box37.boxexecute
378 connect Box77.BoxChange Box94.BoxExecute
379 connect Box04.Out Box95.In
380 connect Box95.Out Box96.In
381 connect Box99.Out Box100.In1
382 connect Box100.Out Box95.Param
383 connect Box99.BoxChange Box103.In4
384 connect Box103.BoxChange Box98.boxexecute
385 connect Box71.Out Box105.wxVtkBaseView
386 connect Box105.vtkRenderer Box66.In
387 connect Box98.boxchange Box31.In6
388 connect Box101.Widget Box102.Widget2
389 connect Box102.Widget Box106.Widget2
390 connect Box106.Widget Box81.Widget3
391 connect Box40.Widget Box81.Widget6
392 connect Box66.Out Box98.render
393 connect Box04.Out Box62._polydata
394 connect Box64.Out Box107._wxvtkbaseview2D1
395 connect Box65.Out Box107._wxvtkbaseview2D2
396 connect Box69.Out Box107._wxvtkbaseview2D3
397 connect Box71.Out Box107._wxvtkbaseview3D1
398 connect Box107._widget Box102.Widget6
399 connect Box103.BoxChange Box107._execute
400 connect Box63.BoxChange Box103.In1
401 connect Box67.Out Box60.Mesh
402 connect Box109.Out Box98.polydata
403 connect Box109.Out Box107._polydata
404 connect Box109.Out Box77.In2
405 connect Box96.Out Box110.In
406 connect Box72._widget Box79.Widget3
407 connect Box98.widget Box102.Widget8
408 connect Box48.widget Box38.Widget8
409 connect Box58.Out Box111.StringVector
410 connect Box111.Out Box57.In
411 connect Box57.Out Box112.sk1
412 connect Box112.Out1 Box114.In1
413 connect Box114.Out Box60.Type
414 connect Box115.Out Box45.Mesh
415 connect Box96.Out Box116.In
416 connect Box116.Out Box109.In
417 connect Box115.Out Box93.Mesh
418 connect Box43.Widget Box44.Widget1
419 connect Box78.Widget Box117.Widget2
420 connect Box80.Widget Box117.Widget4
421 connect Box117.Widget Box44.Widget3
422 connect Box118.Out Box96.ScalarFactor
423 connect Box118.BoxChange Box103.In3
424 connect Box119.Out Box58.StringVector
425 connect Box68.Spacing Box120.Spacing
426 connect showNpoints.WidgetShowNPoints Box120.WidgetShowNPoints
427 connect Box121.BoxChange Box120.BoxExecute
428 connect Box127.BoxChange Box128.BoxExecute
429 connect Box68.Spacing Box128.Spacing
430 connect showNpoints.WidgetShowNPoints Box128.WidgetShowNPoints
431 connect Box130.Out Box120.Params
432 connect Box131.Out Box128.Params
433 connect Box120.BoxChange Box31.In3
434 connect Box128.BoxChange Box31.In5
435 connect showNpoints.BoxChange Box126.In4
436 connect Box128.BoxChange Box126.In2
437 connect Box120.BoxChange Box126.In1
438 connect Box126.BoxChange Box31.BoxExecute
439 connect Box127.Widget Box129.Widget4
440 connect Box121.Widget Box129.Widget6
441 connect Box99.Widget Box101.Widget7
442 connect Box118.Widget Box101.Widget4
443 connect Box129.Widget Box101.Widget1
444 connect Box60.Out Box132.In
445 connect Box132.Out Box131.In1
446 connect Box132.Out Box130.In1
447 connect Box77.Out Box133.In
448 connect Box133.Out Box115.In
449 connect Box134.Widget Box82.Widget4
450 connect Box42.Widget Box134.Widget3
452 # Complex input ports
453 input point showNpoints.In " "
454 input mesh Box67.In " "
455 input image Box35.In " "
456 input title Box08.WinTitle " "
457 input meshmanagermodel Box46.In " "
458 input boxChange Box63.In " "
459 input wxvtkbaseview2 Box64.In " "
460 input wxvtkbaseview3 Box65.In " "
461 input wxvtkbaseview4 Box69.In " "
462 input wxvtkbaseview1 Box71.In " "
464 # Complex output ports
465 output widget Box08.Widget " "
466 output interactorStyleMaracas Box57.InteractorStyleMaracas " "
467 output interactorStyleMaracas2 Box57.InteractorStyleMaracas2 " "
468 output interactorStyleMaracas3 Box57.InteractorStyleMaracas3 " "
469 output interactorStyleMaracas4 Box57.InteractorStyleMaracas4 " "