X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvMesh.cxx;h=15be4a4bedc7e0696bd13ac0aa4441f66989eef7;hb=HEAD;hp=e7045f58d84a19889f0f8abd97a4698587b237bb;hpb=72c516346c3a550e2d34a7635f5f41061a16306c;p=clitk.git diff --git a/vv/vvMesh.cxx b/vv/vvMesh.cxx index e7045f5..15be4a4 100644 --- a/vv/vvMesh.cxx +++ b/vv/vvMesh.cxx @@ -138,6 +138,7 @@ void vvMesh::ComputeMasks(vtkImageData* sample,bool extrude) vtkSmartPointer binary_image=vtkSmartPointer::New(); #if VTK_MAJOR_VERSION <= 5 binary_image->SetScalarTypeToUnsignedChar(); +#endif ///Use the smallest mask in which the mesh fits // Add two voxels on each side to make sure the mesh fits double * samp_origin=sample->GetOrigin(); @@ -152,22 +153,9 @@ void vvMesh::ComputeMasks(vtkImageData* sample,bool extrude) binary_image->SetExtent(0,ceil((bounds[1]-origin[0])/spacing[0]+4), 0,ceil((bounds[3]-origin[1])/spacing[1]+4), 0,ceil((bounds[5]-origin[2])/spacing[2])+4); +#if VTK_MAJOR_VERSION <= 5 binary_image->AllocateScalars(); #else - ///Use the smallest mask in which the mesh fits - // Add two voxels on each side to make sure the mesh fits - double * samp_origin=sample->GetOrigin(); - double * spacing=sample->GetSpacing(); - binary_image->SetSpacing(spacing); - - /// Put the origin on a voxel to avoid small skips - binary_image->SetOrigin(floor((bounds[0]-samp_origin[0])/spacing[0]-2)*spacing[0]+samp_origin[0], - floor((bounds[2]-samp_origin[1])/spacing[1]-2)*spacing[1]+samp_origin[1], - floor((bounds[4]-samp_origin[2])/spacing[2]-2)*spacing[2]+samp_origin[2]); - double * origin=binary_image->GetOrigin(); - binary_image->SetExtent(0,ceil((bounds[1]-origin[0])/spacing[0]+4), - 0,ceil((bounds[3]-origin[1])/spacing[1]+4), - 0,ceil((bounds[5]-origin[2])/spacing[2])+4); binary_image->AllocateScalars(VTK_UNSIGNED_CHAR, 1); #endif memset(binary_image->GetScalarPointer(),0,binary_image->GetDimensions()[0]*binary_image->GetDimensions()[1]*binary_image->GetDimensions()[2]*sizeof(unsigned char)); @@ -206,7 +194,7 @@ void vvMesh::ComputeMasks(vtkImageData* sample,bool extrude) stencil->SetStencil(sts->GetOutput()); stencil->SetInput(binary_image); #else - stencil->SetStencilData(sts->GetOutput()); + stencil->SetStencilConnection(sts->GetOutputPort()); stencil->SetInputData(binary_image); #endif stencil->Update();