我正在寻找一种将多边形(即点数组)转换为边界框数组(具有给定公差)的算法。

请参阅以下(不完整的)示例:
java - 将Polygon转换为边界框数组-LMLPHP

最佳答案

经过进一步的调查,我认为可以使用jillesvangurp优秀的库来获取一组地理哈希,然后将它们解码为边界框列表。

样例代码:

Set<String> geoHashesForPolygon = GeoHashUtils.geoHashesForPolygon(points);
List<BoundingBox> bboxes = new ArrayList<>(geoHashesForPolygon.size());
for (String geoHash : geoHashesForPolygon) {
    double[] bbox = GeoHashUtils.decode_bbox(geoHash);
    bboxes.add(new BoundingBox(bbox));
}

08-19 09:14