]> Creatis software - bbtk.git/blobdiff - packages/vtk/src/bbvtkTransform.cxx
.
[bbtk.git] / packages / vtk / src / bbvtkTransform.cxx
index 0d53007254586192b8226b1043b27caaab6194d6..be42242d05e6207074a1e626dc608120db55fd95 100644 (file)
@@ -7,84 +7,90 @@ namespace bbvtk
 
   BBTK_ADD_BLACK_BOX_TO_PACKAGE(vtk,Transform);
   BBTK_BLACK_BOX_IMPLEMENTATION(Transform,bbtk::AtomicBlackBox);
+
+       
+       // --------------------------------------------------------------       
+       
+       void Transform::bbUserSetDefaultValues()
+       {
+               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::bbUserInitializeProcessing()
+       {
+               bbUserFinalizeProcessing();
+               result = vtkTransform::New();
+       }
+       
+       
+       // --------------------------------------------------------------       
+       void Transform::bbUserFinalizeProcessing()
+       {
+               if (result!=NULL)
+               {
+                       result->Delete();
+                       result=NULL;
+               }
+               
+       }
+       
+       
+       // --------------------------------------------------------------       
   void Transform::Process()
   {
-    if (result!=NULL)
-      {
-       result->Delete();
-      }
-    result = vtkTransform::New();
-    
-    
-    if (bbGetInputIn()!=NULL)
+         bbUserInitializeProcessing();
+         if (bbGetInputIn()!=NULL)
       {
-       result->Concatenate( bbGetInputIn()->GetMatrix() );
+                 result->Concatenate( bbGetInputIn()->GetMatrix() );
       }
-    
-    
-    if (bbGetInputScale().size()>=3)
+
+         if (bbGetInputScale().size()>=3)
       {
-       result->Scale(bbGetInputScale()[0], bbGetInputScale()[1], bbGetInputScale()[2]);
+                 result->Scale(bbGetInputScale()[0], bbGetInputScale()[1], bbGetInputScale()[2]);
       }
     
-    if ((bbGetInputTranslate().size()>=3) && (bbGetInputSpacing().size()>=3))
+         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);
+                 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)
+         if (bbGetInputRotateWXYZ().size()>=4)
       {
-       result->RotateWXYZ(bbGetInputRotateWXYZ()[0],bbGetInputRotateWXYZ()[1], bbGetInputRotateWXYZ()[2], bbGetInputRotateWXYZ()[3]);
+                 result->RotateWXYZ(bbGetInputRotateWXYZ()[0],bbGetInputRotateWXYZ()[1], bbGetInputRotateWXYZ()[2], bbGetInputRotateWXYZ()[3]);
       }
     
-    result->Update();
+         result->Update();
     
-    bbSetOutputOut(result);
+         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