gpt4 book ai didi

python - 使用剪刀将多边形偏移米

转载 作者:太空宇宙 更新时间:2023-11-03 14:37:53 28 4
gpt4 key购买 nike

我想创建位置(城镇、村庄等)的缓冲多边形,以便使用它们进行半径搜索。

这就是我想要实现的目标(用于说明的单位):

Polygon radiuses

这就是我在 pyclipper 中的做法:

import pyclipper

coordinates = # Array of lat,lng tuples
clipper_offset = pyclipper.PyclipperOffset()
coordinates = pyclipper.scale_to_clipper(coordinates)
clipper_offset.AddPath(coordinates, pyclipper.JT_ROUND,
pyclipper.ET_CLOSEDPOLYGON)
scaled_coordinates = clipper_offset.Execute(1000.0)
scaled_coordinates = pyclipper.scale_from_clipper(scaled_coordinates)

数字 1000.0 是任意的,我的问题是 - 如何计算 Execute 方法的正确偏移比,以便偏移的多边形大约代表 10,20 和 50km 半径?

顺便说一句。这是解决这个问题的正确方法吗?

最佳答案

对我有用的方式:

import pyclipper

coordinates = [(198,362),(220,330),(282,372),(260,404)] # Array of lat,lng tuples
clipper_offset = pyclipper.PyclipperOffset()
coordinates_scaled = pyclipper.scale_to_clipper(coordinates)

clipper_offset.AddPath(coordinates_scaled, pyclipper.JT_ROUND, pyclipper.ET_CLOSEDPOLYGON)

new_coordinates = clipper_offset.Execute(pyclipper.scale_to_clipper(10))

new_coordinates_scaled = pyclipper.scale_from_clipper(new_coordinates)

我的意思是:

new_coordinates = clipper_offset.Execute(pyclipper.scale_to_clipper(10))

10 或您需要的任何其他值。

它基于 baji 答案,但对我不起作用

[ scale_to_clipper(x) => pyclipper.scale_to_clipper(x) ]

关于python - 使用剪刀将多边形偏移米,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46783572/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com