Convex hull of (longitude, latitude)-points on the surface of a sphere

后端 未结 6 372
甜味超标
甜味超标 2021-02-01 05:05

Standard convex hull algorithms will not work with (longitude, latitude)-points, because standard algorithms assume you want the hull of a set of Cartesian points. Latitude-long

6条回答
  •  被撕碎了的回忆
    2021-02-01 06:03

    This question has been answered a while ago, but I would like to sum up the results of my research.

    The spherical convex hull is basically defined only for non-antipodal points. Supposing all the points are on the same hemisphere, you can compute their convex hull in two main ways:

    1. Project the points to a plane using gnomonic/central projection and apply a planar convex hull algorithm. See Lin-Lin Chen, T. C. Woo, "Computational Geometry on the Sphere With Application to Automated Machining" (1992). If the points are on a known hemisphere, you can hard-code on which plane to project the points unto.
    2. Adapt planar convex hull algorithms to the sphere. See C. Grima and A. Marquez, "Computational Geometry on Surfaces: Performing Computational Geometry on the Cylinder, the Sphere, the Torus, and the Cone", Springer (2002). This reference seems to give a similar method to the abstract referenced by Li-aung Yip above.

    For reference, in Python I am working on an implementation of my own, which currently works only for points on the Northern hemisphere.

    See also this question on Math Overflow.

提交回复
热议问题