]> Creatis software - creaRigidRegistration.git/blob - PackRecalage/bbs/appli/ExampleRecalage.bbs
8b91bb26dfec844c065dcd22872bd6db61e8ea49
[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 true
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   connect butExec.BoxChange viewer3.BoxExecute
96
97 //Tab for the first image
98
99 new LayoutSplit tab1
100    set tab1.Orientation H
101    connect showNpoints.Widget tab1.Widget1
102    connect viewer.Widget tab1.Widget2
103
104 //Tab for the second image
105
106 new LayoutSplit tab2
107    set tab2.Orientation H
108    connect showNpoints2.Widget tab2.Widget1
109    connect viewer2.Widget tab2.Widget2
110
111 //Tab for the result image
112
113 new LayoutSplit result
114   set result.Orientation H
115   connect butExec.Widget result.Widget1
116   connect viewer3.Widget result.Widget2
117
118 //Main window
119
120 new LayoutTab main
121 set main.Orientation H
122 connect tab1.Widget main.Widget1
123 connect tab2.Widget main.Widget2
124 connect result.Widget main.Widget3
125
126 exec main