高德地图如何自行规划路线
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高德地图如何自行规划路线相关的知识,希望对你有一定的参考价值。
新无需连同地图数据一起下载,地图数据i-Fi直接下载.可按需下载(分省下载)为你节省存储空间,支持电脑下载导入或手机W呵呵,直接在各大市场下载安装即可,建议还是用“图吧地图的好,导航程序与地图数据独立更新! 参考技术A 回答您好,1、打开高德地图,并搜索目的地
2、在始终点搜索栏右边有一个加号,点击设置途经点。
3、输入途经点地名并点击添加,最多可添加三个,添加好后点击完成
4、高德地图自动生成有途经点的新路线,编辑完成。
iOS-高德地图路线规划开发记录
1. 骑行路径规划调用
// 获取当前位置作为起点
let beginLocation = FCMapShareTool.shared._userLocationCoordinate2D
let request = AMapRidingRouteSearchRequest.init()
// 路径起始点
request.origin = AMapGeoPoint.location(withLatitude: CGFloat(beginLocation?.latitude ?? 0.00 ), longitude: CGFloat(beginLocation?.longitude ?? 0.00))
// 路径终点
request.destination = AMapGeoPoint.location(withLatitude: CGFloat(location.latitude ), longitude: CGFloat(location.longitude))
// 调用高德地图API
self._searchMap?.aMapRidingRouteSearch(request)
2. 线路绘制到地图详细代码
// 路径规划线路渲染到地图上的详细步骤
// 1. 需要把字符串加工成经纬度
// 2. 把转换好的经纬度装进数组
// 3. 移除以前的线路
// 4. 生成新的线路
// 5. 把新的线路添加到地图上。
// 6. 线路渲染,看下面详细步骤
func onRouteSearchDone(_ request: AMapRouteSearchBaseRequest!, response: AMapRouteSearchResponse!)
if response.route.paths.count > 0
// 取出第一种路线方案
let path = response.route.paths[0]
var corArray = [CLLocationCoordinate2D]()
// 将每段线路中的路径经纬度全部载入corArray中。
for (_,step) in path.steps.enumerated()
let lineArray = step.polyline.split(separator: ";")
for str in lineArray
let tempCorArray = str.split(separator: ",")
if tempCorArray.count == 2
let tempLong = String(tempCorArray[0])
let tempLat = String(tempCorArray[1])
let cor = CLLocationCoordinate2D.init(latitude: CLLocationDegrees(CGFloat(tempLat.decimalStringToDouble() ?? 0.00)), longitude: CLLocationDegrees(CGFloat(tempLong.decimalStringToDouble() ?? 0.00)))
corArray.append(cor)
if var temp = corArray as? [CLLocationCoordinate2D]
// 移除旧线路
if let tempPoly = _polyLine
self.mapView.remove(tempPoly)
// 根据corArray数组组建新的线路,并添加到地图上。
let polyline = MAPolyline.init(coordinates: &temp, count: UInt(temp.count))
_polyLine = polyline
self.mapView.add(polyline)
3. 线路绘制
func mapView(_ mapView: MAMapView!, rendererFor overlay: MAOverlay!) -> MAOverlayRenderer!
if let tempOver = overlay as? MAPolyline
let polygonView = MAPolylineRenderer.init(polyline: tempOver)
// 参数设置
polygonView?.lineWidth = 8.0
polygonView?.strokeColor = UIColor.muColor(.blue)
polygonView?.fillColor = UIColor.muColor(.red)
polygonView?.lineJoinType = kMALineJoinRound
polygonView?.lineCapType = kMALineCapRound
return polygonView
return nil
以上是关于高德地图如何自行规划路线的主要内容,如果未能解决你的问题,请参考以下文章