]> Creatis software - creaVtk.git/commitdiff
#3274 creaVtk Feature New Normal - BooleanOperationPolyDataFilter BoxWidget ClipPol...
authorEduardo DAVILA <davila@localhost.localdomain>
Mon, 8 Jul 2019 07:57:23 +0000 (09:57 +0200)
committerEduardo DAVILA <davila@localhost.localdomain>
Mon, 8 Jul 2019 07:57:23 +0000 (09:57 +0200)
25 files changed:
bbtk_creaVtk_PKG/bbs/appli/exampleBooleanOperationPolyDataFilter.bbg [new file with mode: 0644]
bbtk_creaVtk_PKG/bbs/appli/exampleBooleanOperationPolyDataFilter.bbs [new file with mode: 0644]
bbtk_creaVtk_PKG/bbs/appli/exampleDelaunay3D.bbg [new file with mode: 0644]
bbtk_creaVtk_PKG/bbs/appli/exampleDelaunay3D.bbs [new file with mode: 0644]
bbtk_creaVtk_PKG/bbs/appli/exampleVectorsExploration_Widget.bbg
bbtk_creaVtk_PKG/bbs/appli/exampleVectorsExploration_Widget.bbs
bbtk_creaVtk_PKG/bbs/appli/example_BoxWidget_ClipPolydata.bbg [new file with mode: 0644]
bbtk_creaVtk_PKG/bbs/appli/example_BoxWidget_ClipPolydata.bbs [new file with mode: 0644]
bbtk_creaVtk_PKG/bbs/boxes/VolumeVectorVisu_Interface.bbg
bbtk_creaVtk_PKG/bbs/boxes/VolumeVectorVisu_Interface.bbs
bbtk_creaVtk_PKG/bbs/boxes/VolumeVectorVisu_Widget.bbg
bbtk_creaVtk_PKG/bbs/boxes/VolumeVectorVisu_Widget.bbs
bbtk_creaVtk_PKG/src/bbcreaVtkBooleanOperationPolyDataFilter.cxx [new file with mode: 0644]
bbtk_creaVtk_PKG/src/bbcreaVtkBooleanOperationPolyDataFilter.h [new file with mode: 0644]
bbtk_creaVtk_PKG/src/bbcreaVtkBoxWidget.cxx [new file with mode: 0644]
bbtk_creaVtk_PKG/src/bbcreaVtkBoxWidget.h [new file with mode: 0644]
bbtk_creaVtk_PKG/src/bbcreaVtkClipPolyData.cxx [new file with mode: 0644]
bbtk_creaVtk_PKG/src/bbcreaVtkClipPolyData.h [new file with mode: 0644]
bbtk_creaVtk_PKG/src/bbcreaVtkDelaunay3D.cxx
bbtk_creaVtk_PKG/src/bbcreaVtkDelaunay3D.h
bbtk_creaVtk_PKG/src/bbcreaVtkVectorsVisu.h
bbtk_creaVtk_PKG/src/bbcreaVtkVoxelGrid.cxx [new file with mode: 0644]
bbtk_creaVtk_PKG/src/bbcreaVtkVoxelGrid.h [new file with mode: 0644]
lib/creaVtk/vtkVectorsTensorsVisuBase.cpp
lib/creaVtk/vtkVectorsVisu.cpp

diff --git a/bbtk_creaVtk_PKG/bbs/appli/exampleBooleanOperationPolyDataFilter.bbg b/bbtk_creaVtk_PKG/bbs/appli/exampleBooleanOperationPolyDataFilter.bbg
new file mode 100644 (file)
index 0000000..83f571a
--- /dev/null
@@ -0,0 +1,108 @@
+# ----------------------------------
+# - BBTKGEditor v 1.4 BBG BlackBox Diagram file
+# - /home/davila/Creatis/C8/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/exampleBooleanOperationPolyDataFilter.bbg
+# ----------------------------------
+
+APP_START
+CATEGORY:<VOID>
+DESCRIPTION:Description ??
+AUTHOR:Author ??
+COMPLEXBOX:FALSE
+COMPLEXINPUTS:0
+BOXES:8
+BOX
+vtk:LoadHola:Box00
+ISEXEC:FALSE
+20.514225:65.842216:-900.000000
+56.064225:55.842216:-900.000000
+FIN_BOX
+BOX
+creaMaracasVisu:ViewerNV:Box01
+ISEXEC:FALSE
+10.074288:34.484577:-900.000000
+73.794288:24.484577:-900.000000
+FIN_BOX
+BOX
+creaVtk:BooleanOperationPolyDataFilter:Box02
+ISEXEC:FALSE
+-84.931667:-3.883455:-900.000000
+-27.731667:-13.883455:-900.000000
+PORT
+Operation:"2"
+FIN_BOX
+BOX
+vtk:SphereSource:Box03
+ISEXEC:FALSE
+-66.750036:38.292380:-900.000000
+-26.925036:28.292380:-900.000000
+PORT
+CenterX:"50"
+PORT
+CenterY:"50"
+PORT
+CenterZ:"50"
+PORT
+Radius:"10"
+FIN_BOX
+BOX
+vtk:SphereSource:Box04
+ISEXEC:FALSE
+-115.429192:38.610324:-900.000000
+-75.604192:28.610324:-900.000000
+PORT
+CenterX:"60"
+PORT
+CenterY:"60"
+PORT
+CenterZ:"60"
+PORT
+Radius:"15"
+FIN_BOX
+BOX
+wx:LayoutSplit:Box05
+ISEXEC:TRUE
+17.589025:-59.260516:-900.000000
+56.669025:-69.260516:-900.000000
+PORT
+Orientation:"H"
+FIN_BOX
+BOX
+wx:CommandButton:Box06
+ISEXEC:FALSE
+-129.629226:-22.380301:-900.000000
+-86.854226:-32.380301:-900.000000
+PORT
+Label:"Run"
+FIN_BOX
+BOX
+vtk:PolyDataToActor:Box07
+ISEXEC:FALSE
+-77.744753:-60.735724:-900.000000
+-35.344753:-70.735724:-900.000000
+FIN_BOX
+CONNECTIONS:8
+CONNECTION
+Box00:Out:Box01:In
+NumberOfControlPoints:0
+CONNECTION
+Box01:Widget:Box05:Widget2
+NumberOfControlPoints:0
+CONNECTION
+Box06:Widget:Box05:Widget1
+NumberOfControlPoints:0
+CONNECTION
+Box02:Out:Box07:In
+NumberOfControlPoints:0
+CONNECTION
+Box01:Renderer1:Box07:Renderer
+NumberOfControlPoints:0
+CONNECTION
+Box06:BoxChange:Box07:BoxExecute
+NumberOfControlPoints:0
+CONNECTION
+Box04:Out:Box02:In1
+NumberOfControlPoints:0
+CONNECTION
+Box03:Out:Box02:In2
+NumberOfControlPoints:0
+APP_END
diff --git a/bbtk_creaVtk_PKG/bbs/appli/exampleBooleanOperationPolyDataFilter.bbs b/bbtk_creaVtk_PKG/bbs/appli/exampleBooleanOperationPolyDataFilter.bbs
new file mode 100644 (file)
index 0000000..cadee93
--- /dev/null
@@ -0,0 +1,67 @@
+# ----------------------------------
+# - BBTKGEditor v 1.4 BBS BlackBox Script
+# - /home/davila/Creatis/C8/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/exampleBooleanOperationPolyDataFilter.bbs
+# ----------------------------------
+
+# BBTK GEditor Script
+# ----------------------
+
+include std
+include itkvtk
+include vtk
+include creaMaracasVisu
+include creaVtk
+include wx
+
+author "Author ??"
+description "Description ??"
+category "<VOID>"
+
+new vtk:LoadHola Box00
+
+new creaMaracasVisu:ViewerNV Box01
+
+new creaVtk:BooleanOperationPolyDataFilter Box02
+  set Box02.Operation "2"
+
+new vtk:SphereSource Box03
+  set Box03.CenterX "50"
+  set Box03.CenterY "50"
+  set Box03.CenterZ "50"
+  set Box03.Radius "10"
+
+new vtk:SphereSource Box04
+  set Box04.CenterX "60"
+  set Box04.CenterY "60"
+  set Box04.CenterZ "60"
+  set Box04.Radius "15"
+
+new wx:LayoutSplit Box05
+  set Box05.Orientation "H"
+
+new wx:CommandButton Box06
+  set Box06.Label "Run"
+
+new vtk:PolyDataToActor Box07
+
+
+connect Box00.Out Box01.In
+
+connect Box01.Widget Box05.Widget2
+
+connect Box06.Widget Box05.Widget1
+
+connect Box02.Out Box07.In
+
+connect Box01.Renderer1 Box07.Renderer
+
+connect Box06.BoxChange Box07.BoxExecute
+
+connect Box04.Out Box02.In1
+
+connect Box03.Out Box02.In2
+
+
+
+# Complex input ports
+exec Box05
diff --git a/bbtk_creaVtk_PKG/bbs/appli/exampleDelaunay3D.bbg b/bbtk_creaVtk_PKG/bbs/appli/exampleDelaunay3D.bbg
new file mode 100644 (file)
index 0000000..18ad355
--- /dev/null
@@ -0,0 +1,134 @@
+# ----------------------------------
+# - BBTKGEditor v 1.4 BBG BlackBox Diagram file
+# - /home/davila/Creatis/C8/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/exampleDelaunay3D.bbg
+# ----------------------------------
+
+APP_START
+CATEGORY:<VOID>
+DESCRIPTION:Description ??
+AUTHOR:Author ??
+COMPLEXBOX:FALSE
+COMPLEXINPUTS:0
+BOXES:10
+BOX
+creaVtk:Delaunay3D:Box03
+ISEXEC:FALSE
+-2.472015:3.957655:-900.000000
+35.727985:-6.042345:-900.000000
+PORT
+Alpha:"0"
+PORT
+Tolerance:"0"
+FIN_BOX
+BOX
+creaMaracasVisu:ViewerNV:Box04
+ISEXEC:FALSE
+-126.280141:32.405606:-900.000000
+-62.560141:22.405606:-900.000000
+FIN_BOX
+BOX
+vtk:LoadHola:Box05
+ISEXEC:FALSE
+-120.467476:57.400064:-900.000000
+-84.917476:47.400064:-900.000000
+FIN_BOX
+BOX
+vtk:PolyDataToActor:Box06
+ISEXEC:FALSE
+-5.919702:-30.569827:-900.000000
+36.480298:-40.569827:-900.000000
+PORT
+Opacity:"0.4"
+FIN_BOX
+BOX
+wx:LayoutSplit:Box07
+ISEXEC:TRUE
+-161.991926:-50.380782:-900.000000
+-122.911926:-60.380782:-900.000000
+PORT
+Orientation:"H"
+FIN_BOX
+BOX
+wx:CommandButton:Box08
+ISEXEC:FALSE
+-179.483711:26.604189:-900.000000
+-136.708711:16.604189:-900.000000
+PORT
+Label:"Run"
+FIN_BOX
+BOX
+creaMaracasVisu:DrawAxe3D:Box10
+ISEXEC:FALSE
+-99.671144:-20.425965:-900.000000
+-61.971144:-30.425965:-900.000000
+PORT
+Colour:"0 0 1"
+FIN_BOX
+BOX
+std:ConcatStrings:Box11
+ISEXEC:FALSE
+-67.014817:80.569084:-900.000000
+-27.289817:70.569084:-900.000000
+PORT
+In1:"10 10 10 30 50"
+FIN_BOX
+BOX
+std:ConcatStrings:Box12
+ISEXEC:FALSE
+-31.127956:68.291016:-900.000000
+8.597044:58.291016:-900.000000
+PORT
+In1:"80 20 10 30 50"
+FIN_BOX
+BOX
+std:ConcatStrings:Box13
+ISEXEC:FALSE
+-15.540973:57.652069:-900.000000
+24.184027:47.652069:-900.000000
+PORT
+In1:"40 60 30 30 50"
+FIN_BOX
+CONNECTIONS:14
+CONNECTION
+Box05:Out:Box04:In
+NumberOfControlPoints:0
+CONNECTION
+Box03:Out:Box06:In
+NumberOfControlPoints:0
+CONNECTION
+Box04:Widget:Box07:Widget2
+NumberOfControlPoints:0
+CONNECTION
+Box08:Widget:Box07:Widget1
+NumberOfControlPoints:0
+CONNECTION
+Box04:Renderer1:Box06:Renderer
+NumberOfControlPoints:0
+CONNECTION
+Box11:Out:Box10:lstPointX
+NumberOfControlPoints:0
+CONNECTION
+Box12:Out:Box10:lstPointY
+NumberOfControlPoints:0
+CONNECTION
+Box13:Out:Box10:lstPointZ
+NumberOfControlPoints:0
+CONNECTION
+Box11:Out:Box03:LstPointsX
+NumberOfControlPoints:0
+CONNECTION
+Box12:Out:Box03:LstPointsY
+NumberOfControlPoints:0
+CONNECTION
+Box13:Out:Box03:LstPointsZ
+NumberOfControlPoints:0
+CONNECTION
+Box04:Renderer1:Box10:Renderer
+NumberOfControlPoints:0
+CONNECTION
+Box08:BoxChange:Box10:BoxExecute
+NumberOfControlPoints:0
+CONNECTION
+Box08:BoxChange:Box06:BoxExecute
+NumberOfControlPoints:0
+APP_END
diff --git a/bbtk_creaVtk_PKG/bbs/appli/exampleDelaunay3D.bbs b/bbtk_creaVtk_PKG/bbs/appli/exampleDelaunay3D.bbs
new file mode 100644 (file)
index 0000000..d488f3f
--- /dev/null
@@ -0,0 +1,82 @@
+# ----------------------------------
+# - BBTKGEditor v 1.4 BBS BlackBox Script
+# - /home/davila/Creatis/C8/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/exampleDelaunay3D.bbs
+# ----------------------------------
+
+# BBTK GEditor Script
+# ----------------------
+
+include std
+include itkvtk
+include creaVtk
+include creaMaracasVisu
+include vtk
+include wx
+include std
+
+author "Author ??"
+description "Description ??"
+category "<VOID>"
+
+new creaVtk:Delaunay3D Box03
+  set Box03.Alpha "0"
+  set Box03.Tolerance "0"
+
+new creaMaracasVisu:ViewerNV Box04
+
+new vtk:LoadHola Box05
+
+new vtk:PolyDataToActor Box06
+  set Box06.Opacity "0.4"
+
+new wx:LayoutSplit Box07
+  set Box07.Orientation "H"
+
+new wx:CommandButton Box08
+  set Box08.Label "Run"
+
+new creaMaracasVisu:DrawAxe3D Box10
+  set Box10.Colour "0 0 1"
+
+new std:ConcatStrings Box11
+  set Box11.In1 "10 10 10 30 50"
+
+new std:ConcatStrings Box12
+  set Box12.In1 "80 20 10 30 50"
+
+new std:ConcatStrings Box13
+  set Box13.In1 "40 60 30 30 50"
+
+
+connect Box05.Out Box04.In
+
+connect Box03.Out Box06.In
+
+connect Box04.Widget Box07.Widget2
+
+connect Box08.Widget Box07.Widget1
+
+connect Box04.Renderer1 Box06.Renderer
+
+connect Box11.Out Box10.lstPointX
+
+connect Box12.Out Box10.lstPointY
+
+connect Box13.Out Box10.lstPointZ
+
+connect Box11.Out Box03.LstPointsX
+
+connect Box12.Out Box03.LstPointsY
+
+connect Box13.Out Box03.LstPointsZ
+
+connect Box04.Renderer1 Box10.Renderer
+
+connect Box08.BoxChange Box10.BoxExecute
+
+connect Box08.BoxChange Box06.BoxExecute
+
+
+
+# Complex input ports
+exec Box07
index 7b829381c33b63a36e65fef8c6295da1c8865648..26c68edd3535e7f561f38c514644b519a3124c55 100644 (file)
@@ -1,6 +1,6 @@
 # ----------------------------------
 # - BBTKGEditor v 1.4 BBG BlackBox Diagram file
 # ----------------------------------
 # - BBTKGEditor v 1.4 BBG BlackBox Diagram file
