+load wx
+load std
+load vtk
+load wxvtk
+load creaMaracasVisu
+load PackVisuImages
+//load creaImageIO
+
+load PackRecalage
+
+//include vtk/boxes/bbLoadHola
+//new LoadHola image
+
+new FileSelector imageSelector1
+new FileSelector imageSelector2
+
+new MetaImageReader image
+ connect imageSelector1.Out image.In
+
+new MetaImageReader image2
+ connect imageSelector2.Out image2.In
+
+
+#new Gimmick image
+#new Gimmick image2
+
+#Viewer containing image 1
+
+new LayoutLine v1Layout
+new ViewerNV viewer1
+connect image.Out viewer1.In
+set viewer1.nTypeView "0"
+connect viewer1.Widget v1Layout.Widget1
+
+
+#Viewer containing image 2
+
+new LayoutLine v2Layout
+new ViewerNV viewer2
+connect image2.Out viewer2.In
+set viewer2.nTypeView "0"
+connect viewer2.Widget v2Layout.Widget1
+
+#LayoutSplit were the images will be
+
+new LayoutSplit initialImages
+set initialImages.Proportion "50"
+set initialImages.Orientation H
+connect v1Layout.Widget initialImages.Widget1
+connect v2Layout.Widget initialImages.Widget2
+
+#Layout line that will contain the buttons
+
+new LayoutLine buttonsLayout
+ set buttonsLayout.Orientation V
+
+#Slider were the angle will be entered
+
+new Slider slider
+ set slider.Title "Angle"
+ set slider.In 0
+ set slider.Min 0
+ set slider.Max 360
+ set slider.ReactiveOnTrack "1"
+ connect slider.Widget buttonsLayout.Widget1
+
+
+
+#Slider were the xScale will be entered
+
+new Slider sliderX
+ set sliderX.Title "% Scale in X"
+ set sliderX.In 100
+ set sliderX.Min 10
+ set sliderX.Max 500
+ set sliderX.ReactiveOnTrack "1"
+ connect sliderX.Widget buttonsLayout.Widget2
+
+
+
+#Slider were the yScale will be entered
+
+new Slider sliderY
+ set sliderY.Title "% Scale in Y"
+ set sliderY.In 100
+ set sliderY.Min 10
+ set sliderY.Max 500
+ set sliderY.ReactiveOnTrack "1"
+ connect sliderY.Widget buttonsLayout.Widget3
+
+
+#Box were the transformation will be made
+
+new Transform2DBox transform
+ connect viewer2.Point transform.CenterPoint
+ connect slider.Out transform.Angle
+ connect sliderX.Out transform.ScaleX
+ connect sliderY.Out transform.ScaleY
+
+
+
+new ReSlicerBox reslice1
+ connect viewer1.Point reslice1.Origin
+ connect transform.Out reslice1.Transform
+ connect image2.Out reslice1.In
+
+new SliceImage slice1
+ connect reslice1.Out slice1.In
+ set slice1.Z "1"
+
+new Viewer2D viewer2d
+ connect reslice1.Out viewer2d.In
+ set viewer2d.Slice "1"
+
+#new ViewerNV viewer3
+ #connect reslice1.Out viewer3.In
+ #set viewer3.nTypeView "5"
+ #set viewer3.WinWidth "600"
+
+# Create the reslicers
+
+new SliceImage imgslice1
+new SliceImage imgslice2
+ connect image.Out imgslice1.In
+ connect reslice1.Out imgslice2.In
+
+# Create the visulization box
+new CheckBoardBox cbb
+ connect imgslice1.Out cbb.In1
+ connect imgslice2.Out cbb.In2
+
+# Create the slider1
+new Slider sdr
+ set sdr.ReactiveOnTrack 1
+ set sdr.Max 50
+ set sdr.In 14
+
+# Create the slider2
+new Slider sdr2
+ set sdr2.ReactiveOnTrack 1
+ set sdr2.Max 50
+ set sdr2.In 14
+
+# Create the ZSlider for the slices
+
+new Slider sdrZ
+ set sdrZ.ReactiveOnTrack 1
+ set sdrZ.Max 50
+ set sdrZ.Title "Z for slice"
+
+connect sdrZ.Out imgslice1.Z
+connect sdrZ.Out imgslice2.Z
+connect sdrZ.BoxChange imgslice1.BoxExecute
+connect sdrZ.BoxChange imgslice2.BoxExecute
+
+# Create viewer & layout
+new LayoutSplit checkerBoard
+new LayoutLine ly
+new ViewerNV viewerCH
+ set viewerCH.nTypeView "0"
+ set checkerBoard.Proportion 80
+
+# Graphical pipeline
+ connect sdr.Out cbb.Cols
+ connect sdr2.Out cbb.Rows
+ connect cbb.Out viewerCH.In
+
+ #connect sdrZ.Widget ly.Widget1
+ connect sdr.Widget ly.Widget2
+ connect sdr2.Widget ly.Widget3
+
+ connect viewerCH.Widget checkerBoard.Widget1
+ connect ly.Widget checkerBoard.Widget2
+
+# Create Surface View
+
+new SurfaceCreator surf
+ set surf.Color1 RED
+ set surf.Color2 BLUE
+
+ connect imgslice1.Out surf.Image1
+ connect imgslice2.Out surf.Image2
+
+new Slider sdrSurf1
+ set sdrSurf1.Min -500
+ set sdrSurf1.Max 500
+ set sdrSurf1.In 100
+
+new Slider sdrSurf2
+ set sdrSurf2.Min -500
+ set sdrSurf2.Max 500
+ set sdrSurf2.In 300
+
+ connect sdrSurf1.Out surf.Height1
+ connect sdrSurf2.Out surf.Height2
+
+# Create Surface Layouts
+
+new LayoutSplit surface
+new LayoutLine lySurf
+new Viewer3D viewerSurf
+ set surface.Proportion 80
+ connect sdrSurf1.Widget lySurf.Widget1
+ connect sdrSurf2.Widget lySurf.Widget2
+ connect viewerSurf.Renderer surf.Renderer
+ #connect lySurf.BoxChange viewerSurf.BoxExecute
+
+ connect surf.Out1 viewerSurf.In1
+ connect surf.Out2 viewerSurf.In2
+
+ connect viewerSurf.Widget surface.Widget1
+ connect lySurf.Widget surface.Widget2
+
+#Create Substraction View
+
+new ImageSubstraction imageSub
+ connect imgslice1.Out imageSub.In1
+ connect imgslice2.Out imageSub.In2
+
+new Slider sdrSub1
+ set sdrSub1.In 51
+ set sdrSub1.Max 255
+ set sdrSub1.Min 0
+ set sdrSub1.Title "Upper Zero Level"
+
+new Slider sdrSub2
+ set sdrSub2.In 49
+ set sdrSub2.Max 255
+ set sdrSub2.Min 0
+ set sdrSub2.Title "Lower Zero Level"
+
+ connect sdrSub1.Out imageSub.In3
+ connect sdrSub2.Out imageSub.In4
+
+new ColourSelectorButton colorU
+new ColourSelectorButton colorM
+new ColourSelectorButton colorL
+
+ set colorU.WinTitle "Upper Level Colour"
+ set colorM.WinTitle "Middle Level Colour"
+ set colorL.WinTitle "Lower Level Colour"
+
+ set colorU.In "0"
+ set colorM.In "50,50,50"
+ set colorL.In "1"
+
+ connect colorU.Out imageSub.InU
+ connect colorM.Out imageSub.InM
+ connect colorL.Out imageSub.InL
+
+#Create substraction layout
+
+new Viewer2D subView
+ connect imageSub.Out subView.In
+
+new LayoutSplit substraction
+new LayoutLine lySub
+
+ connect sdrSub1.Widget lySub.Widget1
+ connect sdrSub2.Widget lySub.Widget2
+
+new LayoutLine lySubColor
+
+ set lySubColor.Orientation H
+ connect colorU.Widget lySubColor.Widget1
+ connect colorM.Widget lySubColor.Widget2
+ connect colorL.Widget lySubColor.Widget3
+
+ connect lySubColor.Widget lySub.Widget3
+
+ set substraction.Proportion "70"
+
+ connect subView.Widget substraction.Widget1
+ connect lySub.Widget substraction.Widget2
+/*
+# Create the transparency box
+new Transparency tb
+ connect imgslice1.Out tb.Image1
+ connect imgslice2.Out tb.Image2
+
+# Create viewer and add actors
+new Viewer3D transparency
+ connect tb.Actor1 transparency.In1
+ connect tb.Actor2 transparency.In2
+
+*/
+#Multiple inputs for managing the interaction
+
+new MultipleInputs mult
+ connect slider.BoxChange mult.In1
+ connect sliderX.BoxChange mult.In2
+ connect sliderY.BoxChange mult.In3
+ connect viewer1.BoxChange mult.In4
+ connect viewer2.BoxChange mult.In5
+ #connect mult.BoxChange viewer3.BoxExecute
+ #connect mult.BoxChange viewer2d.BoxExecute
+
+
+# Execution pipeline for checkboard
+
+new MultipleInputs mult2
+ connect ly.BoxChange mult2.In1
+ connect mult.BoxChange mult2.In2
+ connect imgslice1.BoxChange mult2.In3
+ connect imgslice2.BoxChange mult2.In4
+
+connect mult2.BoxChange cbb.BoxExecute
+connect cbb.BoxChange viewerCH.BoxExecute
+
+# Execution pipeline for Surface
+
+new MultipleInputs mult3
+ connect mult2.BoxChange mult3.In1
+ connect sdrSurf1.BoxChange mult3.In2
+ connect sdrSurf2.BoxChange mult3.In3
+
+ connect mult3.BoxChange surf.BoxExecute
+ connect surf.BoxChange viewerSurf.BoxExecute
+
+#Execution pipeline for Substraction
+
+new MultipleInputs mult4
+ connect sdrSub1.BoxChange mult4.In1
+ connect sdrSub2.BoxChange mult4.In2
+ connect mult2.BoxChange mult4.In3
+
+new MultipleInputs mult5
+ connect mult4.BoxChange mult5.In1
+ connect colorU.BoxChange mult5.In2
+ connect colorM.BoxChange mult5.In3
+ connect colorL.BoxChange mult5.In4
+
+ connect mult5.BoxChange imageSub.BoxExecute
+ connect imageSub.BoxChange substraction.BoxExecute
+
+#Execution pipeline for Transparency
+/*
+connect mult2.BoxChange tb.BoxExecute
+connect tb.BoxChange transparency.BoxExecute
+*/
+# Button for saving
+
+new CommandButton saveBut
+ set saveBut.Label "Save Image"
+
+new FileSelector fileSave
+ set fileSave.OpenSave "Save"
+ set fileSave.Wildcard "*.mhd"
+
+new MetaImageWriter writSave
+ connect reslice1.Out writSave.In
+ connect fileSave.Out writSave.Filename
+
+ connect saveBut.BoxChange fileSave.BoxExecute
+ connect fileSave.BoxChange writSave.BoxExecute
+
+#Layout were the images and the buttones will be displayed
+
+new LayoutSplit window1
+ set window1.WinWidth "600"
+ set window1.Proportion "80"
+ set window1.Orientation V
+ connect initialImages.Widget window1.Widget1
+ connect buttonsLayout.Widget window1.Widget2
+
+#new LayoutSplit checkBoard
+ #set window1.WinWidth "600"
+ #set window1.Proportion "80"
+ #set window1.Orientation V
+ #connect viewer3.Widget checkBoard.Widget1
+ #connect checkView.Widget checkBoard.Widget1
+
+new LayoutTab tabs
+ connect checkerBoard.Widget tabs.Widget1
+ connect surface.Widget tabs.Widget2
+ connect substraction.Widget tabs.Widget3
+ //connect transparency.Widget tabs.Widget4
+
+new LayoutLine tools
+ connect sdrZ.Widget tools.Widget1
+ connect saveBut.Widget tools.Widget2
+
+new LayoutSplit window2
+ connect tabs.Widget window2.Widget1
+ connect tools.Widget window2.Widget2
+ set window2.Proportion "90"
+
+new LayoutSplit main
+ set main.WinWidth "1200"
+ set main.Proportion "50"
+ set main.Orientation H
+ connect window1.Widget main.Widget1
+ connect window2.Widget main.Widget2
+
+#exec image
+#exec image2
+exec main
\ No newline at end of file