]> Creatis software - creaRigidRegistration.git/blob - PackRecalage/bbs/appli/ExampleRecalage3D3Points.bbs
167dedb7fedc21df93e300349a707e03a861fc41
[creaRigidRegistration.git] / PackRecalage / bbs / appli / ExampleRecalage3D3Points.bbs
1 description "Example of posible 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"
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"
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 #Transform Box
57 //////////////////////////////////////////
58
59 new Transform3D3PointsBox transform
60   connect showNpoints.lstPointsX transform.InX1
61   connect showNpoints2.lstPointsX transform.InX2
62   connect showNpoints.lstPointsY transform.InY1
63   connect showNpoints2.lstPointsY transform.InY2
64   connect showNpoints.lstPointsZ transform.InZ1
65   connect showNpoints2.lstPointsZ transform.InZ2  
66
67  connect showNpoints.lstLabels transform.Labels1 
68  connect showNpoints2.lstLabels transform.Labels2
69   
70 new ReSlicerBox reslice1
71
72   set reslice1.Origin "0,0,0"
73
74   connect transform.Out reslice1.Transform
75   connect reader2.Out reslice1.In
76
77 //ViewerNV and ComandButton for the result image
78
79
80 new ViewerNV viewer3
81   set viewer3.nTypeView "5"
82   connect reslice1.Out viewer3.In
83
84 new CommandButton butExec
85   set butExec.Label "Execute"
86
87 //Tab for the first image
88
89 new LayoutSplit tab1
90    set tab1.Orientation H
91
92 ////////////////////
93
94 new LayoutSplit hello
95   set hello.Orientation V
96
97   connect showNpoints.Widget hello.Widget1
98   connect butExec.Widget hello.Widget2
99
100    connect hello.Widget tab1.Widget1
101    connect viewer.Widget tab1.Widget2
102
103 //Tab for the second image
104
105 new LayoutSplit tab2
106    set tab2.Orientation H
107    connect showNpoints2.Widget tab2.Widget1
108    connect viewer2.Widget tab2.Widget2
109
110 //Tab for the result image
111
112   connect butExec.BoxChange transform.BoxExecute
113   connect butExec.BoxChange reslice1.BoxExecute
114   connect butExec.BoxChange viewer3.BoxExecute
115
116
117 //Main window
118
119 new LayoutTab main
120 set main.Orientation H
121 connect tab1.Widget main.Widget1
122 connect tab2.Widget main.Widget2
123
124 exec main