-description "Simple OrthoSlicer : Little Demo of the box <a href=#Viewer2D>Viewer2D</a>."
-author "info-dev@creatis.insa-lyon.fr"
-category "demo"
-
-#Should probabely moved to 'Applications'
-
-// Simple OrthoSlicer for 3D Files (i.e.: not an image stack)
-
-load wxvtk
-include wx
-load vtk
-load std
-load itkvtk
-load itk
-include wxvtk/boxes/bbSimpleSlicer
-
-new LayoutTDown main
-new LayoutLine upright
-new LayoutLine upleft
-new LayoutLine down
-
-connect upright.Widget main.Widget1
-connect upleft.Widget main.Widget2
-connect down.Widget main.Widget3
-
-new FileSelector openFileDialog
-
-new ImageReader reader
- connect openFileDialog.Out reader.In
-
-#Get image dimensions, ...
-new ImageProperties mc
- connect reader.Out mc.In
-
-#Get number of column (X)
-new GetVectorIntElement gveX
- connect mc.Size gveX.In
- set gveX.I 0
-
-#Get number of rows (Y)
-new GetVectorIntElement gveY
- connect mc.Size gveY.In
- set gveY.I 1
-
-#Get number of planes (Z)
-new GetVectorIntElement gveZ
- connect mc.Size gveZ.In
- set gveZ.I 2
-
-#Compute the number of the 'middle' slice on X axis
-new Div div0
- connect gveX.Out div0.In1
- set div0.In2 2
-
-#Compute the number of the 'middle' slice on Y axis
-new Div div1
- connect gveY.Out div1.In1
- set div1.In2 2
-
-#Compute the number of the 'middle' slice on Z axis
-new Div div2
- connect gveZ.Out div2.In1
- set div2.In2 2
-
-
-// For X axis
-new SimpleSlicer viewerUL
- connect reader.Out viewerUL.In
- connect viewerUL.Widget upleft.Widget1
- #initial slice is the middle one
- connect div0.Out viewerUL.Slice
- #Slider size is the number of planes
- connect gveX.Out viewerUL.SliderSize
- set viewerUL.SliderReactiveOnTrack 1
- set viewerUL.Orientation 0
- set viewerUL.SliderOrientation H
- set viewerUL.SliderTitle "Planes YZ"
-
-
-// For Y axis
-new SimpleSlicer viewerUR
- connect reader.Out viewerUR.In
- connect viewerUR.Widget upright.Widget1
- #initial slice is the middle one
- connect div1.Out viewerUR.Slice
- #Slider size is the number of planes
- connect gveY.Out viewerUR.SliderSize
- set viewerUR.SliderReactiveOnTrack 1
- set viewerUR.SliderOrientation H
- set viewerUR.Orientation 1
- set viewerUR.SliderTitle "Planes XZ"
-
-// For Z axis
-new SimpleSlicer viewerTD
- connect reader.Out viewerTD.In
- connect viewerTD.Widget down.Widget1
- #initial slice is the middle one
- connect div2.Out viewerTD.Slice
- #Slider size is the number of planes
- connect gveZ.Out viewerTD.SliderSize
- set viewerTD.SliderReactiveOnTrack 1
- set viewerTD.SliderOrientation H
- set viewerTD.Orientation 2
- set viewerTD.SliderTitle "Planes XY"
-
-exec main
-exec viewerTD
-
-