]> Creatis software - bbtk.git/blob - packages/demo/bbs/appli/demoViewing3Try.bbs
To extract/ display the vtkImadeData from a vtkImagePlaneWidget
[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
62 //For 3D Viewer
63
64 new ImagePlanes planes
65    connect reader.Out planes.In
66    
67 new Viewer3D viewer
68    connect planes.PlaneX viewer.Obs1
69    connect planes.PlaneY viewer.Obs2
70    connect planes.PlaneZ viewer.Obs3
71
72    connect viewer.Widget main.Widget4
73      
74   
75 // For X axis
76 // ----------
77 new Viewer2D viewerUL
78   set viewerUL.BoxProcessMode Always
79   connect planes.ImageX viewerUL.In
80    # contains only one slice
81   set viewerUL.Slice 0
82   connect viewerUL.Widget upleft.Widget1
83
84 //  print "planes.BoxChange $planes.BoxChange"
85 //  print "viewer.BoxChange $viewer.BoxChange"
86   
87  connect planes.BoxChange viewerUL.BoxExecute
88
89 print "===============planes.ImageX $planes.ImageX"
90
91 // For Y axis
92 // ----------
93 new Viewer2D viewerUR
94   set viewerUR.BoxProcessMode Always
95   connect planes.ImageY viewerUR.In
96   connect viewerUR.Widget upright.Widget1
97  # contains only one  slice
98   set viewerUR.Slice 0
99  connect planes.BoxChange viewerUR.BoxExecute 
100
101  print "===============planes.ImageY $planes.ImageY"  
102    
103 // For Z axis
104 // ----------
105 new Viewer2D viewerDL
106   set viewerDL.BoxProcessMode Always
107   connect planes.ImageZ viewerDL.In
108   connect viewerDL.Widget downleft.Widget1
109  # contains only one  slice
110   set viewerDL.Slice 0
111   connect planes.BoxChange viewerDL.BoxExecute 
112
113  print "===============planes.ImageZ $planes.ImageZ" 
114           
115 set main.WinTitle "demoViewing3"
116
117 exec main
118