Presentation is loading. Please wait.

Presentation is loading. Please wait.

AHD: Alternate Hierarchical Decomposition Convex decomposition of nonconvex objects into their convex hull components, represented in hierarchical tree.

Similar presentations


Presentation on theme: "AHD: Alternate Hierarchical Decomposition Convex decomposition of nonconvex objects into their convex hull components, represented in hierarchical tree."— Presentation transcript:

1 AHD: Alternate Hierarchical Decomposition Convex decomposition of nonconvex objects into their convex hull components, represented in hierarchical tree data structure. Two basic steps Convex hull computation – Use any existing algorithm, we used QuickHull algorithm Delta region extraction – Symmetric difference – Split connected regions

2 AHD: Alternate Hierarchical Decomposition-Example 0 125 34

3 0 125 34

4 0 125 34

5 0 125 34

6 0 125 34

7 0 125 34

8 0 125 34

9 Big Integers Point are represented by homogeneous big integer coordinates Big Integers – Arbitrary precision integer types supported by most programming languages e.g. Haskell, Java – Precision is limited by the size of the available memory – All straight line geometry can be performed precisely Homogeneous big integer coordinates – Avoid divisions – Duality in projective geometry can be used and topological relations are computed consistently Computation with big integers is thought to be very slow, especially for cascaded operations where the output of one operation is used as input of another operation Experiment – A cascaded intersection operation – Tested the behavior of geometry with repeatedly intersecting lines – Given two lines AB and CD, the intersection point P is P=(A x B) x (C x D)

10 Big Integers-Experiment

11

12 Convex Polytopes Representation of geometry of nonconvex regions is based on the representation of (convex) polytopes, which are defined by the intersection of finite set of half planes (half spaces in case of 3D). In dual space, a convex polytope is defined as the convex hull of the dual points Convex polytope is used because; – Order of points is not important – Convexity can be exploited for performing closed operations e.g. intersection of two convex hulls is always convex – Union operation is simple – intersections are dual – Facilitate dimension independence. This is possible by lifting 2D algorithms to work with 3D or more

13 Lifting Associates elements and operations from one class to another B i = F(A i ) g i = F(f i ) Preserves the structure and operator algebra F(e A ) = e F(A) F(f.g) = F(f).F(g) Extends a single value to list lift a = [a] = [a 1, a 2,…, a n ] lift f a = f [a] = [f a 1, f a 2,…, f a n ] A B

14 Representation can be used for a gradual (level of detail) rendering: Stop when enough detail is found. Level of Detail (LoD)

15


Download ppt "AHD: Alternate Hierarchical Decomposition Convex decomposition of nonconvex objects into their convex hull components, represented in hierarchical tree."

Similar presentations


Ads by Google