From a06f8f826c95fe8c1c3b7da42ad0cfd2e033b129 Mon Sep 17 00:00:00 2001 From: "eduardo.davila@creatis.insa-lyon.fr" Date: Fri, 19 Apr 2024 12:31:42 +0200 Subject: [PATCH] #3515 Add ext to ImagaVtkProperties box --- .../bbs/boxes/imageVtkPropertiesWidget.bbg | 47 ++++-- .../bbs/boxes/imageVtkPropertiesWidget.bbs | 9 +- packages/vtk/src/bbvtkImageVtkProperties.cxx | 21 ++- packages/vtk/src/bbvtkImageVtkProperties.h | 2 + packages/wx/bbs/boxes/DropFiles_Widget.bbg | 152 ++++++++++++++++++ packages/wx/bbs/boxes/DropFiles_Widget.bbs | 67 ++++++++ 6 files changed, 283 insertions(+), 15 deletions(-) create mode 100644 packages/wx/bbs/boxes/DropFiles_Widget.bbg create mode 100644 packages/wx/bbs/boxes/DropFiles_Widget.bbs diff --git a/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbg b/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbg index c1d5a93..b35d0ba 100644 --- a/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbg +++ b/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbg @@ -1,5 +1,5 @@ # ---------------------------------- -# - BBTKGEditor v 1.5 BBG BlackBox Diagram file +# - BBTKGEditor v 1.6 BBG BlackBox Diagram file # - /Users/davila/Creatis/C23/creatools_source/bbtk/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbg # ---------------------------------- @@ -7,21 +7,22 @@ APP_START CATEGORY: DESCRIPTION:(C++,Python) Description ?? AUTHOR:Author ?? +EXPORTFORMAT:0 COMPLEXBOX:TRUE COMPLEXBOXNAME:ImageVtkPropertiesWidget PACKAGENAME:toolsbbtk -COMPLEXOUTPUTS:7 +COMPLEXOUTPUTS:8 COMPLEX_PORT widget -2.333201:-21.756193:-900.000000 +2.255572:-27.190208:-900.000000 FIN_COMPLEX_PORT COMPLEX_PORT Dimensions -14.992127:-21.434674:-900.000000 +14.759241:-28.421265:-900.000000 FIN_COMPLEX_PORT COMPLEX_PORT MinMax -37.571031:-20.751634:-900.000000 +37.571031:-26.108020:-900.000000 FIN_COMPLEX_PORT COMPLEX_PORT Size @@ -39,6 +40,10 @@ COMPLEX_PORT origin 45.827583:-20.347923:-900.000000 FIN_COMPLEX_PORT +COMPLEX_PORT +extent +23.211007:-27.829919:-900.000000 +FIN_COMPLEX_PORT COMPLEXINPUTS:3 COMPLEX_PORT in @@ -52,7 +57,7 @@ COMPLEX_PORT boxExecute -64.530422:45.023797:-900.000000 FIN_COMPLEX_PORT -BOXES:15 +BOXES:16 BOX wx:OutputText:Box02 ISEXEC:FALSE @@ -110,8 +115,8 @@ FIN_BOX BOX wx:LayoutLine:Box11 ISEXEC:FALSE --40.594682:-14.929274:-900.000000 --7.274682:-17.429274:-900.000000 +-43.932720:-17.258138:-900.000000 +-10.612720:-19.758138:-900.000000 PORT WinTitle:"Image properties" FIN_BOX @@ -126,8 +131,8 @@ FIN_BOX BOX std:MagicBox:Box14 ISEXEC:FALSE --69.176612:37.722641:-900.000000 --47.576612:35.222641:-900.000000 +-30.439848:36.713467:-900.000000 +-8.839848:34.213467:-900.000000 FIN_BOX BOX wx:OutputText:Box15 @@ -171,7 +176,15 @@ ISEXEC:FALSE PORT I:"2" FIN_BOX -CONNECTIONS:40 +BOX +wx:OutputText:Box23 +ISEXEC:FALSE +-16.547710:-10.338227:-900.000000 +5.122290:-12.838227:-900.000000 +PORT +Title:"Extent" +FIN_BOX +CONNECTIONS:44 CONNECTION Box09:Components:Box10:In NumberOfControlPoints:0 @@ -292,4 +305,16 @@ NumberOfControlPoints:0 CONNECTION Box09:Origin:origin:origin NumberOfControlPoints:0 +CONNECTION +Box23:Widget:Box11:Widget8 +NumberOfControlPoints:0 +CONNECTION +Box09:Extent:Box23:In +NumberOfControlPoints:0 +CONNECTION +Box09:Extent:extent:extent +NumberOfControlPoints:0 +CONNECTION +Box14:Out:Box23:BoxExecute +NumberOfControlPoints:0 APP_END diff --git a/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbs b/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbs index ec0bb53..bfcf1e4 100644 --- a/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbs +++ b/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbs @@ -1,5 +1,5 @@ # ---------------------------------- -# - BBTKGEditor v 1.5 BBS BlackBox Script (Complex Box) +# - BBTKGEditor v 1.6 BBS BlackBox Script (Complex Box) # - /Users/davila/Creatis/C23/creatools_source/bbtk/packages/toolsbbtk/bbs/boxes/imageVtkPropertiesWidget.bbs # ---------------------------------- @@ -60,6 +60,9 @@ new std:GetVectorDoubleElement Box19 new std:GetVectorDoubleElement Box21 set Box21.I "2" +new wx:OutputText Box23 + set Box23.Title "Extent" + connect Box09.Components Box10.In connect Box09.MinMax Box26.In @@ -91,6 +94,9 @@ connect Box21.Out Box16.In5 connect Box18.Out Box16.In1 connect Box19.Out Box16.In3 connect Box16.Out Box15.In +connect Box23.Widget Box11.Widget8 +connect Box09.Extent Box23.In +connect Box14.Out Box23.BoxExecute # Complex input ports input in Box09.In " " @@ -105,6 +111,7 @@ output Size Box09.Size " " output Spacing Box09.Spacing " " output TypeName Box09.TypeName " " output origin Box09.Origin " " +output extent Box09.Extent " " endefine diff --git a/packages/vtk/src/bbvtkImageVtkProperties.cxx b/packages/vtk/src/bbvtkImageVtkProperties.cxx index a065023..f3686cb 100644 --- a/packages/vtk/src/bbvtkImageVtkProperties.cxx +++ b/packages/vtk/src/bbvtkImageVtkProperties.cxx @@ -48,6 +48,7 @@ void ImageVtkProperties::Process() std::string nametype; int numberoOfComponents; std::vector vsize; + std::vector vextent; std::vector vspacing; std::vector vrange; std::vector vorigin; @@ -64,9 +65,16 @@ void ImageVtkProperties::Process() bbGetInputIn()->GetExtent(ext); #endif - vsize.push_back(ext[1]-ext[0]+1); - vsize.push_back(ext[3]-ext[2]+1); - vsize.push_back(ext[5]-ext[4]+1); + vsize.push_back( ext[1]-ext[0]+1 ); + vsize.push_back( ext[3]-ext[2]+1 ); + vsize.push_back( ext[5]-ext[4]+1 ); + vextent.push_back( ext[0] ); + vextent.push_back( ext[1] ); + vextent.push_back( ext[2] ); + vextent.push_back( ext[3] ); + vextent.push_back( ext[4] ); + vextent.push_back( ext[5] ); + dim = 0; if (vsize[0]>1) dim++; if (vsize[1]>1) dim++; @@ -100,6 +108,12 @@ void ImageVtkProperties::Process() vsize.push_back(0); vsize.push_back(0); vsize.push_back(0); + vextent.push_back(0); + vextent.push_back(0); + vextent.push_back(0); + vextent.push_back(0); + vextent.push_back(0); + vextent.push_back(0); vspacing.push_back(0); vspacing.push_back(0); vspacing.push_back(0); @@ -110,6 +124,7 @@ void ImageVtkProperties::Process() bbSetOutputDimension ( dim ); bbSetOutputOrigin ( vorigin ); bbSetOutputSize ( vsize ); + bbSetOutputExtent ( vextent ); bbSetOutputSpacing ( vspacing ); bbSetOutputMinMax ( vrange ); bbSetOutputTypeName ( nametype ); diff --git a/packages/vtk/src/bbvtkImageVtkProperties.h b/packages/vtk/src/bbvtkImageVtkProperties.h index e22e13a..23d43ea 100644 --- a/packages/vtk/src/bbvtkImageVtkProperties.h +++ b/packages/vtk/src/bbvtkImageVtkProperties.h @@ -54,6 +54,7 @@ class bbvtk_EXPORT ImageVtkProperties BBTK_DECLARE_OUTPUT(Dimension,unsigned int); BBTK_DECLARE_OUTPUT(MinMax,std::vector); BBTK_DECLARE_OUTPUT(Size,std::vector); + BBTK_DECLARE_OUTPUT(Extent,std::vector); BBTK_DECLARE_OUTPUT(Spacing,std::vector); BBTK_DECLARE_OUTPUT(TypeName,std::string); BBTK_DECLARE_OUTPUT(Components,int); @@ -74,6 +75,7 @@ BBTK_BEGIN_DESCRIBE_BLACK_BOX(ImageVtkProperties,bbtk::AtomicBlackBox); BBTK_OUTPUT(ImageVtkProperties,Dimension,"Dimensions 1D 2D 3D",unsigned int,""); BBTK_OUTPUT(ImageVtkProperties,MinMax,"Gray level range min and max",std::vector,""); BBTK_OUTPUT(ImageVtkProperties,Size,"Size of the image",std::vector,""); + BBTK_OUTPUT(ImageVtkProperties,Extent,"Extent of the image",std::vector,""); BBTK_OUTPUT(ImageVtkProperties,Spacing,"Spacing of the image",std::vector,""); BBTK_OUTPUT(ImageVtkProperties,TypeName,"Type format of the image",std::string,""); BBTK_OUTPUT(ImageVtkProperties,Components,"Number of scalar components",int,""); diff --git a/packages/wx/bbs/boxes/DropFiles_Widget.bbg b/packages/wx/bbs/boxes/DropFiles_Widget.bbg new file mode 100644 index 0000000..f22f6d6 --- /dev/null +++ b/packages/wx/bbs/boxes/DropFiles_Widget.bbg @@ -0,0 +1,152 @@ +# ---------------------------------- +# - BBTKGEditor v 1.6 BBG BlackBox Diagram file +# - /Users/davila/Creatis/C23/creatools_source/bbtk/packages/wx/bbs/boxes/DropFiles_Widget.bbg +# ---------------------------------- + +APP_START +CATEGORY: +DESCRIPTION:Description ?? +AUTHOR:Author ?? +EXPORTFORMAT:0 +COMPLEXBOX:TRUE +COMPLEXBOXNAME:DropFiles_Wdiget +PACKAGENAME:wx +COMPLEXOUTPUTS:3 +COMPLEX_PORT +widget +49.158625:-12.162929:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +lstPaths +20.141034:-12.300454:-900.000000 +FIN_COMPLEX_PORT +COMPLEX_PORT +boxchange +9.832842:-12.001647:-900.000000 +FIN_COMPLEX_PORT +COMPLEXINPUTS:1 +COMPLEX_PORT +titleFlieName +31.418012:92.217884:-900.000000 +FIN_COMPLEX_PORT +BOXES:9 +BOX +wx:ButtonSelectFilesDirectory:Box17 +ISEXEC:FALSE +21.941123:63.478125:-900.000000 +51.741123:60.978125:-900.000000 +PORT +Label:"Open" +PORT +Message:"Open" +PORT +Title:"Open" +FIN_BOX +BOX +wx:LayoutLine:Box18 +ISEXEC:FALSE +39.946633:51.490954:-900.000000 +73.266633:48.990954:-900.000000 +PORT +Orientation:"H" +PORT +WinTitle:"Files B" +FIN_BOX +BOX +wx:OutputText:Box19 +ISEXEC:FALSE +59.095742:63.640944:-900.000000 +80.765742:61.140944:-900.000000 +PORT +In:"Drag here..." +FIN_BOX +BOX +wx:DropFiles:Box20 +ISEXEC:FALSE +18.337109:41.893285:-900.000000 +39.842109:39.393285:-900.000000 +FIN_BOX +BOX +wx:OutputText:Box22 +ISEXEC:FALSE +30.130064:32.836901:-900.000000 +51.800064:30.336901:-900.000000 +FIN_BOX +BOX +wx:LayoutSplit:Box23 +ISEXEC:FALSE +40.640064:24.454590:-900.000000 +63.400064:21.954590:-900.000000 +PORT +Orientation:"H" +PORT +Proportion:"75" +FIN_BOX +BOX +wx:StaticBox:Box25 +ISEXEC:FALSE +60.714061:45.056769:-900.000000 +82.229061:42.556769:-900.000000 +FIN_BOX +BOX +wx:StaticBox:Box28 +ISEXEC:FALSE +47.452093:1.342532:-900.000000 +68.967093:-1.157468:-900.000000 +FIN_BOX +BOX +std:MagicBox:Box29 +ISEXEC:FALSE +26.604668:77.090230:-900.000000 +48.204668:74.590230:-900.000000 +FIN_BOX +CONNECTIONS:16 +CONNECTION +Box18:Widget:Box20:Widget +NumberOfControlPoints:0 +CONNECTION +Box17:BoxChange:Box20:BoxExecute +NumberOfControlPoints:0 +CONNECTION +Box20:BoxChange:Box22:BoxExecute +NumberOfControlPoints:0 +CONNECTION +Box20:LstPaths:Box22:In +NumberOfControlPoints:0 +CONNECTION +Box18:Widget:Box25:BoxContent +NumberOfControlPoints:0 +CONNECTION +Box25:Widget:Box23:Widget2 +NumberOfControlPoints:0 +CONNECTION +Box23:Widget:Box28:BoxContent +NumberOfControlPoints:0 +CONNECTION +Box17:Widget:Box18:Widget2 +NumberOfControlPoints:0 +CONNECTION +Box19:Widget:Box18:Widget4 +NumberOfControlPoints:0 +CONNECTION +Box22:Widget:Box23:Widget1 +NumberOfControlPoints:0 +CONNECTION +Box28:Widget:widget:widget +NumberOfControlPoints:0 +CONNECTION +titleFlieName:titleFlieName:Box29:In +NumberOfControlPoints:0 +CONNECTION +Box29:Out:Box22:Title +NumberOfControlPoints:0 +CONNECTION +Box20:LstPaths:lstPaths:lstPaths +NumberOfControlPoints:0 +CONNECTION +Box20:BoxChange:boxchange:boxchange +NumberOfControlPoints:0 +CONNECTION +Box17:Out:Box20:LstPaths +NumberOfControlPoints:0 +APP_END diff --git a/packages/wx/bbs/boxes/DropFiles_Widget.bbs b/packages/wx/bbs/boxes/DropFiles_Widget.bbs new file mode 100644 index 0000000..2f01d7b --- /dev/null +++ b/packages/wx/bbs/boxes/DropFiles_Widget.bbs @@ -0,0 +1,67 @@ +# ---------------------------------- +# - BBTKGEditor v 1.6 BBS BlackBox Script (Complex Box) +# - /Users/davila/Creatis/C23/creatools_source/bbtk/packages/wx/bbs/boxes/DropFiles_Widget.bbs +# ---------------------------------- + +include std +include itkvtk +include wx +include std + +define DropFiles_Wdiget wx + +author "Author ??" +description "Description ??" + +category "" + +new wx:ButtonSelectFilesDirectory Box17 + set Box17.Label "Open" + set Box17.Message "Open" + set Box17.Title "Open" + +new wx:LayoutLine Box18 + set Box18.Orientation "H" + set Box18.WinTitle "Files B" + +new wx:OutputText Box19 + set Box19.In "Drag here..." + +new wx:DropFiles Box20 + +new wx:OutputText Box22 + +new wx:LayoutSplit Box23 + set Box23.Orientation "H" + set Box23.Proportion "75" + +new wx:StaticBox Box25 + +new wx:StaticBox Box28 + +new std:MagicBox Box29 + + +connect Box18.Widget Box20.Widget +connect Box17.BoxChange Box20.BoxExecute +connect Box20.BoxChange Box22.BoxExecute +connect Box20.LstPaths Box22.In +connect Box18.Widget Box25.BoxContent +connect Box25.Widget Box23.Widget2 +connect Box23.Widget Box28.BoxContent +connect Box17.Widget Box18.Widget2 +connect Box19.Widget Box18.Widget4 +connect Box22.Widget Box23.Widget1 +connect Box29.Out Box22.Title +connect Box17.Out Box20.LstPaths + +# Complex input ports +input titleFlieName Box29.In " " + +# Complex output ports +output widget Box28.Widget " " +output lstPaths Box20.LstPaths " " +output boxchange Box20.BoxChange " " + + +endefine -- 2.45.1