[vtkusers] Re: artifacts with vtkMarchingCubes
Goodwin Lawlor
goodwin.lawlor at ucd.ie
Fri Feb 22 18:26:19 EST 2008
Nadine Kempe wrote:
> Hi at all!
>
> I have a problem with vtkMarchingCubes. I try to render a segmented heart in a vtkImageData. This means, the imageData only contains 0 for background and 1 for heart. My code looks like this:
>
> vtkMarchingCubes *iso = vtkMarchingCubes::New();
>
> iso->SetInput(imageData);
> iso->SetNumberOfContours(1);
> iso->SetValue(0, 1.0);
> iso->Update();
<snip>
Hi Nadine,
Its hard to tell what's happening without seeing your data but you can try:
1. Using vtkDiscreteMarchingCubes instead of vtkMarchingCubes. Its
designed for labelled volumes like the one you have.
2. Using vtkConnectivityFilter after the isoextraction with the method
SetExtractionModeToLargestRegion to get rid of the artifacts.
3. If you want to stick with vtkMarchingCubes set the contour value to
0.5 - half-way between the label values. Setting the value to 1.0
extracts the voxel surfaces whereas 0.5 extracts the surface between the
voxels.
hth
Goodwin
More information about the vtkusers
mailing list