0

assume that we have two (or more) convex hulls in the plane and we want merging them. but the convex hull result has minimum perimeter. is any algorithm available for this?

erfan30
  • 105
  • 7
  • 3
    Convex hull is uniquely defined. Indeed, it is the arbitrary intersection of all convex sets containing the points in question. So, there is no "minimum" or "maximum" perimeter. – Tryer Oct 06 '21 at 10:54
  • A bit of a stretch, but I think what the post may be asking is: Given 2+ convex hulls, determine how to overlay them such that the convex hull they form has minimal perimeter. In other words, the points' positions are only defined relative to other points in the same convex hull; not globally. – Dillon Davis Oct 06 '21 at 13:22
  • Please see: https://stackoverflow.com/questions/25825970/how-does-the-algorithm-of-merging-two-convex-hulls-by-using-their-tangents-work – HEKTO Oct 07 '21 at 03:01
  • "but the convex hull result has minimum perimeter": why do you say this, exactly ? –  Oct 09 '21 at 17:34

2 Answers2

0

You can run any optimized convex hull algorithm on the boundary point of two convex hulls, you should get a new convex hull covering both of the previous ones. To maintain the convex property, there will be a unique resultant convex hull, so the minimum perimeter should not be a constraint.

Zabir Al Nazi
  • 10,298
  • 4
  • 33
  • 60
0

Split all K hulls in upper and lower hulls. Now you have 2K sorted sequences of vertices. Merge the upper and lower sequences separately, using a K-way merge. This is done in time O(N log(K)) where N is the total number of vertices.

Now two Graham scans give the global hulls in time O(N).

[This is an adaptation of the monotone-chain algorithm.]