maps - 判断一个点是否在路上

标签 maps gis polygon polyline arcgis-js-api

如果我有一条描述道路的折线并且我知道所有部分的道路宽度,是否有一种算法可以用来确定道路上是否有一个点?我不完全确定如何执行此操作,因为线条本身的宽度为 1 像素。

谢谢,

杰夫

最佳答案

找到点到线的最小距离(它将是一个垂直于线的向量)。实际计算,其中 P0 是路段的第一个点,v 是路段矢量,w 是从 P0 到问题点的矢量。您将不得不遍历多段线中的每条边。如果距离小于该路段的宽度,则它“在”路上。

d = |v x w| / |v|

拐角可能会很棘手,具体取决于您将它们视为圆形(恒定半径)还是有角。

关于maps - 判断一个点是否在路上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1320122/

相关文章:

css - 可以通过谷歌地图自定义输入字段吗?

java - 安卓:谷歌地图不显示

javascript - Openlayers - 在 map 上绘制字符串

java - 使用 Java 从 (geo)json 数组中删除对象

polygon - 从 R 中的常规采样点创建网格

javascript - OpenLayers4 : How to give icon a bigger click radius

android - 尝试使用 URI 和 Intents 启动谷歌地图

r - 将 NAD83 状态平面坐标转换为 WS84 标准经度/纬度(以度为单位)

数组上的 MongoDB 地理空间索引(多键 + 地理空间)

r - 填充曲线下不与任何其他曲线重叠的区域