]> Creatis software - bbtk.git/blob - packages/demo/bbs/appli/demoViewing3Try.bbs
1c709e1c9eacdcf912cb7ce42ed623036dbc8d14
[bbtk.git] / packages / demo / bbs / appli / demoViewing3Try.bbs
1
2   
3 description "3 slicers and a 3D view"
4 author "jpr@creatis.insa-lyon.fr"
5 category "demo"
6
7 // To show how easy it is to add smthing
8
9
10 load vtk
11 include wxvtk
12 load std
13 load itk
14 include vtk
15 include wx
16 load itkvtk
17
18 //include wxvtk/boxes/bbSimpleSlicer
19 //include wx/boxes/LayoutX4
20
21 new LayoutX4 main
22 new LayoutLine upright
23 new LayoutLine upleft
24 new LayoutLine downleft
25
26 connect upright.Widget main.Widget1
27 connect upleft.Widget main.Widget2
28 connect downleft.Widget main.Widget3
29
30 // Uncomment the following lines to be able to read a 3D images stack
31
32 // To choose the directory
33 new DirectorySelector ds
34 // To get the image names into a vector
35 new FilesFromDirectory fd
36 // To read all the files, as a bbitk::ImagePointer
37 new ImageSeriesReader reader
38
39 connect ds.Out fd.In
40 set fd.Recursive false
41 print "Files found in $ds.Out$\n"
42 print "-Not recursive----------------------------"
43 //print " : $fd.Out$\n"
44
45 set reader.XSpacing 23.4
46 set reader.YSpacing 23.4
47 set reader.ZSpacing 35
48
49 connect fd.Out  reader.FileNames
50
51
52
53
54 // Comment out to following line if you want to be able to read  a 3D images stack
55 //new LoadHola reader
56
57
58 print "Image properties : $reader.Out"
59
60
61 //For 3D Viewer
62
63 new ImagePlanes planes
64    connect reader.Out planes.In
65    
66 new Viewer3D viewer
67    connect planes.PlaneX viewer.Obs1
68    connect planes.PlaneY viewer.Obs2
69    connect planes.PlaneZ viewer.Obs3
70
71    connect viewer.Widget main.Widget4
72
73 // For X axis
74 // ----------
75 new Viewer2D viewerUL
76   set viewerUL.BoxProcessMode Always
77   connect planes.ImageX viewerUL.In
78    # contains only one slice
79   set viewerUL.Slice 0
80   connect viewerUL.Widget upleft.Widget1
81
82 //  print "planes.BoxChange $planes.BoxChange"
83 //  print "viewer.BoxChange $viewer.BoxChange"
84
85  connect planes.BoxChange viewerUL.BoxExecute
86
87 print "===============planes.ImageX $planes.ImageX"
88
89 // For Y axis
90 // ----------
91 new Viewer2D viewerUR
92   set viewerUR.BoxProcessMode Always
93   connect planes.ImageY viewerUR.In
94   connect viewerUR.Widget upright.Widget1
95  # contains only one  slice
96   set viewerUR.Slice 0
97  connect planes.BoxChange viewerUR.BoxExecute 
98
99  print "===============planes.ImageY $planes.ImageY"
100
101 // For Z axis
102 // ----------
103 new Viewer2D viewerDL
104   set viewerDL.BoxProcessMode Always
105   connect planes.ImageZ viewerDL.In
106   connect viewerDL.Widget downleft.Widget1
107  # contains only one  slice
108   set viewerDL.Slice 0
109   connect planes.BoxChange viewerDL.BoxExecute 
110
111  print "===============planes.ImageZ $planes.ImageZ" 
112        
113 set main.WinTitle "demoViewing3"
114
115 exec main
116