-# - /tmpEED/creaTools2/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/exampleVectorsExploration_Widget.bbg
+# - /home/davila/Creatis/C8/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/exampleVectorsExploration_Widget.bbg
 # ----------------------------------
 
 APP_START
 # ----------------------------------
 
 APP_START
index c999230c40fba3ce2d3e933bf14bad7d9005440b..f8724a1b1ed17f424b2f3c54023329b0576edf51 100644 (file)
@@ -1,6 +1,6 @@
 # ----------------------------------
 # - BBTKGEditor v 1.4 BBS BlackBox Script
 # ----------------------------------
 # - BBTKGEditor v 1.4 BBS BlackBox Script
-# - /tmpEED/creaTools2/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/exampleVectorsExploration_Widget.bbs
+# - /home/davila/Creatis/C8/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/exampleVectorsExploration_Widget.bbs
 # ----------------------------------
 
 # BBTK GEditor Script
 # ----------------------------------
 
 # BBTK GEditor Script
diff --git a/bbtk_creaVtk_PKG/bbs/appli/example_BoxWidget_ClipPolydata.bbg b/bbtk_creaVtk_PKG/bbs/appli/example_BoxWidget_ClipPolydata.bbg
new file mode 100644 (file)
index 0000000..f68c584
--- /dev/null
@@ -0,0 +1,104 @@
+# ----------------------------------
+# - BBTKGEditor v 1.4 BBG BlackBox Diagram file
+# - /home/davila/Creatis/C8/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/example_BoxWidget_ClipPolydata.bbg
+# ----------------------------------
+
+APP_START
+CATEGORY:<VOID>
+DESCRIPTION:Description ??
+AUTHOR:Author ??
+COMPLEXBOX:FALSE
+COMPLEXINPUTS:0
+BOXES:8
+BOX
+vtk:LoadHola:Box00
+ISEXEC:FALSE
+-13.850748:68.721067:-900.000000
+21.699252:58.721067:-900.000000
+FIN_BOX
+BOX
+creaMaracasVisu:ViewerNV:Box01
+ISEXEC:FALSE
+-19.979284:45.126531:-900.000000
+43.740716:35.126531:-900.000000
+FIN_BOX
+BOX
+creaVtk:BoxWidget:Box02
+ISEXEC:FALSE
+-38.184214:4.379120:-900.000000
+-1.509214:-5.620880:-900.000000
+FIN_BOX
+BOX
+wx:LayoutSplit:Box03
+ISEXEC:TRUE
+11.848896:-90.117759:-900.000000
+50.928896:-100.117759:-900.000000
+PORT
+Orientation:"H"
+FIN_BOX
+BOX
+wx:CommandButton:Box04
+ISEXEC:FALSE
+-85.584870:31.037853:-900.000000
+-42.809870:21.037853:-900.000000
+PORT
+Label:"Refresh"
+FIN_BOX
+BOX
+vtk:SphereSource:Box05
+ISEXEC:FALSE
+26.306848:5.863047:-900.000000
+66.131848:-4.136953:-900.000000
+PORT
+CenterX:"50"
+PORT
+CenterY:"50"
+PORT
+CenterZ:"50"
+PORT
+Radius:"20"
+FIN_BOX
+BOX
+creaVtk:ClipPolyData:Box06
+ISEXEC:FALSE
+-49.518922:-34.972985:-900.000000
+-10.693922:-44.972985:-900.000000
+FIN_BOX
+BOX
+vtk:PolyDataToActor:Box07
+ISEXEC:FALSE
+-52.136645:-67.077861:-900.000000
+-9.736645:-77.077861:-900.000000
+FIN_BOX
+CONNECTIONS:10
+CONNECTION
+Box00:Out:Box01:In
+NumberOfControlPoints:0
+CONNECTION
+Box01:Renderer1:Box02:Renderer
+NumberOfControlPoints:0
+CONNECTION
+Box01:Widget:Box03:Widget2
+NumberOfControlPoints:0
+CONNECTION
+Box04:Widget:Box03:Widget1
+NumberOfControlPoints:0
+CONNECTION
+Box04:BoxChange:Box02:BoxExecute
+NumberOfControlPoints:0
+CONNECTION
+Box05:Out:Box06:In
+NumberOfControlPoints:0
+CONNECTION
+Box02:ImplicitFunction:Box06:ImplicitFunction
+NumberOfControlPoints:0
+CONNECTION
+Box06:Out:Box07:In
+NumberOfControlPoints:0
+CONNECTION
+Box01:Renderer1:Box07:Renderer
+NumberOfControlPoints:0
+CONNECTION
+Box06:BoxChange:Box07:BoxExecute
+NumberOfControlPoints:0
+APP_END
diff --git a/bbtk_creaVtk_PKG/bbs/appli/example_BoxWidget_ClipPolydata.bbs b/bbtk_creaVtk_PKG/bbs/appli/example_BoxWidget_ClipPolydata.bbs
new file mode 100644 (file)
index 0000000..f57eb60
--- /dev/null
@@ -0,0 +1,66 @@
+# ----------------------------------
+# - BBTKGEditor v 1.4 BBS BlackBox Script
+# - /home/davila/Creatis/C8/creatools_source/creaVtk/bbtk_creaVtk_PKG/bbs/appli/example_BoxWidget_ClipPolydata.bbs
+# ----------------------------------
+
+# BBTK GEditor Script
+# ----------------------
+
+include std
+include itkvtk
+include vtk
+include creaMaracasVisu
+include creaVtk
+include wx
+
+author "Author ??"
+description "Description ??"
+category "<VOID>"
+
+new vtk:LoadHola Box00
+
+new creaMaracasVisu:ViewerNV Box01
+
+new creaVtk:BoxWidget Box02
+
+new wx:LayoutSplit Box03
+  set Box03.Orientation "H"
+
+new wx:CommandButton Box04
+  set Box04.Label "Refresh"
+
+new vtk:SphereSource Box05
+  set Box05.CenterX "50"
+  set Box05.CenterY "50"
+  set Box05.CenterZ "50"
+  set Box05.Radius "20"
+
+new creaVtk:ClipPolyData Box06
+
+new vtk:PolyDataToActor Box07
+
+
+connect Box00.Out Box01.In
+
+connect Box01.Renderer1 Box02.Renderer
+
+connect Box01.Widget Box03.Widget2
+
+connect Box04.Widget Box03.Widget1
+
+connect Box04.BoxChange Box02.BoxExecute
+
+connect Box05.Out Box06.In
+
+connect Box02.ImplicitFunction Box06.ImplicitFunction
+
+connect Box06.Out Box07.In
+
+connect Box01.Renderer1 Box07.Renderer
+
+connect Box06.BoxChange Box07.BoxExecute
+
+
+
+# Complex input ports
+exec Box03
index 60c5cf01b7826c05114dbf72f0274454d346387f..8d14a6d06315b1e4bb193774ed31edfe226aed90 100644 (file)
@@ -10,18 +10,18 @@ AUTHOR:Author ??
 COMPLEXBOX:TRUE
 COMPLEXBOXNAME:VolumeVectorVisu_Interface
 PACKAGENAME:creaVtk
 COMPLEXBOX:TRUE
 COMPLEXBOXNAME:VolumeVectorVisu_Interface
 PACKAGENAME:creaVtk
