]> Creatis software - bbtk.git/blob - packages/vtk/bbs/old/exampleGaussianSmooth.bbs
184c964cd9e7c43fc3f6505955a11ccef1bff14d
[bbtk.git] / packages / vtk / bbs / old / exampleGaussianSmooth.bbs
1 print "=== GaussianSmooth box example ==="
2 description "GaussianSmooth box example.  Screenshot : <img src=ExampleGaussianSmooth.JPG></img>"
3 author "eduardo.davila at creatis.insa-lyon.fr"
4 category "example"
5
6 include std
7 include vtk
8 include wx
9 include itk
10 include itkvtk
11 include wxvtk
12
13 new MetaImageReader reader 
14 include  std/boxes/bbPrependPackageDataPath.bbs 
15 new PrependPackageDataPath prependDatapath 
16   set prependDatapath.In "vtk/hola.mhd" 
17   connect prependDatapath.Out reader.In 
18
19 #---------------------------------------------------------------------
20
21 new Slider slider
22   set slider.Title "Slice"
23   set slider.Max        190
24   set slider.In         10
25   
26 #---------------------------------------------------------------------
27
28 new Viewer2D viewer2DImageOriginal
29   connect reader.Out                    viewer2DImageOriginal.In
30   connect slider.Out                    viewer2DImageOriginal.Slice
31   connect slider.BoxChange              viewer2DImageOriginal.BoxExecute
32     
33 #---------------------------------------------------------------------
34
35 new BinaryThresholdImageFilter threshold
36   set threshold.LowerThreshold 1000
37   set threshold.UpperThreshold 5000
38   set threshold.InsideValue 255
39   set threshold.OutsideValue 0
40   connect reader.Out threshold.In
41
42 new Viewer2D viewer2DImageSegmented
43   connect threshold.Out                 viewer2DImageSegmented.In
44   connect slider.Out                    viewer2DImageSegmented.Slice
45   connect slider.BoxChange              viewer2DImageSegmented.BoxExecute
46
47 #---------------------------------------------------------------------
48
49 new ImageGaussianSmooth smooth
50   connect threshold.Out smooth.In
51   set smooth.StdDevX  1
52   set smooth.StdDevY  1
53   set smooth.StdDevZ  1
54
55 new Viewer2D viewer2DImageSmooth
56   connect smooth.Out                    viewer2DImageSmooth.In
57   connect slider.Out                    viewer2DImageSmooth.Slice
58   connect slider.BoxChange              viewer2DImageSmooth.BoxExecute
59
60 #---------------------------------------------------------------------
61
62 new LayoutLine upLayout
63   set upLayout.Orientation H
64   connect viewer2DImageOriginal.Widget          upLayout.Widget1
65   connect viewer2DImageSegmented.Widget         upLayout.Widget2
66   connect viewer2DImageSmooth.Widget            upLayout.Widget3
67
68
69 #---------------------------------------------------------------------
70
71 new Viewer3D  viewernvImagethreshold3D
72 #  set viewernvImagethreshold3D.nTypeView "5" 
73
74 new IsoSurfaceExtractor  isoextractorthreshold
75   connect threshold.Out isoextractorthreshold.In
76   set isoextractorthreshold.Opacity 1
77   set isoextractorthreshold.Isovalue 128
78   connect viewernvImagethreshold3D.Renderer             isoextractorthreshold.Renderer
79
80
81 #---------------------------------------------------------------------
82 new Viewer3D  viewernvImageSmooth3D
83 #  set viewernvImageSmooth3D.nTypeView "5" 
84
85 new IsoSurfaceExtractor  isoextractorsmooth
86   connect smooth.Out isoextractorsmooth.In
87   set isoextractorsmooth.Opacity 1
88   set isoextractorsmooth.Isovalue 128
89   connect viewernvImageSmooth3D.Renderer                isoextractorsmooth.Renderer
90
91
92 #---------------------------------------------------------------------
93
94 new LayoutLine downLayout
95   set downLayout.Orientation H
96   connect viewernvImagethreshold3D.Widget               downLayout.Widget1
97   connect viewernvImageSmooth3D.Widget          downLayout.Widget2
98
99 #---------------------------------------------------------------------
100 new LayoutSplit splitDown
101   connect upLayout.Widget               splitDown.Widget1
102   connect downLayout.Widget             splitDown.Widget2
103
104 #---------------------------------------------------------------------
105 new LayoutSplit mainSplit
106   connect slider.Widget         mainSplit.Widget1
107   connect splitDown.Widget      mainSplit.Widget2
108
109
110
111 exec isoextractorthreshold
112 exec isoextractorsmooth
113 exec mainSplit