+# ----------------------------------
+# - BBTKGEditor v 1.4 BBS BlackBox Script (Complex Box)
+# - /home/davila/Creatis/creaTools/creatools_install/bin/../share/bbtk/bbs/wxvtk/boxes/bbIsoSurfaceWidget.bbs
+# ----------------------------------
+
+include std
+include itkvtk
include wx
include vtk
include std
-include wxvtk
define IsoSurfaceWidget wxvtk
- author "laurent.guigues@creatis.insa-lyon.fr"
- description "Image iso-surface extractor (vtk::IsoSurfaceExtractor) with associated control panel (isovalue, opacity and colour)"
- category "image;mesh;widget;viewer"
-
- new LayoutLine controls
- new LayoutLine sliders
- new IsoSurfaceExtractor surface
- new Slider isovalue
- new Slider opacity
- new LayoutLine colourFrame
- new ColourSelectorButton colour
- new MultipleInputs refresh
- new Div div
-
- connect sliders.Widget controls.Widget1
- connect colourFrame.Widget controls.Widget2
-
- connect colour.Widget colourFrame.Widget1
- connect isovalue.Widget sliders.Widget1
- connect opacity.Widget sliders.Widget2
-
- connect isovalue.Out surface.Isovalue
- connect opacity.Out div.In1
- set div.In2 100
- connect div.Out surface.Opacity
- connect colour.Out surface.Colour
-
- connect isovalue.BoxChange refresh.In1
- connect opacity.BoxChange refresh.In2
- connect colour.BoxChange refresh.In3
-
-# connect colourButton.BoxChange colour.BoxExecute
-
- set colourFrame.WinTitle "Colour"
- set controls.Orientation HORIZONTAL
+
+author "laurent.guigues@creatis.insa-lyon.fr"
+description "Image iso-surface extractor (vtk"
+
+category "image;mesh;widget;viewer"
+
+new LayoutLine controls
+ set controls.Orientation "HORIZONTAL"
+
+new IsoSurfaceExtractor surface
+
+new Slider isovalue
+ set isovalue.ChangeResolution "true"
+ set isovalue.Max "5000"
set isovalue.Title "Isovalue"
+
+new Slider opacity
+ set opacity.In "100"
+ set opacity.Max "100"
+ set opacity.Min "0"
+ set opacity.ReactiveOnTrack "true"
set opacity.Title "Opacity"
- set opacity.Min 0
- set opacity.Max 100
- set opacity.In 100
-
-# set colourButton.Label "Colour"
+new ColourSelectorButton colour
+
+new MultipleInputs refresh
+
+new Div div
+ set div.In2 "100"
+
+new UpdateRender Box08
+ set Box08.Active "true"
+
+new MagicBox Box09
- input Title controls.WinTitle "Title of the control panel"
- input In surface.In "Input image"
- input Opacity opacity.In "Initial opacity"
- input Isovalue isovalue.In "Initial isovalue"
- input Colour colour.In "Initial colour"
+connect isovalue.Out surface.Isovalue
+connect opacity.Out div.In1
+connect div.Out surface.Opacity
+connect colour.Out surface.Colour
+connect isovalue.BoxChange refresh.In1
+connect opacity.BoxChange refresh.In2
+connect colour.BoxChange refresh.In3
+connect colour.Widget controls.Widget3
+connect isovalue.Widget controls.Widget1
+connect opacity.Widget controls.Widget2
+connect Box09.Out surface.Renderer
+connect Box09.Out Box08.Renderer
+connect refresh.Out Box08.BoxExecute
+connect refresh.Out surface.BoxExecute
+connect opacity.BoxChange refresh.BoxExecute
- input BoxExecute surface.BoxExecute "Box execution"
+# Complex input ports
+input Title controls.WinTitle " "
+input Opacity opacity.In " "
+input Isovalue isovalue.In " "
+input Colour colour.In " "
+input Vertical controls.Orientation " "
+input BoxExecute refresh.In4 " "
+input In surface.In " "
+input maxIsovalue isovalue.Max " "
+input vtkRenderer Box09.In " "
- input Vertical controls.Orientation "Set to 1 to have controls arranged vertically"
+# Complex output ports
+output Out surface.Out " "
+output Widget controls.Widget " "
+output BoxChange refresh.Out " "
- output Out surface.Out "Output surface"
- output BoxChange refresh.Out "BoxChange"
- output Widget controls.Widget "Widget"
endefine