# about contour filter

**URL:** https://discourse.paraview.org/t/about-contour-filter/14043
**Category:** ParaView Support
**Tags:** vtk
**Created:** [February 28, 2024, 9:58am UTC](https://discourse.paraview.org/t/about-contour-filter/14043 "2024-02-28T09:58:42Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![865979216](https://discourse.paraview.org/user_avatar/discourse.paraview.org/865979216/32/13775_2.png) [@865979216](https://discourse.paraview.org/u/865979216)
#### Post date: [February 28, 2024, 9:58am UTC](https://discourse.paraview.org/t/about-contour-filter/14043/1 "2024-02-28T09:58:42Z")

</div>

i have a .mha file，then i use vtk.vtkImageMarchingCubes() to get marchingCubes.SetValue(0, 39)，the result is bad

 ![image](https://discourse.paraview.org/uploads/default/original/2X/6/6a9d4c50b8d1543896cb3b436b3a3d92fb6c01ff.jpeg)

but i use Paraview Contour  
 ![image](https://discourse.paraview.org/uploads/default/original/2X/9/9b747c44d3f2219f785460eec6820376d7823063.png)  
 ![image](https://discourse.paraview.org/uploads/default/original/2X/e/e5b43ec3774105a7884a9de59ca09231c62889bc.png)  
the result is better than vtk.vtkImageMarchingCubes()。

 ![image](https://discourse.paraview.org/uploads/default/original/2X/0/0922e1716d05fddb1bdd8410c9f46563c176e99d.jpeg)

why？

---

<div class="post-metadata">

### Author: ![cory.quammen](https://discourse.paraview.org/user_avatar/discourse.paraview.org/cory.quammen/32/11193_2.png) [@cory.quammen](https://discourse.paraview.org/u/cory.quammen)
#### Post date: [February 28, 2024, 4:31pm UTC](https://discourse.paraview.org/t/about-contour-filter/14043/2 "2024-02-28T16:31:30Z")

</div>

ParaView uses `vtk.vtkContourFilter` which dispatches to a number of different contour filters that perform the actual contouring. To my knowledge, it does not dispatch to `vtk.vtkImageMarchingCubes`.

Try using `vtk.vtkContourFilter` in VTK and see how the results match. You should be able to simply replace `vtkImageMarchingCubes`.

---

<div class="post-metadata">

### Author: ![865979216](https://discourse.paraview.org/user_avatar/discourse.paraview.org/865979216/32/13775_2.png) [@865979216](https://discourse.paraview.org/u/865979216)
#### Post date: [February 29, 2024, 8:06am UTC](https://discourse.paraview.org/t/about-contour-filter/14043/3 "2024-02-29T08:06:18Z")

</div>

the code is  
 ![image](https://discourse.paraview.org/uploads/default/original/2X/d/d2787a57c0171ab9de562cf4a2389f66e1c1e159.png)  
the result is also bad ，just same with vtk.vtkImageMarchingCubes，

 ![image](https://discourse.paraview.org/uploads/default/original/2X/4/4e217c1606c894683692e9eed12e7cf4bff9724e.jpeg)。  
But ，I find “PVContourFilter”  
 ![image](https://discourse.paraview.org/uploads/default/original/2X/e/e5098403e9c57a04a0c860b372ef74874e696926.png)  
Maybe，“PVContourFilter” is the key 。I want to get the result like Paraview’s Contour，but I don’t know how to code。 [ParaView/VTKExtensions/FiltersGeneral/vtkPVContourFilter.h at master · Kitware/ParaView (github.com)](https://github.com/Kitware/ParaView/blob/master/VTKExtensions/FiltersGeneral/vtkPVContourFilter.h)

---

<div class="post-metadata">

### Author: ![865979216](https://discourse.paraview.org/user_avatar/discourse.paraview.org/865979216/32/13775_2.png) [@865979216](https://discourse.paraview.org/u/865979216)
#### Post date: [March 1, 2024, 10:34am UTC](https://discourse.paraview.org/t/about-contour-filter/14043/4 "2024-03-01T10:34:36Z")

</div>

Do u have some ideas？

---

<div class="post-metadata">

### Author: ![cory.quammen](https://discourse.paraview.org/user_avatar/discourse.paraview.org/cory.quammen/32/11193_2.png) [@cory.quammen](https://discourse.paraview.org/u/cory.quammen)
#### Post date: [March 1, 2024, 2:05pm UTC](https://discourse.paraview.org/t/about-contour-filter/14043/5 "2024-03-01T14:05:42Z")

</div>

`vtk.vtkPVContourFilter` is in the ParaView source code, so it isn’t available with just VTK. You could use ParaView’s `pvpython` application and do your processing there if all you care about is the output isosurface, but I suspect you care about more.

As to why the same isovalue produces different results with the different filters, I’m at a bit of a loss. Is it possible to share your data?

---

<div class="post-metadata">

### Author: ![865979216](https://discourse.paraview.org/user_avatar/discourse.paraview.org/865979216/32/13775_2.png) [@865979216](https://discourse.paraview.org/u/865979216)
#### Post date: [March 4, 2024, 2:38am UTC](https://discourse.paraview.org/t/about-contour-filter/14043/6 "2024-03-04T02:38:32Z")

</div>

[VascularEnhance.rar](https://discourse.paraview.org/uploads/short-url/e7MbPu5XohZTZPDMO47EjMDX1xF.rar) (808.9 KB)  
This is the MRA data。So far, I only care about outputting results because my supervisor asked me to do research on vascular analysis. I use mha（dicom is also ok） to output vascular vtp files, and then use vmtk to generate vascular centerline vtp files。So，I want vascular vtp files to look good

---

<div class="post-metadata">

### Author: ![865979216](https://discourse.paraview.org/user_avatar/discourse.paraview.org/865979216/32/13775_2.png) [@865979216](https://discourse.paraview.org/u/865979216)
#### Post date: [March 4, 2024, 12:03pm UTC](https://discourse.paraview.org/t/about-contour-filter/14043/7 "2024-03-04T12:03:33Z")

</div>

sorry，I know the reason。I downsampled the data 😵‍💫