-COMPLEXOUTPUTS:7
+COMPLEXOUTPUTS:8
 COMPLEX_PORT
 boxChange
 -52.001184:-76.860241:-900.000000
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 widget
 COMPLEX_PORT
 boxChange
 -52.001184:-76.860241:-900.000000
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 widget
-23.090200:-76.457462:-900.000000
+-9.312745:-74.872535:-900.000000
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 AcitiveVector
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 AcitiveVector
-81.877237:-75.736772:-900.000000
+38.732011:-76.441184:-900.000000
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 Opacity
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 Opacity
@@ -33,25 +33,31 @@ ScaleFactor
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 Ratio
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 Ratio
--91.228359:-50.583288:-900.000000
+59.515777:-74.885497:-900.000000
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 form
 213.982353:-74.143348:-900.000000
 FIN_COMPLEX_PORT
 FIN_COMPLEX_PORT
 COMPLEX_PORT
 form
 213.982353:-74.143348:-900.000000
 FIN_COMPLEX_PORT
+COMPLEX_PORT
+ActiveBoxWidget
+-77.397252:-75.636223:-900.000000
+FIN_COMPLEX_PORT
 COMPLEXINPUTS:0
 COMPLEXINPUTS:0
-BOXES:11
+BOXES:13
 BOX
 wx:Slider:Box00
 ISEXEC:FALSE
 BOX
 wx:Slider:Box00
 ISEXEC:FALSE
--50.906743:62.037478:-900.000000
-0.493257:52.037478:-900.000000
+37.599484:64.834591:-900.000000
+88.999484:54.834591:-900.000000
+PORT
+ChangeResolution:"true"
 PORT
 In:"30"
 PORT
 Label:"true"
 PORT
 PORT
 In:"30"
 PORT
 Label:"true"
 PORT
-Max:"1000"
+Max:"50"
 PORT
 Min:"1"
 PORT
 PORT
 Min:"1"
 PORT
@@ -62,8 +68,8 @@ FIN_BOX
 BOX
 std:MultipleInputs:Box02
 ISEXEC:FALSE
 BOX
 std:MultipleInputs:Box02
 ISEXEC:FALSE
--32.311244:15.574268:-900.000000
-7.388756:5.574268:-900.000000
+-26.820557:-11.948057:-900.000000
+12.879443:-21.948057:-900.000000
 PORT
 BoxProcessMode:"Reactive"
 FIN_BOX
 PORT
 BoxProcessMode:"Reactive"
 FIN_BOX
@@ -78,14 +84,14 @@ FIN_BOX
 BOX
 wx:LayoutTab:Box04
 ISEXEC:FALSE
 BOX
 wx:LayoutTab:Box04
 ISEXEC:FALSE
-6.581707:-36.142745:-900.000000
-64.141707:-46.142745:-900.000000
+-12.965722:-34.557818:-900.000000
+44.594278:-44.557818:-900.000000
 FIN_BOX
 BOX
 wx:CheckBox:Box05
 ISEXEC:FALSE
 FIN_BOX
 BOX
 wx:CheckBox:Box05
 ISEXEC:FALSE
-40.200879:64.505359:-900.000000
-76.525879:54.505359:-900.000000
+-1.305237:90.909899:-900.000000
+35.019763:80.909899:-900.000000
 PORT
 ReactiveOnKeystroke:"true"
 PORT
 PORT
 ReactiveOnKeystroke:"true"
 PORT
@@ -163,14 +169,31 @@ ISEXEC:FALSE
 PORT
 Orientation:"H"
 FIN_BOX
 PORT
 Orientation:"H"
 FIN_BOX
-CONNECTIONS:22
+BOX
+wx:LayoutLine:Box12
+ISEXEC:FALSE
+-45.693959:64.121913:-900.000000
+11.866041:54.121913:-900.000000
+PORT
+Orientation:"H"
+PORT
+WinTitle:"Volume flield"
+FIN_BOX
+BOX
+wx:CheckBox:Box13
+ISEXEC:FALSE
+-82.036132:89.953646:-900.000000
+-45.711132:79.953646:-900.000000
+PORT
+ReactiveOnKeystroke:"true"
+PORT
+Title:"Active Box"
+FIN_BOX
+CONNECTIONS:26
 CONNECTION
 Box00:BoxChange:Box02:In1
 NumberOfControlPoints:0
 CONNECTION
 CONNECTION
 Box00:BoxChange:Box02:In1
 NumberOfControlPoints:0
 CONNECTION
-Box00:Widget:Box03:Widget2
-NumberOfControlPoints:0
-CONNECTION
 Box02:BoxChange:boxChange:boxChange
 NumberOfControlPoints:0
 CONNECTION
 Box02:BoxChange:boxChange:boxChange
 NumberOfControlPoints:0
 CONNECTION
@@ -180,15 +203,9 @@ CONNECTION
 Box04:Widget:widget:widget
 NumberOfControlPoints:0
 CONNECTION
 Box04:Widget:widget:widget
 NumberOfControlPoints:0
 CONNECTION
-Box05:Widget:Box03:Widget3
-NumberOfControlPoints:0
-CONNECTION
 Box05:BoxChange:Box02:In3
 NumberOfControlPoints:0
 CONNECTION
 Box05:BoxChange:Box02:In3
 NumberOfControlPoints:0
 CONNECTION
-Box06:Widget:Box03:Widget4
-NumberOfControlPoints:0
-CONNECTION
 Box06:Out:Box07:In1
 NumberOfControlPoints:0
 CONNECTION
 Box06:Out:Box07:In1
 NumberOfControlPoints:0
 CONNECTION
@@ -225,9 +242,30 @@ CONNECTION
 Box10:Widget:Box11:Widget2
 NumberOfControlPoints:0
 CONNECTION
 Box10:Widget:Box11:Widget2
 NumberOfControlPoints:0
 CONNECTION
-Box11:Widget:Box03:Widget5
+Box10:BoxChange:Box02:In6
 NumberOfControlPoints:0
 CONNECTION
 NumberOfControlPoints:0
 CONNECTION
-Box10:BoxChange:Box02:In6
+Box11:Widget:Box03:Widget7
+NumberOfControlPoints:0
+CONNECTION
+Box06:Widget:Box03:Widget6
+NumberOfControlPoints:0
+CONNECTION
+Box00:Widget:Box03:Widget2
+NumberOfControlPoints:0
+CONNECTION
+Box12:Widget:Box03:Widget1
+NumberOfControlPoints:0
+CONNECTION
+Box05:Widget:Box12:Widget2
+NumberOfControlPoints:0
+CONNECTION
+Box13:Widget:Box12:Widget1
+NumberOfControlPoints:0
+CONNECTION
+Box13:BoxChange:Box02:In2
+NumberOfControlPoints:0
+CONNECTION
+Box13:Out:ActiveBoxWidget:ActiveBoxWidget
 NumberOfControlPoints:0
 APP_END
 NumberOfControlPoints:0
 APP_END
index eee2eb6522734b52114b9d1e661d87b3bf36ae32..1540addf3ca644cb5aa7b4989a512d89345a4bcc 100644 (file)
@@ -16,9 +16,10 @@ description "Description ??"
 category "<VOID>"
 
 new wx:Slider Box00
 category "<VOID>"
 
 new wx:Slider Box00
+  set Box00.ChangeResolution "true"
   set Box00.In "30"
   set Box00.Label "true"
   set Box00.In "30"
   set Box00.Label "true"
-  set Box00.Max "1000"
+  set Box00.Max "50"
   set Box00.Min "1"
   set Box00.ReactiveOnTrack "true"
   set Box00.Title "Ratio"
   set Box00.Min "1"
   set Box00.ReactiveOnTrack "true"
   set Box00.Title "Ratio"
@@ -65,13 +66,18 @@ new wx:ComboBox Box10
 new wx:LayoutLine Box11
   set Box11.Orientation "H"
 
 new wx:LayoutLine Box11
   set Box11.Orientation "H"
 
+new wx:LayoutLine Box12
+  set Box12.Orientation "H"
+  set Box12.WinTitle "Volume flield"
+
+new wx:CheckBox Box13
+  set Box13.ReactiveOnKeystroke "true"
+  set Box13.Title "Active Box"
+
 
 connect Box00.BoxChange Box02.In1
 
 connect Box00.BoxChange Box02.In1
-connect Box00.Widget Box03.Widget2
 connect Box03.Widget Box04.Widget1
 connect Box03.Widget Box04.Widget1
-connect Box05.Widget Box03.Widget3
 connect Box05.BoxChange Box02.In3
 connect Box05.BoxChange Box02.In3
-connect Box06.Widget Box03.Widget4
 connect Box06.Out Box07.In1
 connect Box08.Out Box09.In1
 connect Box06.BoxChange Box02.In4
 connect Box06.Out Box07.In1
 connect Box08.Out Box09.In1
 connect Box06.BoxChange Box02.In4
@@ -79,8 +85,14 @@ connect Box08.BoxChange Box02.In5
 connect Box02.BoxChange Box04.BoxExecute
 connect Box08.Widget Box11.Widget1
 connect Box10.Widget Box11.Widget2
 connect Box02.BoxChange Box04.BoxExecute
 connect Box08.Widget Box11.Widget1
 connect Box10.Widget Box11.Widget2
-connect Box11.Widget Box03.Widget5
 connect Box10.BoxChange Box02.In6
 connect Box10.BoxChange Box02.In6
+connect Box11.Widget Box03.Widget7
+connect Box06.Widget Box03.Widget6
+connect Box00.Widget Box03.Widget2
+connect Box12.Widget Box03.Widget1
+connect Box05.Widget Box12.Widget2
+connect Box13.Widget Box12.Widget1
+connect Box13.BoxChange Box02.In2
 
 # Complex input ports
 
 
 # Complex input ports
 
@@ -92,6 +104,7 @@ output Opacity Box07.Out " "
 output ScaleFactor Box09.Out " "
 output Ratio Box00.Out " "
 output form Box10.Out " "
 output ScaleFactor Box09.Out " "
 output Ratio Box00.Out " "
 output form Box10.Out " "
+output ActiveBoxWidget Box13.Out " "
 
 
 endefine
 
 
 endefine
index 3efda850865de6707fc71ccedc464d144771f448..c432ae204c2fc3877c854be9d7221dab4b31d501 100644 (file)
@@ -28,18 +28,18 @@ COMPLEX_PORT
 renderer
 -102.399936:88.482773:-900.000000
 FIN_COMPLEX_PORT
 renderer
 -102.399936:88.482773:-900.000000
 FIN_COMPLEX_PORT
-BOXES:7
+BOXES:9
 BOX
 creaVtk:VectorsVisu:Box00
 ISEXEC:FALSE
 BOX
 creaVtk:VectorsVisu:Box00
 ISEXEC:FALSE
--7.861447:-26.759942:-900.000000
-29.763553:-36.759942:-900.000000
+-17.900845:-12.462724:-900.000000
+19.724155:-22.462724:-900.000000
 FIN_BOX
 BOX
 vtk:MaskPoint:Box07
 ISEXEC:FALSE
 FIN_BOX
 BOX
 vtk:MaskPoint:Box07
 ISEXEC:FALSE
--62.558622:31.954645:-900.000000
--26.408622:21.954645:-900.000000
+-16.666033:44.572575:-900.000000
+19.483967:34.572575:-900.000000
 FIN_BOX
 BOX
 creaVtk:VolumeVectorVisu_Interface:Box02
 FIN_BOX
 BOX
 creaVtk:VolumeVectorVisu_Interface:Box02
@@ -50,22 +50,16 @@ FIN_BOX
 BOX
 vtk:UpdateRender:Box03
 ISEXEC:FALSE
 BOX
 vtk:UpdateRender:Box03
 ISEXEC:FALSE
