1 # ----------------------------------
2 # - BBTKGEditor v 1.5 BBS BlackBox Script (Complex Box)
3 # - /home/garzon/Creatis/C23/creatools_source/creaMaracasVisu/bbtk/bbs/boxes/Mesh_tool_ApplySurface.bbs
4 # ----------------------------------
8 include creaMaracasVisu
14 define Mesh_tool_ApplySurface 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"
32 new wx:LayoutLine Box08
34 new vtk:UpdateRender Box11
35 set Box11.Active "true"
37 new creaMaracasVisu:DrawAxisTree3D Box30
38 set Box30.Colour "0 0 1"
39 set Box30.LineWidth "2"
41 new std:MultipleInputs Box31
43 new creaMaracasVisu:ManualContourModel_Box Box29
44 set Box29.NbPoints "40"
46 new creaMaracasVisu:wxPopupMenu Box57
47 set Box57.WithCtrlKey "true"
49 new std:AddStringToVector Box58
50 set Box58.In0 "+ Add point"
51 set Box58.In1 "(+) Insert point"
52 set Box58.In2 "Track point"
53 set Box58.In3 "Set Nearest point"
54 set Box58.In4 "- Erase point"
55 set Box58.In5 "-- Delete all points"
56 set Box58.In6 "----------------------"
57 set Box58.In7 "+> Insert group after"
58 set Box58.In8 "- Delete group"
59 set Box58.In9 "Tool - Create Volume Surface from 3 or 4 points (use Close Spline 2 - Close Surface Off)"
61 new creaMaracasVisu:ShowNPoints_Tools Box60
63 new vtk:ImageVtkProperties Box68
65 new std:VectorFilterDouble Box70
68 new creaVtk:BooleanOperationPolyDataFilter Box77
69 set Box77.BoxProcessMode "Manual"
70 set Box77.ReorientDifferenceCells "false"
73 set Box78.In "Union Intersection Difference"
75 new wx:LayoutLine Box79
76 set Box79.Orientation "H"
77 set Box79.WinTitle "New Surface ( Magenta = Red+Yellow )"
79 new wx:CommandButton Box80
82 new std:MagicBox Box66
84 new std:MagicBox Box67
86 new creaMaracasVisu:PolyDataToActor_Widget Box48
88 new vtk:vtkImageDataPointerRelay Box35
92 set Box34.Label "true"
95 set Box34.ReactiveOnTrack "true"
96 set Box34.Title "Splines Opacity"
101 new creaMaracasVisu:PolyDataToActor_Widget Box37
102 set Box37.color "0 1 1"
103 set Box37.meshOpacity "100"
105 new wx:LayoutLine Box38
106 set Box38.Orientation "H"
107 set Box38.WinTitle "Interpolated Surface (Yellow)"
109 new wx:LayoutTab Box39
111 new wx:LayoutTab Box40
113 new wx:CommandButton Box42
114 set Box42.Label "Apply (Magenta->To Red)"
116 new wx:CommandButton Box43
117 set Box43.Label "Reset Tool"
119 new wx:LayoutLine Box44
120 set Box44.Orientation "V"
121 set Box44.WinTitle "1.2 Mesh Action"
123 new creaVtk:MeshManager_tool Box45
126 new std:MagicBox Box46
128 new wx:ComboBox Box49
129 set Box49.In "25 50 100 150"
130 set Box49.Selection "1"
131 set Box49.Title "Number of Points"
133 new wx:LayoutLine Box50
134 set Box50.Orientation "V"
135 set Box50.WinTitle "Config"
137 new std:MultipleInputs Box51
139 new creaMaracasVisu:ShowNPoints_Tools Box52
142 new std:MultipleInputs Box53
144 new std:MultipleInputs Box55
146 new creaMaracasVisu:MeshContours_Widget Box62
147 set Box62.colorMesh "1 1 0"
149 new std:MagicBox Box63
151 new std:MagicBox Box64
153 new std:MagicBox Box65
155 new std:MagicBox Box69
157 new std:MagicBox Box71
159 new creaMaracasVisu:MeshContours_Widget Box72
160 set Box72.colorMesh "0 1 1"
162 new wx:LayoutLine Box81
163 set Box81.WinTitle "Step 1. Surface"
165 new wx:LayoutTab Box82
167 new wx:OutputText Box84
169 new wx:LayoutTab Box86
171 new creaVtk:MeshManager Box92
173 new creaVtk:MeshManager_tool Box93
176 new std:MagicBox Box94
178 new creaMaracasVisu:wxVtkBaseView_Info Box96
180 new creaVtk:PolyDataNormals Box97
182 new wx:LayoutLine Box98
183 set Box98.Orientation "H"
185 new std:AddStringToVector Box99
186 set Box99.In0 "Auto Add Points (Start/Stop)"
188 new std:VectorFilterString Box100
189 set Box100.In0 "0 1 2 3 4 5 6 7 8 9 10 11"
190 set Box100.In1 "1 5 10 20 30 40 50 0 100 110 205 210"
193 new std:ConcatStrings Box101
195 new wx:CheckBox Box103
196 set Box103.In "false"
197 set Box103.ReactiveOnKeystroke "true"
198 set Box103.Title "Show Normals"
200 new creaVtk:GlyphPolyDataNormals Box104
201 set Box104.MaskRatio "2"
202 set Box104.Opacity "1"
205 new creaVtk:PolyDataNormals Box105
207 new wx:CheckBox Box106
209 set Box106.ReactiveOnKeystroke "true"
210 set Box106.Title "CloseSurface"
212 new wx:ComboBox Box108
214 new std:AddStringToVector Box109
215 set Box109.In0 "Close Spline 1"
216 set Box109.In1 "Close Spline 2"
217 set Box109.StringVector "Patch"
219 new std:StringSelect Box110
220 set Box110.In0 "false false"
221 set Box110.In1 "true false"
222 set Box110.In2 "false true"
224 new std:GetVectorStringElement Box111
227 new std:GetVectorStringElement Box112
230 new creaVtk:CleanPolyData Box113
232 new wx:LayoutLine Box114
233 set Box114.Orientation "V"
234 set Box114.WinTitle "1.3 Apply Changes"
236 new std:AddStringToVector Box115
237 set Box115.In0 "Tool - Inverse Normals"
239 new creaMaracasVisu:ShowNPoints_Tools Box116
240 set Box116.BoxProcessMode "Manual"
241 set Box116.Params " -1"
242 set Box116.Type "230"
244 new wx:CommandButton Box117
247 new wx:LayoutLine Box118
248 set Box118.Orientation "H"
250 new wx:CommandButton Box119
253 new creaMaracasVisu:ShowNPoints_Tools Box120
254 set Box120.BoxProcessMode "Manual"
255 set Box120.Params " 1"
256 set Box120.Type "230"
259 connect Box06.LstContourPointsX Box04.LstX
260 connect showNpoints.lstIndexs Box06.LstIndexsIn
261 connect Box06.LstContourPointsY Box04.LstY
262 connect Box06.LstContourPointsZ Box04.LstZ
263 connect Box06.LstIndexsOut Box04.LstIndexs
264 connect Box30.BoxChange Box31.In4
265 connect showNpoints.lstIndexs Box29.LstIndexsIn
266 connect Box29.LstContourPointsX Box30.lstPointX
267 connect Box29.LstContourPointsY Box30.lstPointY
268 connect Box29.LstContourPointsZ Box30.lstPointZ
269 connect Box29.LstIndexsOut Box30.lstIndexs
270 connect Box31.BoxChange Box11.BoxExecute
271 connect showNpoints.WidgetShowNPoints Box60.WidgetShowNPoints
272 connect Box57.BoxChange Box60.BoxExecute
273 connect Box68.Spacing Box60.Spacing
274 connect showNpoints.lstPointsX Box70.In0
275 connect showNpoints.lstPointsY Box70.In1
276 connect showNpoints.lstPointsZ Box70.In2
277 connect Box70.Out0 Box06.LstControlPointsX
278 connect Box70.Out1 Box06.LstControlPointsY
279 connect Box70.Out2 Box06.LstControlPointsZ
280 connect Box70.Out0 Box29.LstControlPointsX
281 connect Box70.Out1 Box29.LstControlPointsY
282 connect Box70.Out2 Box29.LstControlPointsZ
283 connect Box78.Out Box77.Operation
284 connect Box66.Out Box11.Renderer
285 connect Box66.Out Box30.Renderer
286 connect Box66.Out showNpoints.Renderer
287 connect Box67.Out Box77.In1
288 connect Box66.Out Box48.render
289 connect showNpoints.BoxChange Box31.BoxExecute
290 connect Box48.boxchange Box31.In1
291 connect Box35.Out Box68.In
292 connect Box68.Spacing Box70.k1
293 connect Box35.Out showNpoints.Image
294 connect Box34.Out Box36.In1
295 connect Box36.Out Box30.Opacity
296 connect Box34.BoxChange Box31.In2
297 connect Box66.Out Box37.render
298 connect Box38.Widget Box39.Widget2
299 connect Box79.Widget Box40.Widget2
300 connect Box46.Out Box45.MeshManagerModel
301 connect Box49.OutString Box06.NbPoints
302 connect Box42.BoxChange Box51.BoxExecute
303 connect Box45.BoxChange Box51.In2
304 connect Box52.BoxChange Box51.In4
305 connect showNpoints.WidgetShowNPoints Box52.WidgetShowNPoints
306 connect Box80.BoxChange Box53.In2
307 connect Box53.BoxChange Box77.BoxExecute
308 connect Box42.BoxChange Box53.In3
309 connect Box43.BoxChange Box55.BoxExecute
310 connect Box52.BoxChange Box55.In2
311 connect Box43.BoxChange Box53.In6
312 connect Box63.BoxChange showNpoints.BoxExecute
313 connect Box63.BoxChange Box62._execute
314 connect Box64.Out Box57.wxVtkBaseView2
315 connect Box64.Out Box62._wxvtkbaseview2D1
316 connect Box65.Out Box57.wxVtkBaseView3
317 connect Box65.Out Box62._wxvtkbaseview2D2
318 connect Box69.Out Box57.wxVtkBaseView4
319 connect Box69.Out Box62._wxvtkbaseview2D3
320 connect Box71.Out Box57.wxVtkBaseView
321 connect Box71.Out Box62._wxvtkbaseview3D1
322 connect Box04.Out Box62._polydata
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 Box72._widget Box79.Widget6
328 connect Box62._widget Box38.Widget7
329 connect Box39.Widget Box81.Widget2
330 connect Box40.Widget Box81.Widget4
331 connect Box44.Widget Box82.Widget2
332 connect Box82.Widget Box79.Widget2
333 connect Box84.Widget Box44.Widget9
334 connect Box86.Widget Box38.Widget2
335 connect Box50.Widget Box86.Widget4
336 connect showNpoints.Widget Box86.Widget2
337 connect Box49.Widget Box50.Widget2
338 connect Box34.Widget Box50.Widget4
339 connect Box57.BoxChange Box08.BoxExecute
340 connect Box92.MeshManagerModel Box93.MeshManagerModel
341 connect Box77.BoxChange Box93.BoxExecute
342 connect Box92.MeshBase Box72._polydata
343 connect Box92.MeshBase Box37.polydata
344 connect Box37.boxchange Box72._execute
345 connect Box81.Widget Box08.Widget2
346 connect Box94.BoxChange Box37.boxexecute
347 connect Box77.BoxChange Box94.BoxExecute
348 connect Box71.Out Box96.wxVtkBaseView
349 connect Box96.vtkRenderer Box66.In
350 connect Box37.widget Box79.Widget7
351 connect Box48.widget Box38.Widget8
352 connect Box97.Out Box45.Mesh
353 connect Box97.Out Box93.Mesh
354 connect Box43.Widget Box44.Widget1
355 connect Box78.Widget Box98.Widget2
356 connect Box80.Widget Box98.Widget4
357 connect Box98.Widget Box44.Widget3
358 connect Box99.Out Box58.StringVector
359 connect Box100.Out1 Box101.In1
360 connect Box101.Out Box60.Type
361 connect Box57.Out Box100.sk1
362 connect Box103.Out Box104.Active
363 connect Box66.Out Box104.Renderer
364 connect Box103.BoxChange Box104.BoxExecute
365 connect Box104.BoxChange Box31.In6
366 connect Box04.Out Box105.In
367 connect Box105.Out Box104.In
368 connect Box106.Widget Box50.Widget7
369 connect Box106.Out Box04.CloseSurface
370 connect Box106.BoxChange Box31.In7
371 connect Box103.Widget Box50.Widget8
372 connect Box109.Out Box108.In
373 connect Box108.Out Box110.In
374 connect Box110.Out Box111.In
375 connect Box110.Out Box112.In
376 connect Box108.Widget Box50.Widget5
377 connect Box111.Out Box06.OpenClose
378 connect Box112.Out Box06.OpenClose2
379 connect Box112.Out Box29.OpenClose2
380 connect Box111.Out Box29.OpenClose
381 connect Box77.Out Box113.In
382 connect Box113.Out Box97.In
383 connect Box04.Out Box77.In2
384 connect Box42.Widget Box114.Widget2
385 connect Box114.Widget Box82.Widget3
386 connect Box105.Out Box48.polydata
387 connect Box58.Out Box115.StringVector
388 connect Box115.Out Box57.In
389 connect Box67.Out Box60.Mesh
390 connect Box49.OutString Box29.NbPoints
391 connect showNpoints.WidgetShowNPoints Box116.WidgetShowNPoints
392 connect Box68.Spacing Box116.Spacing
393 connect Box117.BoxChange Box116.BoxExecute
394 connect Box117.Widget Box118.Widget2
395 connect Box118.Widget Box50.Widget9
396 connect Box119.Widget Box118.Widget3
397 connect Box119.BoxChange Box120.BoxExecute
398 connect showNpoints.WidgetShowNPoints Box120.WidgetShowNPoints
399 connect Box68.Spacing Box120.Spacing
400 connect Box105.Out Box116.Mesh
401 connect Box105.Out Box120.Mesh
403 # Complex input ports
404 input point showNpoints.In " "
405 input mesh Box67.In " "
406 input image Box35.In " "
407 input title Box08.WinTitle " "
408 input meshmanagermodel Box46.In " "
409 input boxChange Box63.In " "
410 input wxvtkbaseview2 Box64.In " "
411 input wxvtkbaseview3 Box65.In " "
412 input wxvtkbaseview4 Box69.In " "
413 input wxvtkbaseview1 Box71.In " "
415 # Complex output ports
416 output widget Box08.Widget " "
417 output interactorStyleMaracas Box57.InteractorStyleMaracas " "
418 output interactorStyleMaracas2 Box57.InteractorStyleMaracas2 " "
419 output interactorStyleMaracas3 Box57.InteractorStyleMaracas3 " "
420 output interactorStyleMaracas4 Box57.InteractorStyleMaracas4 " "