]> Creatis software - creaRigidRegistration.git/blob - PackRecalage/bbs/appli/ExampleRecalage.bbs
*** empty log message ***
[creaRigidRegistration.git] / PackRecalage / bbs / appli / ExampleRecalage.bbs
1 description "Example of posbile Recalage implementation"
2 author "jn.trillos44@uniandes.edu.co"
3 category "demo"
4
5 load vtk
6 include wxvtk
7 load std
8 load itk
9 include vtk
10 include wx
11 load itkvtk
12 load creaMaracasVisu
13 load PackRecalage
14
15 //File selection and file reader for the first image
16
17 new FileSelector openFileDialog
18   set openFileDialog.Wildcard  "(*.mhd)|*.mhd"
19 new MetaImageReader reader
20    connect openFileDialog.Out reader.In
21
22 //File selection and file reader for the second image
23
24 new FileSelector openFileDialog2
25   set openFileDialog2.Wildcard  "(*.mhd)|*.mhd"
26 new MetaImageReader reader2
27    connect openFileDialog2.Out reader2.In
28
29 //Viewer NV and ShowPoints for the first image
30
31 new ViewerNV viewer
32   connect reader.Out viewer.In
33   set viewer.nTypeView "5 1 2 0"
34
35 new ShowNPoints showNpoints
36   connect reader.Out showNpoints.Image
37   connect viewer.Renderer1 showNpoints.Renderer
38   connect viewer.Point showNpoints.In
39   connect viewer.BoxChange showNpoints.BoxExecute
40   set showNpoints.Radio 10
41
42 //Viewer NV and ShowPoints for the second image
43
44 new ViewerNV viewer2
45   connect reader2.Out viewer2.In
46   set viewer2.nTypeView "5 1 2 0"
47
48 new ShowNPoints showNpoints2
49   connect reader2.Out showNpoints2.Image
50   connect viewer2.Renderer1 showNpoints2.Renderer
51   connect viewer2.Point showNpoints2.In
52   connect viewer2.BoxChange showNpoints2.BoxExecute
53   set showNpoints2.Radio 10
54
55 /////////////////////////////////////////////////////
56 #Calculate Vector Box
57 /////////////////////////////////////////////////////
58
59 new CalculateVectorBox vector1
60   connect showNpoints.lstPointsX vector1.PointsX1
61   connect showNpoints2.lstPointsX vector1.PointsX2
62   connect showNpoints.lstPointsY vector1.PointsY1
63   connect showNpoints2.lstPointsY vector1.PointsY2
64   connect showNpoints.lstPointsZ vector1.PointsZ1
65   connect showNpoints2.lstPointsZ vector1.PointsZ2  
66   
67 ////////////////////////////////////////////////////
68
69 ///////////////////////////////////////////////////
70 #Transformation Boxes
71 //////////////////////////////////////////////////
72
73 new Transform2DBox transform
74   connect vector1.Origin transform.CenterPoint
75   connect vector1.OutAngle transform.Angle
76   connect vector1.OutScaleX transform.ScaleX
77   connect vector1.OutScaleY transform.ScaleY
78   connect vector1.OutScaleZ transform.ScaleZ
79   connect vector1.TransformAxis transform.Axis
80   //set transform.3D false
81
82 new ReSlicerBox reslice1
83   connect vector1.OriginReslicer reslice1.Origin
84   connect transform.Out reslice1.Transform
85   connect reader2.Out reslice1.In
86
87 //ViewerNV and ComandButton for the result image
88
89 new ViewerNV viewer3
90   set viewer3.nTypeView "5 1 2 0"
91   connect reslice1.Out viewer3.In
92
93 new CommandButton butExec
94   //set butExec.Label "Execute"
95  
96
97 //Tab for the first image
98
99 new LayoutSplit tab1
100    set tab1.Orientation H
101
102 ////////////////////
103
104 new LayoutSplit hello
105   set hello.Orientation V
106
107   connect showNpoints.Widget hello.Widget1
108   connect butExec.Widget hello.Widget2
109
110    connect hello.Widget tab1.Widget1
111    connect viewer.Widget tab1.Widget2
112
113 //Tab for the second image
114
115 new LayoutSplit tab2
116    set tab2.Orientation H
117    connect showNpoints2.Widget tab2.Widget1
118    connect viewer2.Widget tab2.Widget2
119
120 //Tab for the result image
121
122 //new LayoutSplit result
123   //set result.Orientation H
124   //connect butExec.Widget result.Widget1
125   //connect viewer3.Widget result.Widget2
126   connect butExec.BoxChange viewer3.BoxExecute
127
128
129 //Main window
130
131 new LayoutTab main
132 set main.Orientation H
133 connect tab1.Widget main.Widget1
134 connect tab2.Widget main.Widget2
135 //connect result.Widget main.Widget3
136
137 exec main