]> Creatis software - bbtk.git/commitdiff
*** empty log message ***
authorEduardo Davila <Eduardo.Davila@creatis.insa-lyon.fr>
Wed, 10 Dec 2008 10:00:36 +0000 (10:00 +0000)
committerEduardo Davila <Eduardo.Davila@creatis.insa-lyon.fr>
Wed, 10 Dec 2008 10:00:36 +0000 (10:00 +0000)
kernel/src/bbtkConfigurationFile.cxx
packages/vtk/src/bbvtkTransform.cxx [new file with mode: 0644]
packages/vtk/src/bbvtkTransform.h [new file with mode: 0644]
packages/vtk/src/bbvtkVecIsoSurfaceExtractor.cxx

index c8e155c6c89777b27fbb712adfa7664c5e17f9e6..dbcc49becd70040a299d5e330eb0423962004a46 100644 (file)
@@ -2,8 +2,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbtkConfigurationFile.cxx,v $
   Language:  C++
-  Date:      $Date: 2008/12/09 13:47:29 $
-  Version:   $Revision: 1.23 $
+  Date:      $Date: 2008/12/10 10:00:36 $
+  Version:   $Revision: 1.24 $
 =========================================================================*/
 
 /* ---------------------------------------------------------------------
@@ -373,7 +373,6 @@ namespace bbtk
          {
                  *slash = 0;
          }
-         //printf("EED ConfigurationFile::GetExecutablePath  %s\n",name);
          return name;
   }
          
diff --git a/packages/vtk/src/bbvtkTransform.cxx b/packages/vtk/src/bbvtkTransform.cxx
new file mode 100644 (file)
index 0000000..7c375f0
--- /dev/null
@@ -0,0 +1,89 @@
+#include "bbvtkTransform.h"
+#include "bbvtkPackage.h"
+
+
+namespace bbvtk
+{
+
+BBTK_ADD_BLACK_BOX_TO_PACKAGE(vtk,Transform)
+BBTK_BLACK_BOX_IMPLEMENTATION(Transform,bbtk::AtomicBlackBox);
+void Transform::Process()
+{
+    if (result!=NULL)
+       {
+               result->Delete();
+       }
+       result = vtkTransform::New();
+
+
+       if (bbGetInputIn()!=NULL)
+       {
+               result->Concatenate( bbGetInputIn()->GetMatrix() );
+       }
+
+
+       if (bbGetInputScale().size()>=3)
+       {
+               result->Scale(bbGetInputScale()[0], bbGetInputScale()[1], bbGetInputScale()[2]);
+       }
+
+       if ((bbGetInputTranslate().size()>=3) && (bbGetInputSpacing().size()>=3))
+       {
+               double tx = bbGetInputTranslate()[0] * bbGetInputSpacing()[0];
+               double ty = bbGetInputTranslate()[1] * bbGetInputSpacing()[1];
+               double tz = bbGetInputTranslate()[2] * bbGetInputSpacing()[2];
+               result->Translate(tx,ty,tz);
+       }
+
+       if (bbGetInputRotateWXYZ().size()>=4)
+       {
+         result->RotateWXYZ(bbGetInputRotateWXYZ()[0],bbGetInputRotateWXYZ()[1], bbGetInputRotateWXYZ()[2], bbGetInputRotateWXYZ()[3]);
+       }
+
+       result->Update();
+
+       bbSetOutputOut(result);
+}
+
+
+void Transform::bbUserConstructor()
+{
+    bbSetInputIn(NULL);
+
+       vecScale.push_back(1);  // scale x
+       vecScale.push_back(1);  // scale y
+       vecScale.push_back(1);  // scale z
+    bbSetInputScale(vecScale);
+
+       vecRotateWXYZ.push_back(0);  //angle 
+       vecRotateWXYZ.push_back(1);  //vx
+       vecRotateWXYZ.push_back(0);  //vy
+       vecRotateWXYZ.push_back(0);  //vz
+    bbSetInputRotateWXYZ(vecRotateWXYZ);
+
+       vecTranslate.push_back(0);  //tx
+       vecTranslate.push_back(0);  //ty
+       vecTranslate.push_back(0);  //tz
+    bbSetInputTranslate(vecTranslate);
+
+       vecSpacing.push_back(1);  //spacing x
+       vecSpacing.push_back(1);  //spacing y
+       vecSpacing.push_back(1);  //spacing z
+    bbSetInputTranslate(vecSpacing);
+
+       result = NULL;  
+}
+void Transform::bbUserCopyConstructor()
+{
+  
+}
+void Transform::bbUserDestructor()
+{
+  
+}
+}
+// EO namespace bbvtk
+
+
diff --git a/packages/vtk/src/bbvtkTransform.h b/packages/vtk/src/bbvtkTransform.h
new file mode 100644 (file)
index 0000000..a9d3d72
--- /dev/null
@@ -0,0 +1,57 @@
+#ifndef __bbvtkTransform_h_INCLUDED__
+#define __bbvtkTransform_h_INCLUDED__
+#include "bbtkAtomicBlackBox.h"
+#include "iostream"
+
+#include <vtkTransform.h>
+#include <vtkLinearTransform.h>
+
+namespace bbvtk
+{
+
+class /*BBTK_EXPORT*/ Transform
+ : 
+   public bbtk::AtomicBlackBox
+{
+  BBTK_BLACK_BOX_INTERFACE(Transform,bbtk::AtomicBlackBox);
+//==================================================================
+/// User callback called in the box contructor
+virtual void bbUserConstructor();
+/// User callback called in the box copy constructor
+virtual void bbUserCopyConstructor();
+/// User callback called in the box destructor
+virtual void bbUserDestructor();
+//==================================================================
+ BBTK_DECLARE_INPUT(In,vtkLinearTransform *);
+ BBTK_DECLARE_INPUT(Scale,std::vector<double>);
+ BBTK_DECLARE_INPUT(RotateWXYZ,std::vector<double>);
+ BBTK_DECLARE_INPUT(Translate,std::vector<double>);
+ BBTK_DECLARE_INPUT(Spacing,std::vector<double>);
+ BBTK_DECLARE_OUTPUT(Out,vtkLinearTransform *);
+ BBTK_PROCESS(Process);
+ void Process();
+
+ std::vector<double>   vecScale;
+ std::vector<double>   vecRotateWXYZ;
+ std::vector<double>   vecTranslate;
+ std::vector<double>   vecSpacing;
+ vtkTransform                  *result; 
+};
+
+BBTK_BEGIN_DESCRIBE_BLACK_BOX(Transform,bbtk::AtomicBlackBox);
+BBTK_NAME("Transform");
+BBTK_AUTHOR("InfoTeam CREATIS-LRMN");
+BBTK_DESCRIPTION("vtkTransform");
+BBTK_CATEGORY("math");
+BBTK_INPUT(Transform,In,"vtkTransform to be concatenate",vtkLinearTransform *,"");
+BBTK_INPUT(Transform,Scale,"vector with sx sy sz",std::vector<double>,"");
+BBTK_INPUT(Transform,Translate,"vector with x y z",std::vector<double>,"");
+BBTK_INPUT(Transform,Spacing,"vector with spacingX spacingY spacingZ",std::vector<double>,"");
+BBTK_INPUT(Transform,RotateWXYZ,"vector with Angle Vx Vy Vz",std::vector<double>,"");
+BBTK_OUTPUT(Transform,Out,"vtkTransform result",vtkLinearTransform *,"");
+BBTK_END_DESCRIBE_BLACK_BOX(Transform);
+}
+// EO namespace bbvtk
+
+#endif // __bbvtkTransform_h_INCLUDED__
+
index f4575b522ede64bb3daa152a9e85013aea1dcdf5..d175944fe51920685d507355e3363950b149389f 100644 (file)
@@ -124,6 +124,7 @@ void VecIsoSurfaceExtractor::bbUserConstructor()
 
      bbSetInputColour(colour);
         bbSetInputTransform(NULL);
+        bbSetInputOpacity(1);
 }
 
 void VecIsoSurfaceExtractor::bbUserCopyConstructor(bbtk::BlackBox::Pointer)