高德地图获取道路接口、并将道路绘制

目标 :需要通过路的名字,将道路在地图中绘制出。

查找路的信息

通过路名搜索路

http://restapi.amap.com/v3/road/roadname?key=yourkey&keywords=靖江路&city=022

参数名称 参数含义
key 高德API 申请的key
keywords 路名称
city 城市citycode 下载地址见参考文献

通过路id搜索路

http://restapi.amap.com/v3/road/roadid?city=020&key=yourkey&id=022J50F0110263228

参数名称 参数含义
key 高德API申请的key
id roadid
city 022

通过API自带接口查找路的信息

  var roadSearch = new AMap.RoadInfoSearch({ //构造地点查询类
            pageSize: 100,
            pageIndex: 1,
            city: "022"
        });
roadSearch.roadInfoSearchByRoadId('022J50F0110263228', function(status, result) {

}
roadSearch.roadInfoSearchByRoadName('靖江路', function(status, result) {

}                                                  
参数名称 参数含义
AMap.RoadInfoSearch 构造函数,实例化一个道路信息查询实例
roadInfoSearchByRoadId(id:String, callback:function(status:String,result:info) 通过路id搜索
roadInfoSearchByRoadName(keyword:String, callback:function(status:String,result:info) 通过路名搜索

通过POI 直接绘制道路(此功能未详细研究)

https://ditu.amap.com/place/B0FFGQ7RGA

参数名称 参数含义
POIid POI的Id

返回 RoadInfo 对象

属性 类型 说明
id String 道路id,该id是唯一标识
name String 道路名称
type String 道路类型文字描述,详细参考道路类型列表
center LngLat 道路中心点坐标
citycode String 城市编码
path/polylines Array.<Array.<LngLat>> 道路路径坐标集合

将路径坐标集合绘制在地图中

//这只是一个示例
            for (let i = 0; i < result.roadInfo.length; i++) {
                const element = result.roadInfo[i];
                for (let j = 0; j < element.path.length; j++) {
                const path = element.path[j];
                const polyline = new AMap.Polyline({
                    path: path,
                    borderWeight: 2, // 线条宽度,默认为 1
                    strokeColor: 'red', // 线条颜色
                    lineJoin: 'round' // 折线拐点连接处样式
                });
                map.add(polyline)
            }
            }

            map.setFitView();

参考文章:

  1. 通过高德地图API获得某条道路上的所有坐标用于描绘道路
  2. 高德地图开发文档中搜索服务
  3. citycode下载地址

原文地址:https://www.cnblogs.com/7fancier/p/11137464.html

时间: 2024-10-10 06:05:33

高德地图获取道路接口、并将道路绘制的相关文章

高德地图获取当前屏幕中心点的经纬度

公司有个需求就是要随着屏幕的改变而载入附近的商户信息. 那么高德地图获取当前屏幕中心点的经纬度呢? 核心方法:aMap.setOnCameraChangeListener(this); 实现接口: @Override public void onCameraChange(CameraPosition position) { LatLng target = position.target; System.out.println(target.latitude + "jinjin------&quo

H5高德地图获取当前位置

<!doctype html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="initial-scale=1.0, user-scalable=no, wi

高德地图获取骑行距离,路线规划

1 高德地图路线规划  http://lbs.amap.com/api/javascript-api/reference/route-search 2 获取骑行距离 function getrding() { var map = new AMap.Map("container", { resizeEnable: true, center: [116.397428, 39.90923],//地图中心点 zoom: 16 //地图显示的缩放级别 }); //两个经纬度 自己定位获取到 va

android利用GPS和高德地图获取定位案例

一.main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" an

高德地图获取地图坐标

<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>火星坐标拾取</title> <script language="javascript" src="http://webapi.amap.com/map

js通过高德地图获取当前位置的经度纬度

效果图如下: 已经获取到了经度纬度了 代码如下: <!doctype html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="initial-scale=

高德地图 获取sha1

开发版本sha1 控制台输入 cd .android  回车 再输入   keytool -list -v -keystore debug.keystore 回车 输入密钥库口令:  andorid 发布版本sha1 keytool -list -v -keystore 签名地址   回车 输入签名密码  

高德地图获取两点之间的距离

//1.将两个经纬度点转成投影点 MAMapPoint point1 = MAMapPointForCoordinate(CLLocationCoordinate2DMake(39.989612,116.480972)); MAMapPoint point2 = MAMapPointForCoordinate(CLLocationCoordinate2DMake(39.990347,116.480441));   //2.计算距离 CLLocationDistance distance = MA

高德地图搜索提示获取信息回传activity刷新ui(二)

应用场景: 在主activity中点击进入到另一个activity搜索提示,获取经纬度,点确定返回到主activity,虽然说需求很奇葩,但是遇到了没办法.. 主要包含两部分,搜索提示+activity回退携带信息刷新主acitivity. 1>搜索提示 代码中贴到 2>activity进入到另一个activity,在另一个activity进行操作获取数据之后,回到到activity刷新页面: 主activity里面点击: Intent intent = new Intent(MainActi