问题描述
我正在寻找一种在多边形内获得最大可能矩形的解决方案。
目前我正在使用 Arcpy for ArcGIS(python 库),但没有现成的解决方案来获取它,而是有一个名为最小边界几何的特征(返回相反的结果,一个矩形包含多边形) :
所需结果示例:
解决方法
我发现的最好的方法在一篇题为“在闭合轮廓中找到任意方向的最大面积矩形”的学术论文中进行了描述。以 PDF 格式提供,但版权使我无法链接该文档,您可以通过出版商 https://www.sciencedirect.com/science/article/abs/pii/S0096300312003207 获得该文档。
该算法是 O(N^3) 并且作者声称没有其他算法具有更低的时间复杂度(这并不意味着它对所有用例最有效)。
(我的实现 (C#) 是为拥有代码的客户准备的,因此除非在此期间开源,否则您必须推出自己的版本。)