Subject: CGAL users discussion list
List archive
- From: Sebastien Loriot <>
- To:
- Subject: Re: [cgal-discuss] N closest triangles to a point
- Date: Mon, 3 Apr 2023 16:07:56 +0200
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
- Ironport-data: A9a23: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 4QqbTgsfXxXgnId3Sqtl7C51f3ZUP7SI+0UUBqy
- Ironport-hdrordr: A9a23:d6kaaKyrsw+y+aIE/wqUKrPwSr1zdoMgy1knxilNoH1uE/Bw+P re/8jzuSWatN9zYh8dcK67WJVoKEm0nfVICOIqUItKMjONhIN/RLsP0bff
- Ironport-phdr: A9a23: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
- Ironport-sdr: 642addbe_Z0iNr8NQXQg+hs6aqMHMt/dAbT7h5fACqRseP90CxS+cScS WHtFgMSRxw0rAkSAK+xPJuYG6+QMpJo6p22M/ew==
The way the closest primitive is found is the following:
using a hint point on one triangle, a sphere centered at the query point
and passing through that point is constructed. Then the intersection
of that sphere with the tree is computed. Each time the intersection
with a triangle is found, the radius of the sphere is decreased by
picking a point on the intersected primitive. In the end, a single
primitive is found.
I guess you could modify the procedure and do some kind of binary search
of the radius until the number of intersected primitives is the one requested (with some caching of radius per visited primitives for example).
Best,
Sebastien.
On 4/3/23 15:27, Martin Genet wrote:
Dear all,
For a project using mainly CGAL, I'm using an AABB tree to associate each point of a point cloud to the closest triangle of a mesh using closest_point_and_primitive(), but I would like to get the N closest triangles (say 3 for instance).
The AABB tree structure does not seem to provide any other method than cleaning the tree and rebuilding it each time without the (N-i) th closest triangle for 0 < i < N, which sounds unpracticable to do for each point of a large point cloud.
Am I missing something, or is there other solutions in CGAL that are more suited for this purpose ?
Best,
Martin Genet
--
*Martin GENET*
*Ingénieur d'Études, CNRS*
*LIRIS UCBL1 Bâtiment Nautibus*
25-23 Avenue Pierre de Coubertin
La Doua
69622 Villeurbanne cedex
--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss
- [cgal-discuss] N closest triangles to a point, Martin Genet, 04/03/2023
- Re: [cgal-discuss] N closest triangles to a point, Sebastien Loriot, 04/03/2023
- Re: [cgal-discuss] N closest triangles to a point, Martin Genet, 04/03/2023
- Re: [cgal-discuss] N closest triangles to a point, Sebastien Loriot, 04/03/2023
Archive powered by MHonArc 2.6.19+.