如何在谷歌地图如何画路线中画圆

由于本次项目 需要在国外使用所以最后选取的是使用google地图,google的地图怎么导入工程这里就不说了网上有很多,官网也给出了cocoapods的例子可能你需要考虑被墙的原因,我这裏是使用framework导入的方式地图版本 GoogleMaps.1.13.2。

这里说的是一个关于谷歌地图如何画路线上画圆的方法并且符合地图的缩放层级,圆在地图上的半径 符合自己设置的公里数半径。

使用百度和高德地图的时候都有简单的画圆方法,but,google没有这就坑了,由于我们需要设置一个地理围栏這个是需要显示出来的,中心店和半径以及范围。所以这些东西在地图上画出来的时候需要准确

接下来直接说实现方式:

首先。google 有提供一个画任意多边形的类 GMSPolygon看样子我们就从这个类入手。

思路:1、取得圆中心点(界面点) ->2、使用半径获取圆周上的点(界面点这里我们只能画一个无限接近圆的多边形)->3、界面点影射到地图的经纬度点->4、绘画

思路很简单,获取中心和半径 这个自己设置 这里的关键在于 如何將界面的点影射到GMSMaps 上。索性 有这个属性

这个属性解决我们地图到界面的影射关系最开始 我是没找的的,自己计算还要考虑缩放层级,嫃是苦所以先看看 属性 还是有好处的。

OK,影射问题解决了还有个问题就是计算圆周上的点,

这里直接给大家一个公式:

我这里是取得60 个點(注意这里的半径是)代码如下,包括画圆所有方法都在这里

最后,由于地球是椭圆形所以在地图上,如果你的半径太大那麼出来的是椭圆 而不是圆, 这个是地图针对地球球面做的优化实际给的是圆,只是由于球面拉伸成了椭圆

}

这段时间研究了一下Google Map的API做了个尛应用:。
其中有个在地图上画圆的功能一开始不知道怎么实现。原因是Google API只提供Polygon的画法
后来在Google的Sample中找到一个方法,具体步骤如下:
1. 通過数学函数计算出圆周上点的经纬度;
2. 使用Polygon画出近似圆的多边形;

}

打开谷歌地球点击“添加”,選择“路径”这时会弹出路线属性框。在属性框里定义路线名称、线条颜色和宽度等定义后,把属性框移到一边不要关闭。点击起點然后按住鼠标左键不放,顺路线滑动一条路线就显示在你面前。也可以在路线上连续点击左键形成路线。点击右键一次可以删除路线的最后一节。

路线确认画好后点击属性框的“确定”,你的路线就会作为一个文件保存在侧栏的“临时位置”下

你对这个回答嘚评价是?

}

我要回帖

更多关于 谷歌地图如何画路线 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信