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 "H"
245 new wx:LayoutTab Box146
247 new wx:LayoutLine Box147
248 set Box147.Orientation "H"
249 set Box147.WinTitle "New Surface ( Magenta = Red+Yellow )"
251 new wx:LayoutTab Box148
253 new std:MagicBox Box150
255 new creaVtk:ImageGaussianSmooth2 Box151
256 set Box151.StdDevX "1"
257 set Box151.StdDevY "1"
258 set Box151.StdDevZ "1"
260 new creaVtk:MarchingCubes2 Box152
261 set Box152.Value "128"
263 new std:MultipleInputs Box154
266 connect Box06.LstContourPointsX Box04.LstX
267 connect showNpoints.lstIndexs Box06.LstIndexsIn
268 connect Box06.LstContourPointsY Box04.LstY
269 connect Box06.LstContourPointsZ Box04.LstZ
270 connect Box06.LstIndexsOut Box04.LstIndexs
271 connect Box30.BoxChange Box31.In4
272 connect showNpoints.lstIndexs Box29.LstIndexsIn
273 connect Box29.LstContourPointsX Box30.lstPointX
274 connect Box29.LstContourPointsY Box30.lstPointY
275 connect Box29.LstContourPointsZ Box30.lstPointZ
276 connect Box29.LstIndexsOut Box30.lstIndexs
277 connect Box31.BoxChange Box11.BoxExecute
278 connect showNpoints.WidgetShowNPoints Box60.WidgetShowNPoints
279 connect Box57.BoxChange Box60.BoxExecute
280 connect Box68.Spacing Box60.Spacing
281 connect showNpoints.lstPointsX Box70.In0
282 connect showNpoints.lstPointsY Box70.In1
283 connect showNpoints.lstPointsZ Box70.In2
284 connect Box70.Out0 Box06.LstControlPointsX
285 connect Box70.Out1 Box06.LstControlPointsY
286 connect Box70.Out2 Box06.LstControlPointsZ
287 connect Box70.Out0 Box29.LstControlPointsX
288 connect Box70.Out1 Box29.LstControlPointsY
289 connect Box70.Out2 Box29.LstControlPointsZ
290 connect Box66.Out Box11.Renderer
291 connect Box66.Out Box30.Renderer
292 connect Box66.Out showNpoints.Renderer
293 connect Box04.Out Box48.polydata
294 connect Box66.Out Box48.render
295 connect Box48.boxchange Box31.In1
296 connect Box35.Out Box68.In
297 connect Box68.Spacing Box70.k1
298 connect Box35.Out showNpoints.Image
299 connect Box34.Out Box36.In1
300 connect Box36.Out Box30.Opacity
301 connect Box34.BoxChange Box31.In2
302 connect Box66.Out Box37.render
303 connect Box79.Widget Box40.Widget2
304 connect Box46.Out Box45.MeshManagerModel
305 connect Box49.OutString Box06.NbPoints
306 connect Box45.BoxChange Box51.In2
307 connect Box52.BoxChange Box51.In4
308 connect showNpoints.WidgetShowNPoints Box52.WidgetShowNPoints
309 connect Box80.BoxChange Box53.In2
310 connect Box43.BoxChange Box55.BoxExecute
311 connect Box52.BoxChange Box55.In2
312 connect Box43.BoxChange Box53.In6
313 connect Box63.BoxChange showNpoints.BoxExecute
314 connect Box63.BoxChange Box62._execute
315 connect Box64.Out Box57.wxVtkBaseView2
316 connect Box64.Out Box62._wxvtkbaseview2D1
317 connect Box65.Out Box57.wxVtkBaseView3
318 connect Box65.Out Box62._wxvtkbaseview2D2
319 connect Box69.Out Box57.wxVtkBaseView4
320 connect Box69.Out Box62._wxvtkbaseview2D3
321 connect Box71.Out Box57.wxVtkBaseView
322 connect Box71.Out Box62._wxvtkbaseview3D1
323 connect Box71.Out Box72._wxvtkbaseview3D1
324 connect Box64.Out Box72._wxvtkbaseview2D1
325 connect Box65.Out Box72._wxvtkbaseview2D2
326 connect Box69.Out Box72._wxvtkbaseview2D3
327 connect Box44.Widget Box82.Widget2
328 connect Box82.Widget Box79.Widget2
329 connect Box86.Widget Box38.Widget2
330 connect Box50.Widget Box86.Widget4
331 connect showNpoints.Widget Box86.Widget2
332 connect Box87.Widget Box50.Widget8
333 connect Box88.Widget Box50.Widget9
334 connect Box49.Widget Box50.Widget2
335 connect Box34.Widget Box50.Widget4
336 connect Box57.BoxChange Box08.BoxExecute
337 connect Box92.MeshManagerModel Box93.MeshManagerModel
338 connect Box92.MeshBase Box72._polydata
339 connect Box92.MeshBase Box37.polydata
340 connect Box37.boxchange Box72._execute
341 connect Box81.Widget Box08.Widget2
342 connect Box71.Out Box105.wxVtkBaseView
343 connect Box105.vtkRenderer Box66.In
344 connect Box40.Widget Box81.Widget6
345 connect Box04.Out Box62._polydata
346 connect Box67.Out Box60.Mesh
347 connect Box58.Out Box111.StringVector
348 connect Box111.Out Box57.In
349 connect Box57.Out Box112.sk1
350 connect Box112.Out1 Box114.In1
351 connect Box114.Out Box60.Type
352 connect Box43.Widget Box44.Widget1
353 connect Box80.Widget Box117.Widget4
354 connect Box117.Widget Box44.Widget3
355 connect Box119.Out Box58.StringVector
356 connect Box68.Spacing Box120.Spacing
357 connect showNpoints.WidgetShowNPoints Box120.WidgetShowNPoints
358 connect Box121.BoxChange Box120.BoxExecute
359 connect Box127.BoxChange Box128.BoxExecute
360 connect Box68.Spacing Box128.Spacing
361 connect showNpoints.WidgetShowNPoints Box128.WidgetShowNPoints
362 connect Box130.Out Box120.Params
363 connect Box131.Out Box128.Params
364 connect Box120.BoxChange Box31.In3
365 connect Box128.BoxChange Box31.In5
366 connect showNpoints.BoxChange Box126.In4
367 connect Box128.BoxChange Box126.In2
368 connect Box120.BoxChange Box126.In1
369 connect Box126.BoxChange Box31.BoxExecute
370 connect Box127.Widget Box129.Widget4
371 connect Box121.Widget Box129.Widget6
372 connect Box60.Out Box132.In
373 connect Box132.Out Box131.In1
374 connect Box132.Out Box130.In1
375 connect Box42.Widget Box134.Widget3
376 connect Box67.Out Box135.Mesh
377 connect Box04.Out Box135.Patch
378 connect showNpoints.lstPointsX Box135.LstX
379 connect showNpoints.lstPointsY Box135.LstY
380 connect showNpoints.lstPointsZ Box135.LstZ
381 connect showNpoints.lstIndexs Box135.LstIndexs
382 connect Box68.Spacing Box135.Spacing
383 connect Box135.Out Box139.InPolyData
384 connect Box68.Spacing Box140.Spacing
385 connect Box68.Size Box140.Dimensions
386 connect Box68.TypeName Box140.OutputFormat
387 connect Box140.Out Box139.InImage
388 connect Box139.Out Box142.In
389 connect Box62._widget Box145.Widget2
390 connect Box48.widget Box145.Widget4
391 connect Box145.Widget Box38.Widget8
392 connect Box129.Widget Box146.Widget2
393 connect Box146.Widget Box38.Widget4
394 connect Box42.BoxChange Box51.BoxExecute
395 connect Box72._widget Box147.Widget2
396 connect Box37.widget Box147.Widget4
397 connect Box147.Widget Box79.Widget6
398 connect Box134.Widget Box148.Widget3
399 connect Box148.Widget Box79.Widget4
400 connect Box143.Out Box45.Mesh
401 connect Box143.Out Box93.Mesh
402 connect Box53.BoxChange Box143.BoxExecute
403 connect Box53.BoxChange Box150.BoxExecute
404 connect Box139.Out Box151.In
405 connect Box151.Out Box141.In
406 connect Box151.Out Box152.In
407 connect Box152.Out Box143.In
408 connect Box42.BoxChange Box53.In3
409 connect Box150.BoxChange Box37.boxexecute
410 connect Box150.BoxChange Box154.In1
411 connect Box143.BoxChange Box154.In3
412 connect Box154.BoxChange Box93.BoxExecute
413 connect Box38.Widget Box81.Widget2
415 # Complex input ports
416 input point showNpoints.In " "
417 input mesh Box67.In " "
418 input image Box35.In " "
419 input title Box08.WinTitle " "
420 input meshmanagermodel Box46.In " "
421 input boxChange Box63.In " "
422 input wxvtkbaseview2 Box64.In " "
423 input wxvtkbaseview3 Box65.In " "
424 input wxvtkbaseview4 Box69.In " "
425 input wxvtkbaseview1 Box71.In " "
427 # Complex output ports
428 output widget Box08.Widget " "
429 output interactorStyleMaracas Box57.InteractorStyleMaracas " "
430 output interactorStyleMaracas2 Box57.InteractorStyleMaracas2 " "
431 output interactorStyleMaracas3 Box57.InteractorStyleMaracas3 " "
432 output interactorStyleMaracas4 Box57.InteractorStyleMaracas4 " "