[vtkusers] Triangulate surface points?

Andras Lasso lasso at queensu.ca
Fri Mar 25 10:21:36 EDT 2016


When all points are coplanar we insert a glyph filter in the pipeline to add small spheres at each point.

Andras

From: Philip Fackler<mailto:philip.fackler at gmail.com>
Sent: March 25, 2016 10:05
To: Cory Quammen<mailto:cory.quammen at kitware.com>; Andras Lasso<mailto:lasso at queensu.ca>
Cc: vtkusers at vtk.org<mailto:vtkusers at vtk.org>
Subject: Re: [vtkusers] Triangulate surface points?

I've tried out vtkDelaunay3D some. But in cases where the surface is completely planar, it fails (it can't make any tets). Is there a way it can handle that. Sorry, I haven't had a chance to watch the video yet.

On Fri, Mar 25, 2016 at 9:59 AM Cory Quammen <cory.quammen at kitware.com<mailto:cory.quammen at kitware.com>> wrote:
Cool, thanks!.

On Fri, Mar 25, 2016 at 9:48 AM, Andras Lasso <lasso at queensu.ca<mailto:lasso at queensu.ca>> wrote:
It can generate non-convex surfaces up to some point - check out the video and/or try it yourself (you can install the Volume clip extension in Slicer by two clicks and you can mark points and drag them around to see how the surface is evolving). The alpha parameter in Delaunay 3D controls handling of concavities. Limitations include that a non-zero alpha may make the triangulation to fail and irregular point distances may confuse the smoothing algorithm.

Andras

From: Cory Quammen<mailto:cory.quammen at kitware.com>
Sent: March 25, 2016 09:37
To: Andras Lasso<mailto:lasso at queensu.ca>
Cc: Philip Fackler<mailto:philip.fackler at gmail.com>; vtkusers at vtk.org<mailto:vtkusers at vtk.org>

Subject: Re: [vtkusers] Triangulate surface points?

Andras,

That's a good idea as well, but doesn't vtkDelaunay3D produce a convex hull of the input points? That's fine if your object is convex, of course, but may not give you the expected results if your object has a concave region.

If there is a feature in vtkDelaunay3D that can produce concave surfaces, I would be interested to know about it.

Thanks,
Cory

On Fri, Mar 25, 2016 at 8:34 AM, Andras Lasso <lasso at queensu.ca<mailto:lasso at queensu.ca>> wrote:
We get excellent results for sparse point sets using a combination of vtkDelaunay3D, vtkDataSetSurfaceFilter, and vtkButterflySubdivisionFilter. The generated surface includes the exact points that we specify.

You can see what kind of surfaces you can generate from a small number of points:
https://www.youtube.com/watch?v=1mYNwJbE7dQ

You can play with it if you download 3D Slicer and install Volume Clip extension (https://www.slicer.org/slicerWiki/index.php/Documentation/Nightly/Extensions/VolumeClip). Source code is available here:
https://subversion.assembla.com/svn/slicerrt/trunk/VolumeClip/src/VolumeClipWithModel/
(relevant part is in updateModelFromMarkup function)

Andras

From: vtkusers [mailto:vtkusers-bounces at vtk.org<mailto:vtkusers-bounces at vtk.org>] On Behalf Of Cory Quammen
Sent: March 24, 2016 2:29 PM
To: Philip Fackler <philip.fackler at gmail.com<mailto:philip.fackler at gmail.com>>
Cc: vtkusers at vtk.org<mailto:vtkusers at vtk.org>
Subject: Re: [vtkusers] Triangulate surface points?

Philip,

Please take a look at

http://www.vtk.org/doc/nightly/html/classvtkSurfaceReconstructionFilter.html

and

http://www.vtkjournal.org/browse/publication/718

I don't have direct experience with these classes, but they may have what you need.

HTH,
Cory

On Thu, Mar 24, 2016 at 2:24 PM, Philip Fackler <philip.fackler at gmail.com<mailto:philip.fackler at gmail.com>> wrote:
If someone could even definitively tell me "no, you can't do this" that would be helpful.

Thanks,
Philip Fackler

On Wed, Mar 16, 2016 at 6:24 PM Philip Fackler <philip.fackler at gmail.com<mailto:philip.fackler at gmail.com>> wrote:
Is there a way to triangulate a set of surface points using vtk? I've looked around and everything I've found (vtk, cgal, pcl) only do a surface reconstruction which ends up generating its own points to triangulate. I want to actually use the points I have as the vertices of the triangulation. Along with the point locations, I have a lot of information available in my code that I could provide:

Normal vector at each point
Bounding segmented curve(s) (i.e., lists of edge cells indexing the list of surface points)
A polydata representation of the surface (Note that the points I want to triangulate are distinct from the points involved in this)

The only vtk utility that seems to come close to this is vtkDelaunay2D, but it's only useful if all the points can be mapped to a 2D plane. This isn't possible in general without a parametric surface, which is one bit of information I don't have.
Thanks in advance for the help.

_______________________________________________
Powered by www.kitware.com<http://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

Search the list archives at: http://markmail.org/search/?q=vtkusers

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/vtkusers



--
Cory Quammen
R&D Engineer
Kitware, Inc.



--
Cory Quammen
R&D Engineer
Kitware, Inc.



--
Cory Quammen
R&D Engineer
Kitware, Inc.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtkusers/attachments/20160325/cfb14319/attachment.html>


More information about the vtkusers mailing list