1 description "3 slicers and a 3D view"
2 author "jpr@creatis.insa-lyon.fr"
5 // To show how easy it is to add smthing
6 // =====================================
17 include wxvtk/boxes/bbSimpleSlicer
20 new LayoutLine upright
22 new LayoutLine downleft
24 connect upright.Widget main.Widget1
25 connect upleft.Widget main.Widget2
26 connect downleft.Widget main.Widget3
30 include vtk/boxes/bbLoadHola
33 # uncomment next lines to have a file selector
34 # --------------------------------------------
36 new FileSelector openFileDialog
37 new ImageReader reader
38 connect openFileDialog.Out reader.In
41 # uncomment next lines to use Gimmick
42 # -----------------------------------
48 # uncomment next lines to Read a MHD file (and nothing else !)
49 # ------------------------------------------------------------
51 new FileSelector openFileDialog
52 new MetaImageReader reader
53 connect openFileDialog.Out reader.In
56 # uncomment the following lines to read a 3D images stack
57 # (only if file name order is meaningfull)
58 # -------------------------------------------------------
60 // To choose the directory
61 new DirectorySelector ds
62 // To get the image names into a vector
63 new FilesFromDirectory fd
64 // To read all the files, as a bbitk::ImagePointer
65 new ImageSeriesReader reader
66 // user choosen directory as input
68 set fd.Recursive false
69 // list of files as input
70 #print "Files found in $ds.Out$\n
71 connect fd.Out reader.FileNames
74 # uncomment the following lines to read a 3D images stack
75 # (if the directory contains a 'XCoherent" Serie)
76 # -------------------------------------------------------
78 // To choose the directory
79 new DirectorySelector ds
80 // To get the image names into a vector
81 new FilesFromDirectory fd
82 // user choosen directory as input
84 // order the files, computes an accurate ZSpacing
85 new GetXCoherentInfoGdcmReader reader
86 connect fd.Out reader.In
89 # uncomment the following lines to read a 3D images stack
90 # (with DICOMDirReader)
91 # -------------------------------------------------------
93 include itk/boxes/bbDICOMDirReader
94 // To choose the directory
95 new DirectorySelector ds
96 new DICOMDirReader reader
97 connect ds.Out reader.In
100 // We need that to set Sliders sizes
102 #Get image dimensions, ...
103 new ImageProperties mc
104 connect reader.Out mc.In
106 #print "Image properties : $reader.Out"
108 #Get number of column (X)
109 new GetVectorIntElement gveX
110 connect mc.Size gveX.In
113 #Get number of rows (Y)
114 new GetVectorIntElement gveY
115 connect mc.Size gveY.In
118 #Get number of planes (Z)
119 new GetVectorIntElement gveZ
120 connect mc.Size gveZ.In
123 #Compute the number of the 'middle' slice on X axis
125 connect gveX.Out div0.In1
128 #Compute the number of the 'middle' slice on Y axis
130 connect gveY.Out div1.In1
133 #Compute the number of the 'middle' slice on Z axis
135 connect gveZ.Out div2.In1
139 new SimpleSlicer viewerUL
140 connect reader.Out viewerUL.In
141 connect viewerUL.Widget upleft.Widget1
142 #initial slice is the middle one
143 connect div0.Out viewerUL.Slice
144 #Slider size is the number of planes
145 connect gveX.Out viewerUL.SliderSize
146 set viewerUL.SliderReactiveOnTrack 1
147 set viewerUL.Orientation 0
148 set viewerUL.SliderOrientation H
149 set viewerUL.SliderTitle "Planes YZ"
152 new SimpleSlicer viewerUR
153 connect reader.Out viewerUR.In
154 connect viewerUR.Widget upright.Widget1
155 #initial slice is the middle one
156 connect div1.Out viewerUR.Slice
157 #Slider size is the number of planes
158 connect gveY.Out viewerUR.SliderSize
159 set viewerUR.SliderReactiveOnTrack 1
160 set viewerUR.SliderOrientation H
161 set viewerUR.Orientation 1
162 set viewerUR.SliderTitle "Planes XZ"
165 new SimpleSlicer viewerTD
166 connect reader.Out viewerTD.In
167 connect viewerTD.Widget downleft.Widget1
168 #initial slice is the middle one
169 connect div2.Out viewerTD.Slice
170 #Slider size is the number of planes
171 connect gveZ.Out viewerTD.SliderSize
172 set viewerTD.SliderReactiveOnTrack 1
173 set viewerTD.SliderOrientation H
174 set viewerTD.Orientation 2
175 set viewerTD.SliderTitle "Planes XY"
179 new ImagePlanes planes
180 connect reader.Out planes.In
183 connect planes.PlaneX viewer.Obs1
184 connect planes.PlaneY viewer.Obs2
185 connect planes.PlaneZ viewer.Obs3
187 connect viewer.Widget main.Widget4
189 set main.WinTitle "demoViewing1"