-6.265844:-73.238158:-900.000000
-46.590844:-83.238158:-900.000000
+-4.196952:-69.750559:-900.000000
+36.128048:-79.750559:-900.000000
 PORT
 Active:"true"
 FIN_BOX
 BOX
 std:MagicBox:Box04
 ISEXEC:FALSE
 PORT
 Active:"true"
 FIN_BOX
 BOX
 std:MagicBox:Box04
 ISEXEC:FALSE
--119.133549:39.464518:-900.000000
--83.058549:29.464518:-900.000000
-FIN_BOX
-BOX
-vtk:ProbeFilter:Box05
-ISEXEC:FALSE
--22.745519:24.352539:-900.000000
-13.654481:14.352539:-900.000000
+-112.198808:64.555673:-900.000000
+-76.123808:54.555673:-900.000000
 FIN_BOX
 BOX
 std:MagicBox:Box06
 FIN_BOX
 BOX
 std:MagicBox:Box06
@@ -73,7 +67,29 @@ ISEXEC:FALSE
 -30.904238:69.101876:-900.000000
 5.170762:59.101876:-900.000000
 FIN_BOX
 -30.904238:69.101876:-900.000000
 5.170762:59.101876:-900.000000
 FIN_BOX
-CONNECTIONS:18
+BOX
+creaVtk:ClipPolyData:Box08
+ISEXEC:FALSE
+-15.381729:23.829285:-900.000000
+23.443271:13.829285:-900.000000
+PORT
+Inside:"true"
+PORT
+Type:"1"
+FIN_BOX
+BOX
+creaVtk:BoxWidget:Box09
+ISEXEC:FALSE
+-65.717137:44.169788:-900.000000
+-29.042137:34.169788:-900.000000
+FIN_BOX
+BOX
+std:MultipleInputs:Box10
+ISEXEC:FALSE
+-64.370903:22.659312:-900.000000
+-24.670903:12.659312:-900.000000
+FIN_BOX
+CONNECTIONS:22
 CONNECTION
 Box02:AcitiveVector:Box00:Active
 NumberOfControlPoints:0
 CONNECTION
 Box02:AcitiveVector:Box00:Active
 NumberOfControlPoints:0
@@ -93,12 +109,6 @@ CONNECTION
 Box02:widget:Widget:Widget
 NumberOfControlPoints:0
 CONNECTION
 Box02:widget:Widget:Widget
 NumberOfControlPoints:0
 CONNECTION
-Box02:boxChange:Box07:BoxExecute
-NumberOfControlPoints:0
-CONNECTION
-Box02:boxChange:Box00:BoxExecute
-NumberOfControlPoints:0
-CONNECTION
 renderer:renderer:Box04:In
 NumberOfControlPoints:0
 CONNECTION
 renderer:renderer:Box04:In
 NumberOfControlPoints:0
 CONNECTION
@@ -120,12 +130,30 @@ CONNECTION
 Box06:Out:Box07:In
 NumberOfControlPoints:0
 CONNECTION
 Box06:Out:Box07:In
 NumberOfControlPoints:0
 CONNECTION
-Box06:Out:Box05:Input
+Box07:Out:Box08:In
+NumberOfControlPoints:0
+CONNECTION
+Box08:Out:Box00:In
+NumberOfControlPoints:0
+CONNECTION
+Box09:ImplicitFunction:Box08:ImplicitFunction
+NumberOfControlPoints:0
+CONNECTION
+Box04:Out:Box09:Renderer
+NumberOfControlPoints:0
+CONNECTION
+Box02:boxChange:Box10:In2
+NumberOfControlPoints:0
+CONNECTION
+Box09:BoxChange:Box10:In1
+NumberOfControlPoints:0
+CONNECTION
+Box10:BoxChange:Box00:BoxExecute
 NumberOfControlPoints:0
 CONNECTION
 NumberOfControlPoints:0
 CONNECTION
-Box06:Out:Box05:Source
+Box02:ActiveBoxWidget:Box09:Active
 NumberOfControlPoints:0
 CONNECTION
 NumberOfControlPoints:0
 CONNECTION
-Box05:Out:Box00:In
+Box02:AcitiveVector:Box07:Active
 NumberOfControlPoints:0
 APP_END
 NumberOfControlPoints:0
 APP_END
index c50b4228660fe6d3484a22b75b39e5f89fd2a19c..3fb51ac800c691073d97bc627b9bffc1cbea0bbc 100644 (file)
@@ -27,25 +27,35 @@ new vtk:UpdateRender Box03
 
 new std:MagicBox Box04
 
 
 new std:MagicBox Box04
 
-new vtk:ProbeFilter Box05
-
 new std:MagicBox Box06
 
 new std:MagicBox Box06
 
+new creaVtk:ClipPolyData Box08
+  set Box08.Inside "true"
+  set Box08.Type "1"
+
+new creaVtk:BoxWidget Box09
+
+new std:MultipleInputs Box10
+
 
 connect Box02.AcitiveVector Box00.Active
 connect Box02.Opacity Box00.Opacity
 connect Box02.Ratio Box07.Ratio
 connect Box02.ScaleFactor Box00.ScaleFactor
 
 connect Box02.AcitiveVector Box00.Active
 connect Box02.Opacity Box00.Opacity
 connect Box02.Ratio Box07.Ratio
 connect Box02.ScaleFactor Box00.ScaleFactor
-connect Box02.boxChange Box07.BoxExecute
-connect Box02.boxChange Box00.BoxExecute
 connect Box04.Out Box00.Renderer
 connect Box04.Out Box03.Renderer
 connect Box02.boxChange Box03.BoxExecute
 connect Box02.form Box00.TypeForm
 connect Box06.Out Box07.In
 connect Box04.Out Box00.Renderer
 connect Box04.Out Box03.Renderer
 connect Box02.boxChange Box03.BoxExecute
 connect Box02.form Box00.TypeForm
 connect Box06.Out Box07.In
-connect Box06.Out Box05.Input
-connect Box06.Out Box05.Source
-connect Box05.Out Box00.In
+connect Box07.Out Box08.In
+connect Box08.Out Box00.In
+connect Box09.ImplicitFunction Box08.ImplicitFunction
+connect Box04.Out Box09.Renderer
+connect Box02.boxChange Box10.In2
+connect Box09.BoxChange Box10.In1
+connect Box10.BoxChange Box00.BoxExecute
+connect Box02.ActiveBoxWidget Box09.Active
+connect Box02.AcitiveVector Box07.Active
 
 # Complex input ports
 input renderer Box04.In " "
 
 # Complex input ports
 input renderer Box04.In " "
diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkBooleanOperationPolyDataFilter.cxx b/bbtk_creaVtk_PKG/src/bbcreaVtkBooleanOperationPolyDataFilter.cxx
new file mode 100644 (file)
index 0000000..9017e5b
--- /dev/null
@@ -0,0 +1,123 @@
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+#include "bbcreaVtkBooleanOperationPolyDataFilter.h"
+#include "bbcreaVtkPackage.h"
+
+#include "vtkBooleanOperationPolyDataFilter.h"
+#include "vtkCleanPolyData.h"
+#include "vtkTriangleFilter.h"
+
+namespace bbcreaVtk
+{
+
+BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaVtk,BooleanOperationPolyDataFilter)
+BBTK_BLACK_BOX_IMPLEMENTATION(BooleanOperationPolyDataFilter,bbtk::AtomicBlackBox);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void BooleanOperationPolyDataFilter::Process()
+{
+
+// THE MAIN PROCESSING METHOD BODY
+//   Here we simply set the input 'In' value to the output 'Out'
+//   And print out the output value
+// INPUT/OUTPUT ACCESSORS ARE OF THE FORM :
+//    void bbSet{Input|Output}NAME(const TYPE&)
+//    const TYPE& bbGet{Input|Output}NAME() const 
+//    Where :
+//    * NAME is the name of the input/output
+//      (the one provided in the attribute 'name' of the tag 'input')
+//    * TYPE is the C++ type of the input/output
+//      (the one provided in the attribute 'type' of the tag 'input')
+//    bbSetOutputOut( bbGetInputIn() );
+//    std::cout << "Output value = " <<bbGetOutputOut() << std::endl;
+  
+       if ((bbGetInputIn1()!=NULL)  && (bbGetInputIn2()!=NULL) )
+       {
+
+printf("EED Warnning BooleanOperationPolyDataFilter::Process  Put this code at the end of CreateMesh.. or create 2 new boxes\n");
+printf("EED Warnning BooleanOperationPolyDataFilter::Process  Put this code at the end of CreateMesh.. or create 2 new boxes\n");
+printf("EED Warnning BooleanOperationPolyDataFilter::Process  Put this code at the end of CreateMesh.. or create 2 new boxes\n");
+printf("EED Warnning BooleanOperationPolyDataFilter::Process  Put this code at the end of CreateMesh.. or create 2 new boxes\n");
+printf("EED Warnning BooleanOperationPolyDataFilter::Process  Put this code at the end of CreateMesh.. or create 2 new boxes\n");
+printf("EED Warnning BooleanOperationPolyDataFilter::Process  Put this code at the end of CreateMesh.. or create 2 new boxes\n");
+printf("EED Warnning BooleanOperationPolyDataFilter::Process  Put this code at the end of CreateMesh.. or create 2 new boxes\n");
+printf("EED Warnning BooleanOperationPolyDataFilter::Process  Put this code at the end of CreateMesh.. or create 2 new boxes\n");
+               vtkCleanPolyData *clean1 = vtkCleanPolyData::New();
+               vtkCleanPolyData *clean2 = vtkCleanPolyData::New();
+               clean1->SetInputData( bbGetInputIn1() );
+               clean2->SetInputData( bbGetInputIn2() );
+               clean1->Update();
+               clean2->Update();
+               vtkTriangleFilter *triangle1 = vtkTriangleFilter::New();
+               vtkTriangleFilter *triangle2 = vtkTriangleFilter::New();
+               triangle1->SetInputData( clean1->GetOutput() );
+               triangle2->SetInputData( clean2->GetOutput() );
+               triangle1->Update();
+               triangle2->Update();
+
+               vtkBooleanOperationPolyDataFilter *booleanOperation = vtkBooleanOperationPolyDataFilter::New();
+               booleanOperation->SetInputData(0, triangle1->GetOutput() );
+               booleanOperation->SetInputData(1, triangle2->GetOutput() );
+
+               if (bbGetInputOperation()==0 )
+               {
+                       booleanOperation->SetOperationToUnion();
+               }
+               if (bbGetInputOperation()==1 )
+               {
+                       booleanOperation->SetOperationToIntersection();
+               }
+               if (bbGetInputOperation()==2 )
+               {
+                       booleanOperation->SetOperationToDifference();  
+               }
+               booleanOperation->Update();
+               bbSetOutputOut( booleanOperation->GetOutput() );
+       } else {
+               printf("EED Warnning!  BooleanOperationPolyDataFilter::Process   vtkPolyData In1 or In2  is EMPTY\n");
+       } // if In1 In2 != NULL
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void BooleanOperationPolyDataFilter::bbUserSetDefaultValues()
+{
+
+//  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
+//    Here we initialize the input 'In' to 0
+   bbSetInputIn1(NULL);
+   bbSetInputIn2(NULL);
+   bbSetInputOperation(0);
+  
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void BooleanOperationPolyDataFilter::bbUserInitializeProcessing()
+{
+
+//  THE INITIALIZATION METHOD BODY :
+//    Here does nothing 
+//    but this is where you should allocate the internal/output pointers 
+//    if any 
+
+  
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void BooleanOperationPolyDataFilter::bbUserFinalizeProcessing()
+{
+
+//  THE FINALIZATION METHOD BODY :
+//    Here does nothing 
+//    but this is where you should desallocate the internal/output pointers 
+//    if any
+  
+}
+}
+// EO namespace bbcreaVtk
+
+
diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkBooleanOperationPolyDataFilter.h b/bbtk_creaVtk_PKG/src/bbcreaVtkBooleanOperationPolyDataFilter.h
new file mode 100644 (file)
index 0000000..f604191
--- /dev/null
@@ -0,0 +1,55 @@
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+#ifndef __bbcreaVtkBooleanOperationPolyDataFilter_h_INCLUDED__
+#define __bbcreaVtkBooleanOperationPolyDataFilter_h_INCLUDED__
+
+#include "bbcreaVtk_EXPORT.h"
+#include "bbtkAtomicBlackBox.h"
+#include "iostream"
+
+#include "vtkPolyData.h"
+
+namespace bbcreaVtk
+{
+
+class bbcreaVtk_EXPORT BooleanOperationPolyDataFilter
+ : 
+   public bbtk::AtomicBlackBox
+{
+  BBTK_BLACK_BOX_INTERFACE(BooleanOperationPolyDataFilter,bbtk::AtomicBlackBox);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+  BBTK_DECLARE_INPUT(In1,vtkPolyData*);
+  BBTK_DECLARE_INPUT(In2,vtkPolyData*);
+  BBTK_DECLARE_INPUT(Operation,int);
+  BBTK_DECLARE_OUTPUT(Out,vtkPolyData*);
+  BBTK_PROCESS(Process);
+  void Process();
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+};
+
+BBTK_BEGIN_DESCRIBE_BLACK_BOX(BooleanOperationPolyDataFilter,bbtk::AtomicBlackBox);
+  BBTK_NAME("BooleanOperationPolyDataFilter");
+  BBTK_AUTHOR("InfoDev");
+  BBTK_DESCRIPTION("No Description.");
+  BBTK_CATEGORY("empty");
+
+  BBTK_INPUT(BooleanOperationPolyDataFilter,In1,"vtkPolyData",vtkPolyData*,"");
+  BBTK_INPUT(BooleanOperationPolyDataFilter,In2,"vtkPolyData",vtkPolyData*,"");
+  BBTK_INPUT(BooleanOperationPolyDataFilter,Operation,"(defalut 0) 0:Union 1:Intersection 2:Difference",int,"");
+
+  BBTK_OUTPUT(BooleanOperationPolyDataFilter,Out,"vtkPolyData",vtkPolyData*,"");
+
+BBTK_END_DESCRIBE_BLACK_BOX(BooleanOperationPolyDataFilter);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+}
+// EO namespace bbcreaVtk
+
+#endif // __bbcreaVtkBooleanOperationPolyDataFilter_h_INCLUDED__
+
diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkBoxWidget.cxx b/bbtk_creaVtk_PKG/src/bbcreaVtkBoxWidget.cxx
new file mode 100644 (file)
index 0000000..d16cf2a
--- /dev/null
@@ -0,0 +1,132 @@
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+#include "bbcreaVtkBoxWidget.h"
+#include "bbcreaVtkPackage.h"
+
+#include "vtkRenderWindow.h"
+#include "vtkCommand.h"
+
+
+namespace bbcreaVtk
+{
+
+BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaVtk,BoxWidget)
+BBTK_BLACK_BOX_IMPLEMENTATION(BoxWidget,bbtk::AtomicBlackBox);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+
+class bbBoxWidgetCallback : public vtkCommand
+  {
+   public:
+        BoxWidget *_box;
+     static bbBoxWidgetCallback *New()
+     { 
+               return new bbBoxWidgetCallback; 
+       }
+       void SetBox( BoxWidget* box )
+       {
+               _box=box;
+       }
+
+       void Execute(vtkObject *caller, unsigned long, void*) override
+       {
+       vtkBoxWidget *vtkwidget = reinterpret_cast<vtkBoxWidget*>(caller);
+               vtkwidget->GetPlanes( _box->planes );
+               _box->bbSignalOutputModification(std::string("ImplicitFunction"));
+       }
+ };
+
+
+
+void BoxWidget::Process()
+{
+
+// THE MAIN PROCESSING METHOD BODY
+//   Here we simply set the input 'In' value to the output 'Out'
+//   And print out the output value
+// INPUT/OUTPUT ACCESSORS ARE OF THE FORM :
+//    void bbSet{Input|Output}NAME(const TYPE&)
+//    const TYPE& bbGet{Input|Output}NAME() const 
+//    Where :
+//    * NAME is the name of the input/output
+//      (the one provided in the attribute 'name' of the tag 'input')
+//    * TYPE is the C++ type of the input/output
+//      (the one provided in the attribute 'type' of the tag 'input')
+//    bbSetOutputOut( bbGetInputIn() );
+//    std::cout << "Output value = " <<bbGetOutputOut() << std::endl;
+  
+
+       if ( bbGetInputRenderer()!=NULL )
+       {
+               if (firsttime==true)
+               {       
+                       firsttime       = false;
+                       boxWidget       = vtkBoxWidget::New();
+                       planes          = vtkPlanes::New();
+                       boxWidget->SetInteractor(  bbGetInputRenderer()->GetRenderWindow()->GetInteractor() );
+                       boxWidget->SetPlaceFactor(1.25);
+                       boxWidget->PlaceWidget(0,500,0,500,0,500);
+                       boxWidget->GetPlanes( planes );
+               }
+        
+       //  boxWidget->SetProp3D(coneActor);
+               bbBoxWidgetCallback *callback = bbBoxWidgetCallback::New();
+               callback->SetBox( this );
+               boxWidget->AddObserver(vtkCommand::InteractionEvent, callback);
+
+               if (bbGetInputActive()==true)
+               {
+                       boxWidget->On();
+               }  else {
+                       boxWidget->Off();
+               } // if Active
+               bbSetOutputImplicitFunction( planes );
+       } else {
+               printf("EED Warnning! BoxWidget::Process vtkRenderer not set.\n");
+       }// vtkRenderer != NULL
+
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void BoxWidget::bbUserSetDefaultValues()
+{
+
+//  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
+//    Here we initialize the input 'In' to 0
+       firsttime=true;
+    bbSetInputRenderer(NULL);
+    bbSetInputActive( false );
+
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void BoxWidget::bbUserInitializeProcessing()
+{
+
+//  THE INITIALIZATION METHOD BODY :
+//    Here does nothing 
+//    but this is where you should allocate the internal/output pointers 
+//    if any 
+
+  
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void BoxWidget::bbUserFinalizeProcessing()
+{
+
+//  THE FINALIZATION METHOD BODY :
+//    Here does nothing 
+//    but this is where you should desallocate the internal/output pointers 
+//    if any
+  
+}
+}
+// EO namespace bbcreaVtk
+
+
diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkBoxWidget.h b/bbtk_creaVtk_PKG/src/bbcreaVtkBoxWidget.h
new file mode 100644 (file)
index 0000000..ca223de
--- /dev/null
@@ -0,0 +1,60 @@
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+#ifndef __bbcreaVtkBoxWidget_h_INCLUDED__
+#define __bbcreaVtkBoxWidget_h_INCLUDED__
+
+#include "bbcreaVtk_EXPORT.h"
+#include "bbtkAtomicBlackBox.h"
+#include "iostream"
+
+#include "vtkBoxWidget.h"
+#include "vtkRenderer.h"
+#include "vtkImplicitFunction.h"
+#include "vtkPlanes.h"
+
+namespace bbcreaVtk
+{
+
+class bbcreaVtk_EXPORT BoxWidget
+ : 
+   public bbtk::AtomicBlackBox
+{
+  BBTK_BLACK_BOX_INTERFACE(BoxWidget,bbtk::AtomicBlackBox);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+  BBTK_DECLARE_INPUT( Active , bool );
+  BBTK_DECLARE_INPUT( Renderer , vtkRenderer* );
+  BBTK_DECLARE_OUTPUT( ImplicitFunction , vtkImplicitFunction* );
+  BBTK_PROCESS(Process);
+  void Process();
+
+       bool                    firsttime;
+       vtkBoxWidget    *boxWidget;
+       vtkPlanes               *planes;
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+};
+
+BBTK_BEGIN_DESCRIBE_BLACK_BOX(BoxWidget,bbtk::AtomicBlackBox);
+  BBTK_NAME("BoxWidget");
+  BBTK_AUTHOR("InfoDev");
+  BBTK_DESCRIPTION("No Description.");
+  BBTK_CATEGORY("empty");
+
+  BBTK_INPUT(BoxWidget,Active,"(default false)  true/false",bool,"");
+  BBTK_INPUT(BoxWidget,Renderer,"vtkRenderer",vtkRenderer*,"");
+
+  BBTK_OUTPUT(BoxWidget,ImplicitFunction,"vtkImplicitFunction",vtkImplicitFunction*,"");
+
+BBTK_END_DESCRIBE_BLACK_BOX(BoxWidget);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+}
+// EO namespace bbcreaVtk
+
+#endif // __bbcreaVtkBoxWidget_h_INCLUDED__
+
diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkClipPolyData.cxx b/bbtk_creaVtk_PKG/src/bbcreaVtkClipPolyData.cxx
new file mode 100644 (file)
index 0000000..428518e
--- /dev/null
@@ -0,0 +1,115 @@
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+#include "bbcreaVtkClipPolyData.h"
+#include "bbcreaVtkPackage.h"
+
+#include "vtkExtractPoints.h"
+#include "vtkClipPolyData.h"
+
+namespace bbcreaVtk
+{
+
+BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaVtk,ClipPolyData)
+BBTK_BLACK_BOX_IMPLEMENTATION(ClipPolyData,bbtk::AtomicBlackBox);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void ClipPolyData::Process()
+{
+
+// THE MAIN PROCESSING METHOD BODY
+//   Here we simply set the input 'In' value to the output 'Out'
+//   And print out the output value
+// INPUT/OUTPUT ACCESSORS ARE OF THE FORM :
+//    void bbSet{Input|Output}NAME(const TYPE&)
+//    const TYPE& bbGet{Input|Output}NAME() const 
+//    Where :
+//    * NAME is the name of the input/output
+//      (the one provided in the attribute 'name' of the tag 'input')
+//    * TYPE is the C++ type of the input/output
+//      (the one provided in the attribute 'type' of the tag 'input')
+
+//    bbSetOutputOut( bbGetInputIn() );
+//    std::cout << "Output value = " <<bbGetOutputOut() << std::endl;
+  
+       if ((bbGetInputIn()!=NULL)  && (bbGetInputImplicitFunction()!=NULL) )
+       {
+               if (bbGetInputType()==0)
+               {
+                       vtkClipPolyData *clip = vtkClipPolyData::New();
+                       clip->SetInputData( bbGetInputIn() );
+                       clip->SetClipFunction( bbGetInputImplicitFunction() );
+                       clip->GenerateClipScalarsOn();
+                       clip->GenerateClippedOutputOff();
+                       if (bbGetInputInside()==true)
+                       {
+                               clip->InsideOutOn();
+                       } else {
+                               clip->InsideOutOff();
+                       }
+                       clip->Update();
+                       bbSetOutputOut( clip->GetOutput() );
+               } // Type 0
+               if (bbGetInputType()==1)
+               {
+                       vtkExtractPoints *clip = vtkExtractPoints::New();
+                       clip->SetInputData( bbGetInputIn() );
+                       clip->SetImplicitFunction( bbGetInputImplicitFunction() );
+                       if (bbGetInputInside()==true)
+                       {
+                               clip->ExtractInsideOn();
+                       } else {
+                               clip->ExtractInsideOff();
+                       }
+                       clip->Update();
+                       bbSetOutputOut( clip->GetOutput() );
+               } // type 1
+       } else {
+               printf("EED Warnning!  ClipPolyData::Process  In or ImplicitFunction is EMPTY\n");
+       } // if In ImplicitFunction != NULL
+
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void ClipPolyData::bbUserSetDefaultValues()
+{
+
+//  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
+//    Here we initialize the input 'In' to 0
+   bbSetInputIn( NULL );
+   bbSetInputType( 0 );
+   bbSetInputInside( true );
+   bbSetInputImplicitFunction( NULL );
+  
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void ClipPolyData::bbUserInitializeProcessing()
+{
+
+//  THE INITIALIZATION METHOD BODY :
+//    Here does nothing 
+//    but this is where you should allocate the internal/output pointers 
+//    if any 
+
+  
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void ClipPolyData::bbUserFinalizeProcessing()
+{
+
+//  THE FINALIZATION METHOD BODY :
+//    Here does nothing 
+//    but this is where you should desallocate the internal/output pointers 
+//    if any
+  
+}
+}
+// EO namespace bbcreaVtk
+
+
diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkClipPolyData.h b/bbtk_creaVtk_PKG/src/bbcreaVtkClipPolyData.h
new file mode 100644 (file)
index 0000000..156b84f
--- /dev/null
@@ -0,0 +1,58 @@
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+#ifndef __bbcreaVtkClipPolyData_h_INCLUDED__
+#define __bbcreaVtkClipPolyData_h_INCLUDED__
+
+#include "bbcreaVtk_EXPORT.h"
+#include "bbtkAtomicBlackBox.h"
+#include "iostream"
+
+#include "vtkPolyData.h"
+#include "vtkImplicitFunction.h"
+
+namespace bbcreaVtk
+{
+
+class bbcreaVtk_EXPORT ClipPolyData
+ : 
+   public bbtk::AtomicBlackBox
+{
+  BBTK_BLACK_BOX_INTERFACE(ClipPolyData,bbtk::AtomicBlackBox);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+  BBTK_DECLARE_INPUT(Type,int);
+  BBTK_DECLARE_INPUT(In,vtkPolyData*);
+  BBTK_DECLARE_INPUT(Inside,bool);
+  BBTK_DECLARE_INPUT(ImplicitFunction,vtkImplicitFunction*);
+  BBTK_DECLARE_OUTPUT(Out,vtkPolyData*);
+  BBTK_PROCESS(Process);
+  void Process();
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+};
+
+BBTK_BEGIN_DESCRIBE_BLACK_BOX(ClipPolyData,bbtk::AtomicBlackBox);
+  BBTK_NAME("ClipPolyData");
+  BBTK_AUTHOR("InfoDev");
+  BBTK_DESCRIPTION("No Description.");
+  BBTK_CATEGORY("empty");
+
+  BBTK_INPUT(ClipPolyData,Type,"(default 0) 0:surface vtkClipPolydata   1:points vtkExtractPoints",int,"");
+  BBTK_INPUT(ClipPolyData,In,"vtkPolyData",vtkPolyData*,"");
+  BBTK_INPUT(ClipPolyData,Inside,"(defalut true)  Inside true, Outside false",bool,"");
+  BBTK_INPUT(ClipPolyData,ImplicitFunction,"vtkImplicitFunction",vtkImplicitFunction*,"");
+
+  BBTK_OUTPUT(ClipPolyData,Out,"vtkPolyData",vtkPolyData*,"");
+
+BBTK_END_DESCRIBE_BLACK_BOX(ClipPolyData);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+}
+// EO namespace bbcreaVtk
+
+#endif // __bbcreaVtkClipPolyData_h_INCLUDED__
+
index 02a26e735024e8cb59469b211495efa0b3327b36..baeb1f1a8b90a9620a17d78c3b15abb860f88c72 100644 (file)
@@ -48,8 +48,6 @@ void Delaunay3D::Process()
 //    bbSetOutputOut( bbGetInputIn() );
 //    std::cout << "Output value = " <<bbGetOutputOut() << std::endl;
   
 //    bbSetOutputOut( bbGetInputIn() );
 //    std::cout << "Output value = " <<bbGetOutputOut() << std::endl;
   
-
-printf("EED Delaunay3D::Process Start\n");
        std::vector<double> lstX=bbGetInputLstPointsX();
        std::vector<double> lstY=bbGetInputLstPointsY();
        std::vector<double> lstZ=bbGetInputLstPointsZ();
        std::vector<double> lstX=bbGetInputLstPointsX();
        std::vector<double> lstY=bbGetInputLstPointsY();
        std::vector<double> lstZ=bbGetInputLstPointsZ();
@@ -72,150 +70,15 @@ printf("EED Delaunay3D::Process Start\n");
                delaunay->SetAlpha( bbGetInputAlpha() ); //0.2
                delaunay->BoundingTriangulationOff();
                delaunay->Update();
                delaunay->SetAlpha( bbGetInputAlpha() ); //0.2
                delaunay->BoundingTriangulationOff();
                delaunay->Update();
-
                vtkGeometryFilter *geometry = vtkGeometryFilter::New();
                geometry->SetInputData( delaunay->GetOutput() );
                geometry->Update();
                vtkGeometryFilter *geometry = vtkGeometryFilter::New();
                geometry->SetInputData( delaunay->GetOutput() );
                geometry->Update();
-
                bbSetOutputOut( geometry->GetOutput() );
                bbSetOutputOut( geometry->GetOutput() );
-
-
-/* vtkExtractSurface
-  double bounds[6];
-  inputpolydata->GetBounds(bounds);
-  double range[3];
-  for (int i = 0; i < 3; ++i)
-  {
-    range[i] = bounds[2*i + 1] - bounds[2*i];
-  }
-
-  int sampleSize = inputpolydata->GetNumberOfPoints() * .00005;
-  if (sampleSize < 10)
-  {
-    sampleSize = 10;
-  }
-  std::cout << "Sample size is: " << sampleSize << std::endl;
-  // Do we need to estimate normals?
-  vtkSmartPointer<vtkSignedDistance> distance =
-    vtkSmartPointer<vtkSignedDistance>::New();
-  if (inputpolydata->GetPointData()->GetNormals())
-  {
-    std::cout << "Using normals from input file" << std::endl;
-    distance->SetInputData (inputpolydata);
-  }  else{
-       std::cout << "Estimating normals using PCANormalEstimation" << std::endl;
-    vtkSmartPointer<vtkPCANormalEstimation> normals =
-      vtkSmartPointer<vtkPCANormalEstimation>::New();
-    normals->SetInputData (inputpolydata);
-    normals->SetSampleSize(sampleSize);
-    normals->SetNormalOrientationToGraphTraversal();
-    normals->FlipNormalsOn();
-    distance->SetInputConnection (normals->GetOutputPort());
-  }
-  std::cout << "Range: "
-            << range[0] << ", "
-            << range[1] << ", "
-            << range[2] << std::endl;
-  int dimension = 256;
-  double radius;
-
-  radius = std::max(std::max(range[0], range[1]), range[2])
-    / static_cast<double>(dimension) * 4; // ~4 voxels
-
-//EED
- radius = bbGetInputTolerance();
-
-
-  std::cout << "Radius: " << radius << std::endl;
-
-  distance->SetRadius(radius);
-  distance->SetDimensions(dimension, dimension, dimension);
-  distance->SetBounds(
-    bounds[0] - range[0] * .1,
-    bounds[1] + range[0] * .1,
-    bounds[2] - range[1] * .1,
-    bounds[3] + range[1] * .1,
-    bounds[4] - range[2] * .1,
-    bounds[5] + range[2] * .1);
-
-
-               vtkExtractSurface *surface = vtkExtractSurface::New();
-               surface->SetInputConnection (distance->GetOutputPort());
-               surface->SetRadius(radius * .99 ); // 
-               surface->Update();
-               bbSetOutputOut( surface->GetOutput() );
-*/
-
-/*vtkPoissonReconstruction
-                vtkPolyData *polyData=inputpolydata;
-
-                vtkSmartPointer<vtkPoissonReconstruction> surface =
-                       vtkSmartPointer<vtkPoissonReconstruction>::New();
-                 surface->SetDepth(12);
-
-                 int sampleSize = polyData->GetNumberOfPoints() * .00005;
-                 if (sampleSize < 10)
-                 {
-                       sampleSize = 10;
-                 }
-                 if (polyData->GetPointData()->GetNormals())
-                 {
-                       std::cout << "Using normals from input file" << std::endl;
-                       surface->SetInputData (polyData);
-                 }
-                 else
-                 {
-                       std::cout << "Estimating normals using PCANormalEstimation" << std::endl;
-                       vtkSmartPointer<vtkPCANormalEstimation> normals =
-                         vtkSmartPointer<vtkPCANormalEstimation>::New();
-                       normals->SetInputData (polyData);
-                       normals->SetSampleSize(sampleSize);
-                       normals->SetNormalOrientationToGraphTraversal();
-                       normals->FlipNormalsOff();
-                       surface->SetInputConnection(normals->GetOutputPort());
-                 }
-
-               surface->Update();      
-               bbSetOutputOut( surface->GetOutput() );
-
-*/
-
-
-
-/*SurfaceReconstructionFilter
-
-               vtkPolyData *polydata=inputpolydata;
-
-               // Construct the surface and create isosurface.   
-                 vtkSmartPointer<vtkSurfaceReconstructionFilter> surf =
-                       vtkSmartPointer<vtkSurfaceReconstructionFilter>::New();
-                 surf->SetInputData(polydata);
-
-                 vtkSmartPointer<vtkContourFilter> cf =
-                       vtkSmartPointer<vtkContourFilter>::New();
-                 cf->SetInputConnection(surf->GetOutputPort());
-                 cf->SetValue(0, 0.0);
-
-                 // Sometimes the contouring algorithm can create a volume whose gradient
-                 // vector and ordering of polygon (using the right hand rule) are
-                 // inconsistent. vtkReverseSense cures this problem.
-                 vtkSmartPointer<vtkReverseSense> reverse =
-                       vtkSmartPointer<vtkReverseSense>::New();
-                 reverse->SetInputConnection(cf->GetOutputPort());
-                 reverse->ReverseCellsOn();
-                 reverse->ReverseNormalsOn();
-
-                 bbSetOutputOut( reverse->GetOutput() );
-
-*/
-
        } else {
                printf("Warnning! Delaunay3D::Process:  list of points empty. \n");
        } // if lstX.size
        } else {
                printf("Warnning! Delaunay3D::Process:  list of points empty. \n");
        } // if lstX.size
-
-printf("EED Delaunay3D::Process End\n");
-
 }
 }
+
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
 //===== 
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
 //===== 
@@ -224,10 +87,8 @@ void Delaunay3D::bbUserSetDefaultValues()
 
 //  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
 //    Here we initialize the input 'In' to 0
 
 //  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
 //    Here we initialize the input 'In' to 0
-   bbSetInputTolerance( 0.01 );
-   bbSetInputAlpha( 0.2 );
-   bbSetInputShrinkFactor( 0.9 );
-  
+   bbSetInputTolerance( 0 );
+   bbSetInputAlpha( 0 );
 }
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
 }
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
index 7f8f47261f5cfb7c3e255dc0638a168b0d801846..9761ddb0cf0b10764c8e1c1fb39b890a688e1d83 100644 (file)
@@ -24,7 +24,6 @@ class bbcreaVtk_EXPORT Delaunay3D
 
   BBTK_DECLARE_INPUT(Tolerance,double);
   BBTK_DECLARE_INPUT(Alpha,double);
 
   BBTK_DECLARE_INPUT(Tolerance,double);
   BBTK_DECLARE_INPUT(Alpha,double);
