-description "Recalage3D 1-point"
+# ----------------------------------
+# - BBTKGEditor v 1.4 BBS BlackBox Script
+# - /home/davila/Creatis/All/creatools_source/creaRigidRegistration/PackRecalage/bbs/appli/ExampleRecalage3D1Point.bbs
+# ----------------------------------
+
+# BBTK GEditor Script
+# ----------------------
+
+include std
+include itkvtk
+include creaMaracasVisu
+include wx
+include vtk
+include creaImageIO
+include PackRecalage
+
author "info-dev@creatis.insa-lyon.fr"
+description "Recalage3D 1-point"
category "example"
-load vtk
-include wxvtk
-load std
-load itk
-include vtk
-include wx
-load itkvtk
-load creaMaracasVisu
-load PackRecalage
+new ViewerNV viewer
+ set viewer.nTypeView "6 1 2 0"
-///////////////////////
-//Image Readers//
-//////////////////////
+new ViewerNV viewer2
+ set viewer2.nTypeView "6 1 2 0"
-#Uncomment to use a FileReadeDialog for .mhd
-#-------------------------------------------------------
+new LayoutSplit imagesLayout
+ set imagesLayout.Orientation "H"
+ set imagesLayout.Proportion "50"
+ set imagesLayout.WinTitle "Input Images"
-//File selection and file reader for the first image
+new LayoutSplit resultLayout
+ set resultLayout.Proportion "80"
+ set resultLayout.WinTitle "Registration"
-new FileSelector openFileDialog
- set openFileDialog.Wildcard "(*.mhd)|*.mhd"
-new MetaImageReader reader
- connect openFileDialog.Out reader.In
+new vtkImageDataPointerRelay Box22
-//File selection and file reader for the second image
+new vtkImageDataPointerRelay Box23
-new FileSelector openFileDialog2
- set openFileDialog2.Wildcard "(*.mhd)|*.mhd"
-new MetaImageReader reader2
- connect openFileDialog2.Out reader2.In
+new ImagesChooserDialogBox Box24
-#-------------------------------------------------------
+new ImagesChooserDialogBox Box25
+new Recalage3D1PointWidget Box52
-#Uncomment to use a Gimmick Reader
-#-------------------------------------------------------
-/*
-load creaImageIO
+new CompareImagesWidget3D Box20
-new Gimmick reader
+new CompareImages_3DwithPlanes_Widget Box11
+ set Box11.WinTitle "3D Planes"
-new Gimmick reader2
-*/
-#------------------------------------------------------
+new LayoutSplit Box12
+ set Box12.Orientation "H"
-///////////////////////
-//Image Viewers///
-//////////////////////
+new LayoutTab Box13
-//Viewer NV for the first image
+new CompareImagesWidget Box14
+ set Box14.WinTitle "2D+t"
-new ViewerNV viewer
- connect reader.Out viewer.In
- set viewer.nTypeView "5"
+new LayoutTab Box15
+ set Box15.WinHeight "800"
+ set Box15.WinWidth "1200"
-//Viewer NV for the second image
+new LayoutTab Box16
-new ViewerNV viewer2
- connect reader2.Out viewer2.In
- set viewer2.nTypeView "5"
-
-///////////////////////
-//Image Controls//
-//////////////////////
-
-new Slider sdrAngleX
- set sdrAngleX.Max 180
- set sdrAngleX.Min -180
- set sdrAngleX.In 0
- set sdrAngleX.Title "Rotation angle in X Axis"
- set sdrAngleX.ReactiveOnTrack true
-
-new Slider sdrAngleY
- set sdrAngleY.Max 180
- set sdrAngleY.Min -180
- set sdrAngleY.In 0
- set sdrAngleY.Title "Rotation angle in Y Axis"
- set sdrAngleY.ReactiveOnTrack true
-
-new Slider sdrAngleZ
- set sdrAngleZ.Max 180
- set sdrAngleZ.Min -180
- set sdrAngleZ.In 0
- set sdrAngleZ.Title "Rotation angle in Z Axis"
- set sdrAngleZ.ReactiveOnTrack true
-
-new Slider sdrScaleX
- set sdrScaleX.Max 300
- set sdrScaleX.Min 10
- set sdrScaleX.In 100
- set sdrScaleX.Title "Scale in X Axis"
- set sdrScaleX.ReactiveOnTrack true
-
-new Slider sdrScaleY
- set sdrScaleY.Max 300
- set sdrScaleY.Min 10
- set sdrScaleY.In 100
- set sdrScaleY.Title "Scale in Y Axis"
- set sdrScaleY.ReactiveOnTrack true
-
-new Slider sdrScaleZ
- set sdrScaleZ.Max 300
- set sdrScaleZ.Min 10
- set sdrScaleZ.In 100
- set sdrScaleZ.Title "Scale in Z Axis"
- set sdrScaleZ.ReactiveOnTrack true
-
-
-///////////////////////////////
-//Transformation Boxes//
-//////////////////////////////
-
-new Transform3D1PointBox transform
- connect viewer2.Point transform.CenterPoint
- connect sdrAngleX.Out transform.AngleX
- connect sdrAngleY.Out transform.AngleY
- connect sdrAngleZ.Out transform.AngleZ
- connect sdrScaleX.Out transform.ScaleX
- connect sdrScaleY.Out transform.ScaleY
- connect sdrScaleZ.Out transform.ScaleZ
-
-new ReSlicerBox reslicer
- connect viewer.Point reslicer.Origin
- connect reader2.Out reslicer.In
- connect transform.Out reslicer.Transform
-
-///////////////////////////////////////////////
-//Multiple Inputs for image interaction//
-///////////////////////////////////////////////
-
-new MultipleInputs mult
- connect viewer.BoxChange mult.In1
- connect viewer2.BoxChange mult.In2
- connect sdrAngleX.BoxChange mult.In3
- connect sdrAngleY.BoxChange mult.In4
- connect sdrAngleZ.BoxChange mult.In5
-
-new MultipleInputs mult2
- connect sdrScaleX.BoxChange mult2.In1
- connect sdrScaleY.BoxChange mult2.In2
- connect sdrScaleZ.BoxChange mult2.In3
-
-new MultipleInputs mult3
- connect mult.BoxChange mult3.In1
- connect mult2.BoxChange mult3.In2
-
- connect mult3.BoxChange transform.BoxExecute
- connect mult3.BoxChange reslicer.BoxExecute
-
-/////////////////////////////////////////
-//Image Result Viewer //
-////////////////////////////////////////
-
-new ViewerNV viewerResult
- connect reslicer.Out viewerResult.In
- set viewerResult.nTypeView "5"
-
- connect mult3.BoxChange viewerResult.BoxExecute
-
-//////////////////////////////////////
-//Interface Layouts //
-//////////////////////////////////////
+new LayoutTab Box17
-new LayoutSplit imagesLayout
- set imagesLayout.Orientation "v"
- set imagesLayout.Proportion 50
-
- connect viewer.Widget imagesLayout.Widget1
- connect viewer2.Widget imagesLayout.Widget2
-
-new LayoutLine toolsLayout
- set toolsLayout.Orientation "v"
- connect sdrAngleX.Widget toolsLayout.Widget1
- connect sdrAngleY.Widget toolsLayout.Widget2
- connect sdrAngleZ.Widget toolsLayout.Widget3
- connect sdrScaleX.Widget toolsLayout.Widget4
- connect sdrScaleY.Widget toolsLayout.Widget5
- connect sdrScaleZ.Widget toolsLayout.Widget6
+new LayoutLine Box18
+ set Box18.WinTitle "Move Image"
-new LayoutSplit resultLayout
- set resultLayout.Orientation "v"
- set resultLayout.Proportion 60
+new LayoutLine Box19
+ set Box19.WinTitle "Fix Image"
+
+
+connect Box22.Out viewer2.In
+
+connect Box23.Out viewer.In
+
+connect Box22.Out Box52.Image1
+
+connect Box23.Out Box52.Image2
+
+connect Box52.Out Box20.Image2
+
+connect Box52.BoxChange Box20.BoxExecute
+
+connect Box52.Widget resultLayout.Widget2
+
+connect Box23.Out Box11.In1
+
+connect Box52.Out Box11.In2
+
+connect Box20.Widget Box12.Widget1
+
+connect Box11.Widget Box13.Widget1
+
+connect Box13.Widget Box12.Widget2
+
+connect Box12.Widget resultLayout.Widget1
+
+connect Box23.Out Box20.Image1
+
+connect Box52.Out Box14.In2
+
+connect Box23.Out Box14.In1
+
+connect Box52.BoxChange Box13.BoxExecute
+
+connect imagesLayout.Widget Box15.Widget1
+
+connect resultLayout.Widget Box15.Widget2
+
+connect Box16.Widget imagesLayout.Widget1
+
+connect Box17.Widget imagesLayout.Widget2
+
+connect viewer2.Widget Box18.Widget1
+
+connect Box18.Widget Box17.Widget1
+
+connect viewer.Widget Box19.Widget1
+
+connect Box19.Widget Box16.Widget1
+
+connect Box20.Point Box11.Point
+
+connect Box20.BoxChange Box11.BoxExecute
+
+connect Box24.Out Box22.In
- connect viewerResult.Widget resultLayout.Widget1
- connect toolsLayout.Widget resultLayout.Widget2
+connect Box25.Out Box23.In
-new LayoutSplit main
- set main.Orientation "h"
- set main.Proportion 50
- connect imagesLayout.Widget main.Widget1
- connect resultLayout.Widget main.Widget2
-exec main
-
-
\ No newline at end of file
+# Complex input ports
+exec Box15