#include "vtkJoiner.h" vtkJoiner::vtkJoiner(){ } vtkJoiner::~vtkJoiner(){ } vtkImageData* vtkJoiner::join(vtkImageData *a, vtkImageData *b){ int extent[6]; vtkImageData *c = vtkImageData::New(); c->DeepCopy(a); unsigned char *ptrA = NULL; unsigned char *ptrB = NULL; unsigned char *ptrC = NULL; a->GetExtent(extent); int i, j, k; for(i=extent[0];i<=extent[1];i++){ for(j=extent[2];j<=extent[3];j++){ for(k=extent[4];k<=extent[5];k++){ ptrA = (unsigned char *) a->GetScalarPointer(i,j,k); ptrB = (unsigned char *) b->GetScalarPointer(i,j,k); ptrC = (unsigned char *) c->GetScalarPointer(i,j,k); if ((*ptrA != 0) || (*ptrB != 0)){ *ptrC=255; } else{ *ptrC = 0; } } } } return c; }