-  BBTK_DECLARE_INPUT(ShrinkFactor,double);
   BBTK_DECLARE_INPUT(LstPointsX,std::vector<double>);
   BBTK_DECLARE_INPUT(LstPointsY,std::vector<double>);
   BBTK_DECLARE_INPUT(LstPointsZ,std::vector<double>);
   BBTK_DECLARE_INPUT(LstPointsX,std::vector<double>);
   BBTK_DECLARE_INPUT(LstPointsY,std::vector<double>);
   BBTK_DECLARE_INPUT(LstPointsZ,std::vector<double>);
@@ -42,9 +41,8 @@ BBTK_BEGIN_DESCRIBE_BLACK_BOX(Delaunay3D,bbtk::AtomicBlackBox);
   BBTK_DESCRIPTION("No Description.");
   BBTK_CATEGORY("empty");
 
   BBTK_DESCRIPTION("No Description.");
   BBTK_CATEGORY("empty");
 
-  BBTK_INPUT(Delaunay3D,Tolerance,"Delaunay Tolerance",double,"");
-  BBTK_INPUT(Delaunay3D,Alpha,"Delaunay Alpha",double,"");
-  BBTK_INPUT(Delaunay3D,ShrinkFactor,"Shrink Factor",double,"");
+  BBTK_INPUT(Delaunay3D,Tolerance,"(default 0)  Delaunay Tolerance",double,"");
+  BBTK_INPUT(Delaunay3D,Alpha,"(default 0)  Delaunay Alpha",double,"");
   BBTK_INPUT(Delaunay3D,LstPointsX,"Vector of points X",std::vector<double>,"");
   BBTK_INPUT(Delaunay3D,LstPointsY,"Vector of points Y",std::vector<double>,"");
   BBTK_INPUT(Delaunay3D,LstPointsZ,"Vector of points Z",std::vector<double>,"");
   BBTK_INPUT(Delaunay3D,LstPointsX,"Vector of points X",std::vector<double>,"");
   BBTK_INPUT(Delaunay3D,LstPointsY,"Vector of points Y",std::vector<double>,"");
   BBTK_INPUT(Delaunay3D,LstPointsZ,"Vector of points Z",std::vector<double>,"");
