1
liuzhedash 2018-11-27 17:19:15 +08:00
画圆的目的是判断两个坐标是否重合?还是要在地图上画一个圆形出来?
|
2
feverzsj 2018-11-27 17:23:14 +08:00
圆上的点到圆心距离是相同的,你每隔一个角度计算出另一端的坐标就可以了,一般用等角线算法,距离很长的话可以用大圆算法
|
3
AifeiI 2018-11-27 17:25:17 +08:00
图层覆盖物,圆形的直径 /半径预先计算好,然后描绘的时候,将圆形对准坐标点。
|
5
across 2018-11-27 17:35:26 +08:00
我做过一个类似 LBS,不过要求不太严格,经纬度要先转化成米的空间尺度计算。经纬度公式、转化代码网上能查到很多。
画圈嘛,很简单,比如取 60 个采样点的平滑程度,把 360 度 60 等分,有了圆心半径,就知道采样点位置了,每个点连线不就好了。 |
6
across 2018-11-27 17:37:09 +08:00
“经纬度要先转化成米的空间尺度计算”
补充下这个,就是取个位置点作为空间原点,然后计算其他位置在该相对坐标系下的数值。 |
7
wylwang OP @liuzhedash 在地图上画出圆形
|
8
kzfile 2018-11-27 17:40:27 +08:00
最简单的方法:
把商铺的经纬度位置放入 redis,存为 geohash, 然后 redis 的 api 可以根据给定的坐标和半径返回范围内的全部商铺. 这其实就是根据 geohash 的特性做文章. 复杂点的就是 postgres+postgis 做空间数据库,直接进行空间查询. |
9
kzfile 2018-11-27 17:47:35 +08:00
你的需求是在地图上画图?用的什么地图控件?
|