[vtkusers] How to remove edges/faces not belonging to the konvex hull from Delaunay3D?

David Doria daviddoria+vtk at gmail.com
Fri Jan 15 12:12:13 EST 2010


On Fri, Jan 15, 2010 at 11:56 AM, Bryn Lloyd <blloyd at vision.ee.ethz.ch> wrote:
> Maybe I misunderstand you, but I think you simply need to extract the
> triangle surface from the tetrahedral mesh (obtained with Delaunay3D).
>
> This will only leave the triangles, which are used by only one tetrahedron,
> so only those on the surface.
>
>
> Try vtkDataSetSurfaceFilter.
>
> http://www.vtk.org/doc/nightly/html/classvtkDataSetSurfaceFilter.html
>
> /Bryn
>
>
>
>
>
>
>
> David Doria wrote:
>>
>> On Fri, Jan 15, 2010 at 2:50 AM,  <lynx.abraxas at freenet.de> wrote:
>>>
>>> Hello!
>>>
>>>
>>> I  want  to get the convex hull of points lying on a sphere. I used
>>> Delaunay3D
>>> for that. My problem now is the inner connection of points created during
>>>  the
>>> Delaunay  triangulation (eg a line between opposite points of a
>>> octaedron). Is
>>> there a way to remove the edges and faces that do not  belong  to  the
>>>  convex
>>> hull?  I  found  vtkHull  but  that seems not to be the right filter for
>>> this,
>>> since the Delaunay result contains the hull already,  it  would  just
>>>  need  a
>>> clean up.
>>>
>>> Thanks for any help or hints.
>>> Lynx
>>
>> This is a good point. I don't believe this example is correct:
>>
>> http://www.cmake.org/Wiki/Convex_hull
>>
>> because it potentially contains surfaces that are "inside" the convex
>> hull.
>>
>> I had to do this one time and I used my synthetic lidar scanner:
>> http://www.midasjournal.org/browse/publication/695
>>
>> To shoot a bunch of rays from a bunch of different directions at the
>> object and kept only the surfaces which were hit. This seemed like a
>> VERY outrageous way to do this, but it worked :)
>>
>> Anyone have a better/easier suggestion?
>>
>> Thanks,
>>
>> David
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the VTK FAQ at:
>> http://www.vtk.org/Wiki/VTK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.vtk.org/mailman/listinfo/vtkusers
>>
>
>
> --
> -------------------------------------------------
> Bryn Lloyd
> Computer Vision Laboratory
> ETH Zürich, Sternwartstrasse 7, ETF C110
> CH - 8092 Zürich, Switzerland
> Tel: +41 44 63 26668

Bryn,

That seems to do the trick, thanks. I have updated the example and
provided a description:
http://www.cmake.org/Wiki/VTK/Examples/ConvexHull_vtkDelaunay3D

I think my overkill method was used because my data set had MUCH less
structure - it was simply a "triangle soup" of which I wanted to get
these same "on the exterior" triangles. Maybe it was not so crazy with
that type of data set :)

Thanks,

David



More information about the vtkusers mailing list