سؤال

I have used convhulln in matlab to find the surrounding shape of a set of data points in 3D. See history in: Convhull in Matlab. A good samaritan helped me to find out how it works in matlab. I need to know the propertion of gaps (holes) inside the 3D volume to the total volume of the convex hull. Is this possible? thanks.

هل كانت مفيدة؟

المحلول

If I understood your question, I would try this:

  • find the convex hull of your set of points, which I will call S, using convhull
  • find the convex hull of the set S', where

    S' := S - points_defining_the_convex_hull(S) 
    

    (i.e., S' contains the points of S which do not "enlarge" its convex hull, thus the ones which are inside the convex hull itself.)

  • make the difference/proportion between the volumes of S and S' (trivial, both are convex).

There is a strong assumption on the topology of the hole considered, i.e.

"the convex hull of the S' is the hole".

If you have a more complex topology of holes you can't avoid making active use of it (my guess, of course).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top