[SciPy-User] Triangulate point cloud

Athanasios Anastasiou athanastasiou at gmail.com
Fri Feb 12 07:48:15 EST 2016


Hello

In addition to the already suggested ways of doing this:

1) If you don't have a prohibitively large dataset (a few hundred thousand
points), you can evaluate their inter-point distance and then use that one
to establish a threshold. If you do a histogram on point distance you will
see clearly the bunches of points that are closely to each other and the
bunches, or clusters, of points that are further apart. You can then
determine the distance threshold that will exclude surfaces across the
cylinder.

2) Another way I have found to do this is to use this plugin:
http://blenderartists.org/forum/showthread.php?241950-A-Script-to-Skin-a-Point-Cloud-(for-Blender-2-6x-or-Later)
for blender. It is really doing a good job and once your point cloud in in
Blender you can use other tools to improve your mesh. In my case, I wrote a
very simple script in Python to package my point cloud into a VRML pointset
(http://www.c3.hu/cryptogram/vrmltut/part5.html) which was the easiest way
in to import it to Blender.

Hope this helps.

All the best
AA



On Thu, Feb 11, 2016 at 11:35 PM, gary ruben <gary.ruben at gmail.com> wrote:

> Hi Vasco,
>
> Another possible option is vtk's Delaunay3D method. I used this a long
> time ago when it was one of the only options I could find that could
> reliably triangulate points on the surface of a sphere. It has a couple of
> parameters you can fiddle with to affect its behaviour:
> http://docs.enthought.com/mayavi/mayavi/auto/example_delaunay_graph.html
>
> Gary
>
> On 12 February 2016 at 06:23, Vasco Gervasi <yellowhat46 at gmail.com> wrote:
>
>> Hi all,
>> I am looking for a way to traingulate a point cloud, in other words nodes
>> to triangular.
>> I tried scipy.spatial.Delaunay and ConvexHull, but for some reason it
>> tends to connect nodes that are very far away.
>> At this address you can find a good example of what I am looking for:
>> https://paste.ee/p/RBank.
>> As you can see I gave some points around the lateral face of a cylinder,
>> the problems are
>> - it connects nodes that are on the opposite side of the cylinder
>> - if alseo connect nodes that are on the two front face of the cylinder
>> This is just a simple example, I am trying to triangulate a more complex
>> point cloud.
>> So in my opinion the perfect solution would be to define the max distance
>> between nodes that can be connected.
>>
>> Best regards
>>
>> _______________________________________________
>> SciPy-User mailing list
>> SciPy-User at scipy.org
>> https://mail.scipy.org/mailman/listinfo/scipy-user
>>
>>
>
> _______________________________________________
> SciPy-User mailing list
> SciPy-User at scipy.org
> https://mail.scipy.org/mailman/listinfo/scipy-user
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.scipy.org/pipermail/scipy-user/attachments/20160212/3b7f889f/attachment.html>


More information about the SciPy-User mailing list