Skip to Content.
Sympa Menu

cgal-discuss - [cgal-discuss] Alternating Digital Tree

Subject: CGAL users discussion list

List archive

[cgal-discuss] Alternating Digital Tree


Chronological Thread 
  • From: orxshi <>
  • To:
  • Subject: [cgal-discuss] Alternating Digital Tree
  • Date: Sat, 13 Aug 2016 02:48:40 -0700 (PDT)
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=SoftFail ; spf=None
  • Ironport-phdr: 9a23:T9IMSxwZ7s2t/ibXCy+O+j09IxM/srCxBDY+r6Qd0e0WIJqq85mqBkHD//Il1AaPBtSCrasewLCO++C4ACpbsM7H6ChDOLV3FDY9wf0MmAIhBMPXQWbaF9XNKxIAIcJZSVV+9Gu6O0UGUOz3ZlnVv2HgpWVKQka3CwN5K6zPF5LIiIzvjqbpqsSVOl8D3mL1Iesrak7n9UOJ7oheqLAhA5558gHOrHpMdrYe7kJTDnXXoSzB4Nyt9oVo6SVatqFp3cdBVaLnY/ZwFuQAX3wQGjtrtYiy7VGDFlPXpyhUbmJDmRVBB03J7QrxQ4zqmir8rOt0nieAbuPsSrVhXi6y9KdqAEvvkjcOMXgi8GDdjs1Yg6dSoRbnrBt6ld2HKLqJPeZzK/qONegRQnBMC50JDyE=

In need a data structure which is capable of performing intersection
detection of geometries with different topologies. For example, consider a
hybrid mesh composed of non-overlapping mesh elements (quadrilaterals and
triangles). Algorithm should find which quad or triangle a query point
resides in. In general geometries compared against are (point, segment) vs
(triangle, quad) and segment vs segment. Note that mesh topology is static
so it is good to store mesh elements in the tree. Actually the name of the
data structure is Alternating Digital Tree
(http://onlinelibrary.wiley.com/doi/10.1002/nme.1620310102/abstract). ADT is
similar to kd-tree but also assigns a mesh element to each node and also
stores element's AABB at the same node. This makes it capable of point
containment query.

Intersecting Sequences of dD Iso-oriented Boxes performs intersection
detection of boxes which store handles to actual geometries. In this case, I
would need to create a box for each geometry (even for points). Also, in my
case the mesh topology is static so desired data structure should store mesh
elements. I am not sure if box_intersection_d stores static data structure
or constructs hierarchy at each call.

kd-tree and range tree are very similar to ADT but they offer only neighbor
and range search but not intersection detection.

Segment tree and Interval skip list offer point containment search only for
segments/intervals.

AABB tree (3D Fast Intersection and Distance Computation) support
intersection queries include line objects (rays, lines, segments) against
sets of triangles, or plane objects (planes, triangles) against sets of
segments. So no triangle vs triangle or point vs triangle.

Is there a data structure suitable for ADT in CGAL?



--
View this message in context:
http://cgal-discuss.949826.n4.nabble.com/Alternating-Digital-Tree-tp4662135.html
Sent from the cgal-discuss mailing list archive at Nabble.com.


  • [cgal-discuss] Alternating Digital Tree, orxshi, 08/13/2016

Archive powered by MHonArc 2.6.18.

Top of Page