index 61a059ffe9f6f8f714bd11b5411829be6a592b98..4dfa23e4a35beba4e6a463116da91cbf2d598b83 100644 (file)
@@ -49,6 +49,7 @@ BBTK_BEGIN_DESCRIBE_BLACK_BOX(VectorsVisu,bbtk::AtomicBlackBox);
   BBTK_AUTHOR("ED at InfoDev Creatis");
   BBTK_DESCRIPTION("No Description.");
   BBTK_CATEGORY("empty");
   BBTK_AUTHOR("ED at InfoDev Creatis");
   BBTK_DESCRIPTION("No Description.");
   BBTK_CATEGORY("empty");
+
   BBTK_INPUT(VectorsVisu,Active,"Active (false default)",bool,"");
   BBTK_INPUT(VectorsVisu,In,"(needed) vtkDataObject. (Example vtkDataObject<-vtkDataSet<-vtkPointSet<-vtkPolyData (parrent class) )",vtkDataObject*,"");
   BBTK_INPUT(VectorsVisu,ScaleFactor,"Scale factor (500 default)",double,"");
   BBTK_INPUT(VectorsVisu,Active,"Active (false default)",bool,"");
   BBTK_INPUT(VectorsVisu,In,"(needed) vtkDataObject. (Example vtkDataObject<-vtkDataSet<-vtkPointSet<-vtkPolyData (parrent class) )",vtkDataObject*,"");
   BBTK_INPUT(VectorsVisu,ScaleFactor,"Scale factor (500 default)",double,"");
@@ -57,7 +58,9 @@ BBTK_BEGIN_DESCRIBE_BLACK_BOX(VectorsVisu,bbtk::AtomicBlackBox);
   BBTK_INPUT(VectorsVisu,TypeForm,"0 Line, 1 Arrow   (default 0)",int,"");
   BBTK_INPUT(VectorsVisu,Orientation,"(default -1) -1=3D, 0=yz, 1=xz, 2=xy",int,"");
   BBTK_INPUT(VectorsVisu,ExternalLut,"Lookuptable",vtkScalarsToColors*,"");
   BBTK_INPUT(VectorsVisu,TypeForm,"0 Line, 1 Arrow   (default 0)",int,"");
   BBTK_INPUT(VectorsVisu,Orientation,"(default -1) -1=3D, 0=yz, 1=xz, 2=xy",int,"");
   BBTK_INPUT(VectorsVisu,ExternalLut,"Lookuptable",vtkScalarsToColors*,"");
+
   BBTK_OUTPUT(VectorsVisu,Out,"vtkProp3D of an vtkActor",vtkProp3D*,"");
   BBTK_OUTPUT(VectorsVisu,Out,"vtkProp3D of an vtkActor",vtkProp3D*,"");
