]> Creatis software - creaVtk.git/commitdiff
#2843 creaVtk Feature New Normal - new box VtkActor from vtkProp3D
authorEduardo DAVILA <eduardo.davila@creatis.insa-lyon.fr>
Sun, 21 Feb 2016 00:21:21 +0000 (01:21 +0100)
committerEduardo DAVILA <eduardo.davila@creatis.insa-lyon.fr>
Sun, 21 Feb 2016 00:21:21 +0000 (01:21 +0100)
bbtk_creaVtk_PKG/src/bbcreaVtkActor.cxx [new file with mode: 0644]
bbtk_creaVtk_PKG/src/bbcreaVtkActor.h [new file with mode: 0644]

diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkActor.cxx b/bbtk_creaVtk_PKG/src/bbcreaVtkActor.cxx
new file mode 100644 (file)
index 0000000..39a3f8e
--- /dev/null
@@ -0,0 +1,101 @@
+//===== 
+// 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 "bbcreaVtkActor.h"
+#include "bbcreaVtkPackage.h"
+namespace bbcreaVtk
+{
+
+BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaVtk,Actor)
+BBTK_BLACK_BOX_IMPLEMENTATION(Actor,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 Actor::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;
+
+     vtkProp3D* vtkactor=bbGetInputIn();
+//     vtkactor->GetProperty()->SetOpacity( bbGetInputOpacity() );
+     
+     if ( bbGetInputTransform()!=NULL )
+     {
+        vtkactor->SetUserTransform( bbGetInputTransform() );
+     }
+
+//     bbSetOutputOut( vtkactor );
+
+     // Interface Update
+
+    if ((bbGetInputRenderer()!=NULL) && ( backActive!=bbGetInputActive() ))
+       {
+       
+       if (bbGetInputActive()==true )
+       {
+                       bbGetInputRenderer()->AddActor( vtkactor );
+       }  else {
+                       bbGetInputRenderer()->RemoveActor( vtkactor );
+       }  //if Active
+               backActive=bbGetInputActive();
+       } // if Renderer
+
+}
+//===== 
+// 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 Actor::bbUserSetDefaultValues()
+{
+
+//  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
+//    Here we initialize the input 'In' to 0
+   bbSetInputActive(false);
+   backActive=bbGetInputActive();
+   bbSetInputIn(NULL);
+   bbSetInputOpacity(1);
+   bbSetInputRenderer(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 Actor::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 Actor::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/bbcreaVtkActor.h b/bbtk_creaVtk_PKG/src/bbcreaVtkActor.h
new file mode 100644 (file)
index 0000000..405369f
--- /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 __bbcreaVtkActor_h_INCLUDED__
+#define __bbcreaVtkActor_h_INCLUDED__
+#include "bbcreaVtk_EXPORT.h"
+#include "bbtkAtomicBlackBox.h"
+#include "iostream"
+
+#include "vtkProp3D.h"
+#include "vtkTransform.h"
+#include "vtkRenderer.h"
+
+namespace bbcreaVtk
+{
+
+class bbcreaVtk_EXPORT Actor
+ : 
+   public bbtk::AtomicBlackBox
+{
+  BBTK_BLACK_BOX_INTERFACE(Actor,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(In,vtkProp3D*);
+  BBTK_DECLARE_INPUT(Opacity,double);
+  BBTK_DECLARE_INPUT(Transform,vtkTransform*);
+  BBTK_DECLARE_INPUT(Renderer,vtkRenderer*);
+//  BBTK_DECLARE_OUTPUT(Out,double);
+  BBTK_PROCESS(Process);
+  void Process();
+
+  bool backActive;
+//===== 
+// 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(Actor,bbtk::AtomicBlackBox);
+ BBTK_NAME("Actor");
+ BBTK_AUTHOR("Info-Dev");
+ BBTK_DESCRIPTION("No Description.");
+ BBTK_CATEGORY("empty");
+
+ BBTK_INPUT(Actor,Active,"Active true/false  (default false)",bool,"");
+ BBTK_INPUT(Actor,In,"First input",vtkProp3D*,"");
+ BBTK_INPUT(Actor,Opacity,"Opacity 0..1 (default 1)",double,"");
+ BBTK_INPUT(Actor,Renderer,"Renderer",vtkRenderer*,"");
+
+// BBTK_OUTPUT(Actor,Out,"First output",double,"");
+BBTK_END_DESCRIBE_BLACK_BOX(Actor);
+//===== 
+// 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 // __bbcreaVtkActor_h_INCLUDED__
+