-load wx
-load vtk
-load std
-load wxvtk
+# ----------------------------------
+# - BBTKGEditor v 1.4 BBS BlackBox Script (Complex Box)
+# - /home/davila/Creatis/C8/creatools_source/bbtk/packages/wxvtk/bbs/boxes/bbIsoSurfaceWidget.bbs
+# ----------------------------------
+
+include std
+include itkvtk
+include wx
+include vtk
+include std
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 wx:LayoutLine controls
+ set controls.Orientation "HORIZONTAL"
+
+new vtk:IsoSurfaceExtractor Asurface
+
+new wx:Slider isovalue
+ set isovalue.ChangeResolution "true"
+ set isovalue.Max "5000"
set isovalue.Title "Isovalue"
+
+new wx: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 wx:ColourSelectorButton colour
+
+new std:MultipleInputs refresh
+
+new std:Div Adiv
+ set Adiv.In2 "100"
+
+new vtk:UpdateRender Box08
+ set Box08.Active "true"
+
+new std:MagicBox Box09
+
+new wx:CheckBox Box10
+ set Box10.In "false"
+ set Box10.ReactiveOnKeystroke "true"
+ set Box10.Title "Active"
- 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 Asurface.Isovalue
+connect opacity.Out Adiv.In1
+connect Adiv.Out Asurface.Opacity
+connect colour.Out Asurface.Colour
+connect isovalue.BoxChange refresh.In1
+connect opacity.BoxChange refresh.In2
+connect Box09.Out Asurface.Renderer
+connect Box09.Out Box08.Renderer
+connect opacity.BoxChange refresh.BoxExecute
+connect refresh.BoxChange Asurface.BoxExecute
+connect refresh.BoxChange Box08.BoxExecute
+connect refresh.BoxChange Adiv.BoxExecute
+connect colour.BoxChange refresh.In3
+connect Box10.BoxChange refresh.In5
+connect Box10.Out Asurface.active
+connect colour.Widget controls.Widget4
+connect opacity.Widget controls.Widget3
+connect isovalue.Widget controls.Widget2
+connect Box10.Widget controls.Widget1
- 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 Asurface.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 Asurface.Out " "
+output Widget controls.Widget " "
+output BoxChange refresh.BoxChange " "
+output OutIsovalue isovalue.Out " "
- output Out surface.Out "Output surface"
- output BoxChange refresh.Out "BoxChange"
- output Widget controls.Widget "Widget"
endefine