+
 BBTK_END_DESCRIBE_BLACK_BOX(VectorsVisu);
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
 BBTK_END_DESCRIBE_BLACK_BOX(VectorsVisu);
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkVoxelGrid.cxx b/bbtk_creaVtk_PKG/src/bbcreaVtkVoxelGrid.cxx
new file mode 100644 (file)
index 0000000..676bde6
--- /dev/null
@@ -0,0 +1,91 @@
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+#include "bbcreaVtkVoxelGrid.h"
+#include "bbcreaVtkPackage.h"
+
+#include "vtkVoxelGrid.h"
+
+namespace bbcreaVtk
+{
+
+BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaVtk,VoxelGrid)
+BBTK_BLACK_BOX_IMPLEMENTATION(VoxelGrid,bbtk::AtomicBlackBox);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void VoxelGrid::Process()
+{
+
+// THE MAIN PROCESSING METHOD BODY
+//   Here we simply set the input 'In' value to the output 'Out'
+//   And print out the output value
+// INPUT/OUTPUT ACCESSORS ARE OF THE FORM :
+//    void bbSet{Input|Output}NAME(const TYPE&)
+//    const TYPE& bbGet{Input|Output}NAME() const 
+//    Where :
+//    * NAME is the name of the input/output
+//      (the one provided in the attribute 'name' of the tag 'input')
+//    * TYPE is the C++ type of the input/output
+//      (the one provided in the attribute 'type' of the tag 'input')
+//    bbSetOutputOut( bbGetInputIn() );
+//    std::cout << "Output value = " <<bbGetOutputOut() << std::endl;
+  
+  
+       vtkVoxelGrid *voxelgrid = vtkVoxelGrid::New();
+       voxelgrid->SetInputData( bbGetInputImage() );
+       voxelgrid->SetConfigurationStyleToManual();
+       voxelgrid->SetDivisions( bbGetInputDivisionsX(),bbGetInputDivisionsY(),bbGetInputDivisionsZ() ); 
+
+//     voxelgrid->SetConfigurationStyleToLeafSize();
+//     voxelgrid->SetLeafSize( bbGetInputDivisionsX(),bbGetInputDivisionsY(),bbGetInputDivisionsZ() ); 
+
+//     voxelgrid->SetConfigurationStyleToAutomatic();
+//     voxelgrid->SetNumberOfPointsPerBin( bbGetInputDivisionsX()  ); 
+       voxelgrid->Update();
+
+       bbSetOutputOut( voxelgrid->GetOutput() );
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void VoxelGrid::bbUserSetDefaultValues()
+{
+
+//  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
+//    Here we initialize the input 'In' to 0
+   bbSetInputImage(NULL);
+   bbSetInputDivisionsX(100);
+   bbSetInputDivisionsY(100);
+   bbSetInputDivisionsZ(100);
+  
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void VoxelGrid::bbUserInitializeProcessing()
+{
+
+//  THE INITIALIZATION METHOD BODY :
+//    Here does nothing 
+//    but this is where you should allocate the internal/output pointers 
+//    if any 
+
+  
+}
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+void VoxelGrid::bbUserFinalizeProcessing()
+{
+
+//  THE FINALIZATION METHOD BODY :
+//    Here does nothing 
+//    but this is where you should desallocate the internal/output pointers 
+//    if any
+  
+}
+}
+// EO namespace bbcreaVtk
+
+
diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkVoxelGrid.h b/bbtk_creaVtk_PKG/src/bbcreaVtkVoxelGrid.h
new file mode 100644 (file)
index 0000000..654516c
--- /dev/null
@@ -0,0 +1,59 @@
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+#ifndef __bbcreaVtkVoxelGrid_h_INCLUDED__
+#define __bbcreaVtkVoxelGrid_h_INCLUDED__
+
+#include "bbcreaVtk_EXPORT.h"
+#include "bbtkAtomicBlackBox.h"
+#include "iostream"
+
+
+#include "vtkDataObject.h"
+#include "vtkPolyData.h"
+
+
+namespace bbcreaVtk
+{
+
+class bbcreaVtk_EXPORT VoxelGrid
+ : 
+   public bbtk::AtomicBlackBox
+{
+  BBTK_BLACK_BOX_INTERFACE(VoxelGrid,bbtk::AtomicBlackBox);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+  BBTK_DECLARE_INPUT(Image,vtkDataObject*);
+  BBTK_DECLARE_INPUT(DivisionsX,int);
+  BBTK_DECLARE_INPUT(DivisionsY,int);
+  BBTK_DECLARE_INPUT(DivisionsZ,int);
+  BBTK_DECLARE_OUTPUT(Out,vtkPolyData*);
+  BBTK_PROCESS(Process);
+  void Process();
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+};
+
+BBTK_BEGIN_DESCRIBE_BLACK_BOX(VoxelGrid,bbtk::AtomicBlackBox);
+  BBTK_NAME("VoxelGrid");
+  BBTK_AUTHOR("InfoDev");
+  BBTK_DESCRIPTION("No Description.");
+  BBTK_CATEGORY("empty");
+
+  BBTK_INPUT(VoxelGrid,Image,"Input image",vtkDataObject*,"");
+  BBTK_INPUT(VoxelGrid,DivisionsX,"X divisions",int,"");
+  BBTK_INPUT(VoxelGrid,DivisionsY,"Y divisions",int,"");
+  BBTK_INPUT(VoxelGrid,DivisionsZ,"Z divisions",int,"");
+
+  BBTK_OUTPUT(VoxelGrid,Out,"Output vtkPolydata",vtkPolyData*,"");
+BBTK_END_DESCRIBE_BLACK_BOX(VoxelGrid);
+//===== 
+// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
+//===== 
+}
+// EO namespace bbcreaVtk
+
+#endif // __bbcreaVtkVoxelGrid_h_INCLUDED__
+
index c591a5f9beceaf7413a0cab2d0f1242756f1865d..9c53d977ce873a530fcb5abf4e2f8794beef7d9d 100644 (file)
@@ -283,7 +283,6 @@ void vtkVectorsTensorsVisuBase::Process()    // virtual
 //------------------------------------------------------------------------------
 void vtkVectorsTensorsVisuBase::VisibilityActor()
 {
 //------------------------------------------------------------------------------
 void vtkVectorsTensorsVisuBase::VisibilityActor()
 {
-
        if ( (_active==true) && (_actorAdded==false) ){
                if (GetRenderer()!=NULL)
                {
        if ( (_active==true) && (_actorAdded==false) ){
                if (GetRenderer()!=NULL)
                {
index c29dace97f7f3ddbccc12d64f61bc51ba4331aa1..f88c650456a4fc8b3356af713ba27cc1f4d46206 100644 (file)
@@ -65,167 +65,173 @@ vtkVectorsVisu::~vtkVectorsVisu()
 //------------------------------------------------------------------------------
 void vtkVectorsVisu::Process()
 {
 //------------------------------------------------------------------------------
 void vtkVectorsVisu::Process()
 {
+       if (_vtkglyph==NULL) 
+       {
+               if (GetOrientation()==-1) 
+               {
+                       _vtkglyph = vtkGlyph3D::New(); 
+               } // _orientation                       
+               if ((GetOrientation()>=0) && (GetOrientation()<=2))
+               {
+                       _vtkglyph = vtkGlyph3D::New(); 
+//                             _vtkglyph = vtkGlyph2D::New(); 
+               } // _orientation                       
+       } // _vtkglyph NULL
+
+
      if(_active==true)
      {
      if(_active==true)
      {
-               if (_vtkglyph==NULL) 
+
+               if (GetDataObject()!=NULL) 
                {
                {
-                       if (GetOrientation()==-1) 
+       #if VTK_MAJOR_VERSION <= 5
+                    _vtkglyph->SetInput( GetDataObject() );  
+       #else
+                    _vtkglyph->SetInputData( GetDataObject() );  
+       #endif
+                               if(GetTypeForm()==1)                                                            // source Arrow
+                               {
+       #if VTK_MAJOR_VERSION <= 5
+                               _vtkglyph->SetSource( _vtkarrowsource->GetOutput() );
+       #else
+                                       _vtkarrowsource->Update();
+                               _vtkglyph->SetSourceData( _vtkarrowsource->GetOutput() );
+       #endif
+                               } else {                                                                                                // source Line
+       #if VTK_MAJOR_VERSION <= 5
+                                       _vtkglyph->SetSource( _vtklinesource->GetOutput() );    
+       #else
+                                       _vtklinesource->Update();
+                                       _vtkglyph->SetSourceData( _vtklinesource->GetOutput() );        
+       #endif
+                               }
+                    _vtkglyph->SetScaleModeToScaleByVector();
+
+
+                       if (_externalLut==NULL)
                        {
                        {
-                               _vtkglyph = vtkGlyph3D::New(); 
-                       } // _orientation                       
-                       if ((GetOrientation()>=0) && (GetOrientation()<=2))
+                       _vtkglyph->SetColorModeToColorByVector();   
+                       } else {
+                               _vtkglyph->SetColorModeToColorByScalar();   
+                       } // if _externalLut
+
+                    _vtkglyph->SetScaleFactor( GetScaleFactor() );
+                       _vtkglyph->Update();
+
+       #if VTK_MAJOR_VERSION <= 5
+                    _pdm->SetInput( _vtkglyph->GetOutput());
+       #else
+                    _pdm->SetInputData( _vtkglyph->GetOutput());
+       #endif
+
+       vtkPointData    *data   = _vtkglyph->GetOutput()->GetPointData();
+       //printf("EED -------------------------------------------\n");
+       //_vtkglyph->GetOutput()->Print(std::cout);
+       //printf("EED -------------------------------------------\n");
+       //data->Print(std::cout);
+       //int i,sizeDa = data->GetNumberOfArrays();
+       //for (i=0;i<sizeDa;i++)
+       //{
+       //      data->GetArray(i)->Print(std::cout);
+       //}
+
+                       if (_externalLut==NULL)
                        {
                        {
-                               _vtkglyph = vtkGlyph3D::New(); 
-//                             _vtkglyph = vtkGlyph2D::New(); 
-                       } // _orientation                       
-               } // _vtkglyph NULL
-
-
-#if VTK_MAJOR_VERSION <= 5
-         _vtkglyph->SetInput( GetDataObject() );  
-#else
-         _vtkglyph->SetInputData( GetDataObject() );  
-#endif
-                       if(GetTypeForm()==1)                                                            // source Arrow
+                               _pdm->ScalarVisibilityOn();
+                               _pdm->SetColorModeToMapScalars();
+                       //      _pdm->SetColorModeToDefault();
+                               // _pdm->SetColorModeToDirectScalars();  // NOT compile
+                               _pdm->SetScalarModeToUsePointFieldData();
+                       //      _pdm->ImmediateModeRenderingOn();   // obsolete
+                               _LutEED->SetVectorModeToComponent();
+                               //_LutEED->SetVectorModeToRGBColors();
+                               //_LutEED->SetVectorModeToMagnitud();
+                       //         _pdm->SetScalarModeToUsePointFieldData();
+                    _pdm->SetLookupTable( _LutEED );
+                    _pdm->SelectColorArray( "GlyphVector" );
+                       } else {
+                               data->SetActiveScalars("angle");
+
+                               _pdm->ScalarVisibilityOn(); 
+                               double scalarRange[2];
+                               scalarRange[0]=0;
+                               scalarRange[1]=40;
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
+                               _pdm->SetScalarRange(scalarRange);
+                               _pdm->SetColorModeToMapScalars();
+       //                      _pdm->SetColorModeToDefault();
+       //                       _pdm->SetColorModeToDirectScalars();  // NOT compile
+       //                      _pdm->SetScalarModeToUsePointFieldData();
+                               _pdm->ImmediateModeRenderingOn();   // obsolete
+                            _pdm->SetLookupTable( _externalLut );
+                            _pdm->SelectColorArray( "angle" );
+                       }  // if _externalLut
+
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
+       printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
+
+       /*
+       _vtkglyph->Update();
+       vtkPointData *pointdata=_vtkglyph->GetOutput()->GetPointData();
+       int i,size=pointdata->GetNumberOfArrays();
+       for (i=0;i<size;i++)
+       {
+               vtkDataArray *array=pointdata->GetArray(i);
+               printf(" vtkVectorsVisu::Process array name %d:<%s>  size:%d\n", i, array->GetName(), array->GetSize() );
+       }
+       */
+
+
+       //       vSliceMapperVec->SetLookupTable( vGreenToRedLut );
+       //       vSliceMapperVec->SetColorModeToMapScalars();
+
+       #if VTK_MAJOR_VERSION <= 5
+                       // ..
+       #else
+                    _pdm->Update();
+       #endif
+
+                       // Orientation -1 3D     OK
+        
+                       // Orientation 0 2D yz 
+                       if (GetOrientation()==0) 
                        {
                        {
-#if VTK_MAJOR_VERSION <= 5
-                       _vtkglyph->SetSource( _vtkarrowsource->GetOutput() );
-#else
-                               _vtkarrowsource->Update();
-                       _vtkglyph->SetSourceData( _vtkarrowsource->GetOutput() );
-#endif
-                       } else {                                                                                                // source Line
-#if VTK_MAJOR_VERSION <= 5
-                               _vtkglyph->SetSource( _vtklinesource->GetOutput() );    
-#else
-                               _vtklinesource->Update();
-                               _vtkglyph->SetSourceData( _vtklinesource->GetOutput() );        
-#endif
+                               _trans->Identity();
+                               _trans->Translate(900,0,0);
+                               _actor->SetUserTransform(_trans);
+                       }
+                       // Orientation 1 2D xz  
+                       if (GetOrientation()==1) 
+                       {
+                               _trans->Identity();
+                               _trans->Translate(0,-900,0);
+                               _actor->SetUserTransform(_trans);
+                       }
+                       // Orientation 2 2D xy  
+                       if (GetOrientation()==2) 
+                       {
+                               _trans->Identity();
+                               _trans->Translate(0,0,-900);
+                               _actor->SetUserTransform(_trans);
                        }
                        }
-         _vtkglyph->SetScaleModeToScaleByVector();
-
 
 
-               if (_externalLut==NULL)
-               {
-               _vtkglyph->SetColorModeToColorByVector();   
+                   _actor->SetMapper( _pdm );
+                   _actor->GetProperty()->SetOpacity( GetOpacity() );
                } else {
                } else {
-                       _vtkglyph->SetColorModeToColorByScalar();   
-               } // if _externalLut
+                       printf("EED Warnning! vtkVectorsVisu::Process   GetDataObject()  is EMPTY\n");
+               }// if GetDataObject()!=NULL
 
 
-         _vtkglyph->SetScaleFactor( GetScaleFactor() );
+    } else {
+               _vtkglyph->SetInputData( NULL );  
                _vtkglyph->Update();
                _vtkglyph->Update();
-
-#if VTK_MAJOR_VERSION <= 5
-         _pdm->SetInput( _vtkglyph->GetOutput());
-#else
-         _pdm->SetInputData( _vtkglyph->GetOutput());
-#endif
-
-vtkPointData   *data   = _vtkglyph->GetOutput()->GetPointData();
-//printf("EED -------------------------------------------\n");
-//_vtkglyph->GetOutput()->Print(std::cout);
-//printf("EED -------------------------------------------\n");
-//data->Print(std::cout);
-//int i,sizeDa = data->GetNumberOfArrays();
-//for (i=0;i<sizeDa;i++)
-//{
-//     data->GetArray(i)->Print(std::cout);
-//}
-
-
-               if (_externalLut==NULL)
-               {
-                       _pdm->ScalarVisibilityOn();
-                       _pdm->SetColorModeToMapScalars();
-               //      _pdm->SetColorModeToDefault();
-                       // _pdm->SetColorModeToDirectScalars();  // NOT compile
-                       _pdm->SetScalarModeToUsePointFieldData();
-               //      _pdm->ImmediateModeRenderingOn();   // obsolete
-                       _LutEED->SetVectorModeToComponent();
-                       //_LutEED->SetVectorModeToRGBColors();
-                       //_LutEED->SetVectorModeToMagnitud();
-               //         _pdm->SetScalarModeToUsePointFieldData();
-         _pdm->SetLookupTable( _LutEED );
-         _pdm->SelectColorArray( "GlyphVector" );
-               } else {
-                       data->SetActiveScalars("angle");
-
-                       _pdm->ScalarVisibilityOn(); 
-                       double scalarRange[2];
-                       scalarRange[0]=0;
-                       scalarRange[1]=40;
-printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
-printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
-printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
-printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
-printf("EED warnnning  .....  vtkVectorsVisu::Process   clean scalar Range ......\n");
-                   _pdm->SetScalarRange(scalarRange);
-                       _pdm->SetColorModeToMapScalars();
-//                     _pdm->SetColorModeToDefault();
-//                      _pdm->SetColorModeToDirectScalars();  // NOT compile
-//                     _pdm->SetScalarModeToUsePointFieldData();
-                       _pdm->ImmediateModeRenderingOn();   // obsolete
-                _pdm->SetLookupTable( _externalLut );
-                _pdm->SelectColorArray( "angle" );
-               }  // if _externalLut
-
-printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
-printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
-printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
-printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
-printf("EED warnnning  .....  vtkVectorsVisu::Process   Clean angle ......\n");
-
-/*
-_vtkglyph->Update();
-vtkPointData *pointdata=_vtkglyph->GetOutput()->GetPointData();
-int i,size=pointdata->GetNumberOfArrays();
-for (i=0;i<size;i++)
-{
-       vtkDataArray *array=pointdata->GetArray(i);
-       printf(" vtkVectorsVisu::Process array name %d:<%s>  size:%d\n", i, array->GetName(), array->GetSize() );
-}
-*/
-
-
-//       vSliceMapperVec->SetLookupTable( vGreenToRedLut );
-//       vSliceMapperVec->SetColorModeToMapScalars();
-
-#if VTK_MAJOR_VERSION <= 5
-               // ..
-#else
-         _pdm->Update();
-#endif
-
-               // Orientation -1 3D     OK
-               // Orientation 0 2D yz 
-               if (GetOrientation()==0) 
-               {
-                       _trans->Identity();
-                       _trans->Translate(900,0,0);
-                       _actor->SetUserTransform(_trans);
-               }
-
-
-               // Orientation 1 2D xz  
-               if (GetOrientation()==1) 
-               {
-                       _trans->Identity();
-                       _trans->Translate(0,-900,0);
-                       _actor->SetUserTransform(_trans);
-               }
-
-               // Orientation 2 2D xy  
-               if (GetOrientation()==2) 
-               {
-                       _trans->Identity();
-                       _trans->Translate(0,0,-900);
-                       _actor->SetUserTransform(_trans);
-               }
-
-         _actor->SetMapper( _pdm );
-         _actor->GetProperty()->SetOpacity( GetOpacity() );
-    }// if _active
+       }// if _active
 
     VisibilityActor(); 
 }
 
     VisibilityActor(); 
 }