Files
opencloud/.agents/skills/amap-jsapi-skill/references/api/routing.md
T

845 lines
39 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## 路线规划
用于驾车、货车、骑行、步行、公交等的路线规划查询
## Driving
驾车路线规划服务,提供起、终点坐标的驾车导航路线[查询功能][109]。AMap. Driving构造函数的参数为 DrivingOptions 对象。DrivingOptions 允许设置驾车策略和返回信息详略。用户可以通过自定义回调函数取回并显示查询结果。若服务请求失败,系统将返回错误信息
### Parameters
- `opts` **DrivingOptions** 参数信息
- `opts.map` **Map** AMap.Map对象, 展现结果的地图实例。当指定此参数后,搜索结果的标注、线路等均会自动添加到此地图上。可选
- `opts.policy` **number?** [驾车路线规划策略][110]
- `opts.extensions` **string** 默认值:base,返回基本地址信息\\n当取值为:all,返回DriveStep基本信息+DriveStep详细信息 (optional, default `'base'`)
- `opts.ferry` **number** 默认为0,表示可以使用轮渡,为1的时候表示不可以使用轮渡 (optional, default `0`)
- `opts.panel` **(string \| HTMLElement)?** 结果列表的HTML容器id或容器元素,提供此参数后,结果列表将在此容器中进行展示。可选
- `opts.hideMarkers` **boolean** 设置隐藏路径规划的起始点图标
设置为true:隐藏图标;设置false:显示图标\\n默认值为:false (optional, default `false`)
- `opts.showTraffic` **boolean?** 设置是否显示实时路况信息,默认设置为true。
显示绿色代表畅通,黄色代表轻微拥堵,红色代表比较拥堵,灰色表示无路况信息。
- `opts.province` **string?** 车牌省份的汉字缩写,用于判断是否限行,与number属性组合使用,可选。例如:京
- `opts.number` **string?** 除省份之外车牌的字母和数字,用于判断限行相关,与province属性组合使用,可选。例如:NH1N11
- `opts.isOutline` **boolean?** 使用map属性时,绘制的规划线路是否显示描边。缺省为true
- `opts.outlineColor` **string?** 使用map属性时,绘制的规划线路的描边颜色。缺省为'white'
- `opts.autoFitView` **boolean?** 用于控制在路径规划结束后,是否自动调整地图视野使绘制的路线处于视口的可见范围
### Examples
```javascript
var driving;
mapObj.plugin(["AMap.Driving"], function() { //加载驾车服务插件
var drivingOptions = {
//驾车策略,包括 LEAST_TIMELEAST_FEE, LEAST_DISTANCE,REAL_TRAFFIC
policy: AMap.DrivingPolicy.LEAST_TIME
};
driving = new AMap.Driving(drivingOptions);
AMap.Event.addListener(driving, "complete", driving_CallBack); //返回导航查询结果
//根据起终点坐标规划驾车路线
MDrive.search(new AMap.LngLat(116.379018, 39.865026), new AMap.LngLat(116.42732, 39.903752));
});
```
### search
根据起点、终点和途经点(可选)坐标或名称,实现驾车路线规划,途经点通过opts设定
#### Parameters
- `origin` **LngLat** 起点经纬度
- `destination` **LngLat** 终点经纬度
- `opts` **Object**
- `opts.waypoints` **Array<LngLat>** 途径点,最多支持16个
- `callback` **DrivingCallback** status为complete时,result为DrivingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
### search
根据起点、终点和途经点(可选)坐标或名称,实现驾车路线规划,途经点通过opts设定
#### Parameters
- `points` **Array<Object>** 终点经纬度points为起点、终点和途经点(可选)名称及对应城市的数组,例如:
[{keyword:‘北京南站’,city:‘北京市’},{keyword:‘广东大厦’,city:’北京市’},{ keyword:‘北京西站’,city:‘北京市’}]
系统取数组第一个元素和最后一个元素作为起点和终点,中间元素为途经点;
- `callback` **DrivingCallback** status为complete时,result为DrivingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
### clear
清除搜索结果
### setAvoidPolygons
设置避让区域,最大支持三个避让区域,参数为LngLat的二维数组
#### Parameters
- `areas` **Array<Array<LngLatLike>>**
### clearAvoidPolygons
清除避让区域
### getAvoidPolygons
获取避让区域,返回LngLat的二维数组
Returns **Array<Array<LngLat>>** 避让区域
### setAvoidRoad
设置避让道路名称,只支持一条避让道路
注:避让道路和避让区域不能同时使用
#### Parameters
- `value` **string**
### clearAvoidRoad
清除避让道路
### getAvoidRoad
获取避让道路
Returns **string**
### setProvinceAndNumber
设置车牌的汉字首字符和首字后的号码,设置后路线规划的结果将考虑该车牌在当前时间的限行路段
#### Parameters
- `province` **string**
- `number` **string**
### setPolicy
设置驾车路线规划策略
#### Parameters
- `policy` **Object** 驾车路线规划策略
## DrivingCallback
Driving.search 的回调函数
Type: Function
### Parameters
- `status` **string** status为complete时,result为DrivingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果
- `result` **(info | DrivingResult)**
## DrivingResult
DrivingResult 对象
Type: Object
### Properties
- `info` **string** 成功状态说明
- `origin` **LngLat** 驾车规划起点坐标
- `destination` **LngLat** 驾车规划终点坐标
- `start` **Poi** 驾车规划起点
- `end` **Poi** 驾车规划终点
- `waypoints` **Poi** 驾车规划途经点
- `taxi_cost` **number** 打车费用,仅extensions为“all”时返回. 单位: 元
- `routes` **Array<DriveRoute>** 驾车规划路线列表
- `routes.route` **DriveRoute** 驾车规划路线列表元素
- `routes.route.distance` **number** 起点到终点的驾车距离,单位:米
- `routes.route.time` **number** 时间预计,单位:秒
- `routes.route.policy` **string** 驾车规划策略
- `routes.route.tolls` **number** 此驾车路线收费金额,单位:元
- `routes.route.tolls_distance` **number** 收费路段长度,单位:米
- `routes.route.restriction` **number** 限行结果,0 代表限行已规避或未限行,即该路线没有限行路段,1 代表限行无法规避,即该线路有限行路段
- `steps` **Array<(DriveStepBasic \| DriveStepDetail)>** 子路段DriveStep集合
## DriveStepBasic
DriveStep 对象(基本信息)
Type: Object
### Properties
- `start_location` **LngLat** 此路段起点
- `end_location` **LngLat** 此路段终点
- `instruction` **string** 此路段说明,如“沿北京南站路行驶565米右转”
- `action` **string** 本驾车子路段完成后动作
- `assist_action` **string** 驾车子路段完成后辅助动作,一般为到达某个目的地时返回
- `orientation` **string** 驾车方向
- `road` **string** 驾车方向
- `distance` **number** 此路段距离,单位:米
- `tolls` **number** 此段收费,单位:元
- `tolls_distance` **number** 收费路段长度,单位:米
- `toll_road` **string** 主要收费道路
- `time` **number** 此路段预计使用时间,单位:秒
- `path` **Array<LngLat>** 此路段坐标集合
## DriveStepDetail
DriveStep 对象(详细信息)
Type: Object
### Properties
- `cities` **Array<ViaCity>** 途径城市列表
- `cities.city` **ViaCity** 途径城市列表元素
- `cities.city.name` **string** 途径名称
- `cities.city.citycode` **string** 城市编码
- `cities.city.adcode` **string** 区域编码
- `cities.city.districts` **Array<District>** 途径行政区列表
- `cities.city.districts.district` **District** 途径行政区列表元素
- `cities.city.districts.district.name` **string** 区域名称
- `cities.city.districts.district.adcode` **string** 区域编码
- `tmcs` **Array<TMC>** 实时交通信息列表
- `tmcs.tmc` **TMC** 实时交通信息列表元素
- `tmcs.tmc.lcode` **string** 路况信息对应的编码
如果direction是正向 lcode返回值大于0;否则lcode,返回值小于0;
如果返回0则说明此路段无lcode
- `tmcs.tmc.distance` **number** 此lcode对应的路段长度,单位: 米
- `tmcs.tmc.status` **string** 路况状态,可能的值有:未知,畅通,缓行,拥堵
## TruckDriving
驾车路线规划服务,提供起、终点坐标的驾车导航路线[查询功能][115]。AMap. Driving构造函数的参数为 DrivingOptions 对象。DrivingOptions 允许设置驾车策略和返回信息详略。用户可以通过自定义回调函数取回并显示查询结果。若服务请求失败,系统将返回[错误信息][116]
### Parameters
- `opts` **TruckDrivingOptions** 参数信息
- `opts.map` **Map** AMap.Map对象, 展现结果的地图实例。当指定此参数后,搜索结果的标注、线路等均会自动添加到此地图上。可选
- `opts.policy` **number?** [货车路线规划策略strategy][117]
- `opts.size` **number** 车型大小,必填,1-4分别对应小型至大型
- `opts.width` **number** 宽度,缺省2.5米 (optional, default `2.5`)
- `opts.height` **number** 高度,缺省1.6米 (optional, default `1.6`)
- `opts.load` **number** 载重,缺省0.9t (optional, default `0.9`)
- `opts.weight` **number** 自重,缺省10t (optional, default `10`)
- `opts.axlesNum` **number** 轴数,缺省2轴 (optional, default `2`)
- `opts.extensions` **string** 默认值:base,返回基本地址信息\\n当取值为:all,返回DriveStep基本信息+DriveStep详细信息 (optional, default `'base'`)
- `opts.panel` **(string \| HTMLElement)?** 结果列表的HTML容器id或容器元素,提供此参数后,结果列表将在此容器中进行展示。可选
- `opts.hideMarkers` **boolean** 设置隐藏路径规划的起始点图标
设置为true:隐藏图标;设置false:显示图标\\n默认值为:false (optional, default `false`)
- `opts.showTraffic` **boolean?** 设置是否显示实时路况信息,默认设置为true。
显示绿色代表畅通,黄色代表轻微拥堵,红色代表比较拥堵,灰色表示无路况信息。
- `opts.province` **string?** 车牌省份的汉字缩写,用于判断是否限行,与number属性组合使用,可选。例如:京
- `opts.number` **string?** 除省份之外车牌的字母和数字,用于判断限行相关,与province属性组合使用,可选。例如:NH1N11
- `opts.isOutline` **boolean?** 使用map属性时,绘制的规划线路是否显示描边。缺省为true
- `opts.outlineColor` **string?** 使用map属性时,绘制的规划线路的描边颜色。缺省为'white'
- `opts.autoFitView` **boolean?** 用于控制在路径规划结束后,是否自动调整地图视野使绘制的路线处于视口的可见范围
### Examples
```javascript
var driving;
mapObj.plugin(["AMap.TruckDriving"], function() { //加载驾车服务插件
var drivingOptions = {
//驾车策略,包括 LEAST_TIMELEAST_FEE, LEAST_DISTANCE,REAL_TRAFFIC
policy: AMap.DrivingPolicy.LEAST_TIME
};
driving = new AMap.TruckDriving(drivingOptions);
AMap.Event.addListener(driving, "complete", driving_CallBack); //返回导航查询结果
//根据起终点坐标规划驾车路线
MDrive.search(new AMap.LngLat(116.379018, 39.865026), new AMap.LngLat(116.42732, 39.903752));
});
```
```javascript
var TruckDriving;
mapObj.plugin(["AMap.TruckDriving"], function() { //加载驾车服务插件
var TruckDrivingOptions = {
//驾车策略,包括 LEAST_TIMELEAST_FEE, LEAST_DISTANCE,REAL_TRAFFIC
policy: AMap.TruckDrivingPolicy.LEAST_TIME
};
TruckDriving = new AMap.TruckDriving(TruckDrivingOptions);
AMap.Event.addListener(TruckDriving, "complete", TruckDriving_CallBack); //返回导航查询结果
//根据起终点坐标规划驾车路线
MDrive.search(new AMap.LngLat(116.379018, 39.865026), new AMap.LngLat(116.42732, 39.903752));
});
```
### clear
清除搜索结果
### search
根据起点、终点和途经点(可选)坐标或名称,实现驾车路线规划,途经点通过opts设定
#### Parameters
- `locations` **Array<Truck~Location>** 途经点列表
- `locations.location` **Truck~Location** 某一个途经点
- `locations.location.lnglat` **\[number, number]** 经纬度
- `locations.location.pid` **string** POI ID,可缺省
- `locations.location.type` **string** POI类型,可缺省
- `callback` **DrivingCallback** status为complete时,result为TruckResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
### search
根据起点、终点和途经点(可选)坐标或名称,实现驾车路线规划,途经点通过opts设定
#### Parameters
- `points` **Array<Truck~Path>** 途经点列表 例如 : [{keyword:'北京站',city:'010'},//起点
{keyword:'北京西站',city:'010'},//途径
{keyword:'北京大学',city:'010'}//终点
]
- `points.point` **Truck~Path** 某个途经点
- `points.point.keyworkd` **string** 关键字
- `points.point.city` **string** 城市code
- `callback` **DrivingCallback** status为complete时,result为TruckResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
### setProvinceAndNumber
修改车牌号
#### Parameters
- `province` **string**
- `number` **number**
### setPolicy
设置驾车路线规划策略,参考opts.policy
#### Parameters
- `policy` **Object** 驾车路线规划策略,参考opts.policy
## Walking
步行路线规划服务,提供起、终点坐标的驾车导航路线[查询功能][119]。AMap. Driving构造函数的参数为 DrivingOptions 对象。DrivingOptions 允许设置驾车策略和返回信息详略。用户可以通过自定义回调函数取回并显示查询结果。若服务请求失败,系统将返回[错误信息][116]
### Parameters
- `opts` **WalkingOptions** 参数信息
- `opts.map` **Map** AMap.Map对象, 展现结果的地图实例。当指定此参数后,搜索结果的标注、线路等均会自动添加到此地图上。可选
- `opts.panel` **(string \| HTMLElement)?** 结果列表的HTML容器id或容器元素,提供此参数后,结果列表将在此容器中进行展示。可选
- `opts.hideMarkers` **boolean** 设置隐藏路径规划的起始点图标
设置为true:隐藏图标;设置false:显示图标\\n默认值为:false
显示绿色代表畅通,黄色代表轻微拥堵,红色代表比较拥堵,灰色表示无路况信息。 (optional, default `false`)
- `opts.isOutline` **boolean?** 使用map属性时,绘制的规划线路是否显示描边。缺省为true
- `opts.outlineColor` **string?** 使用map属性时,绘制的规划线路的描边颜色。缺省为'white'
- `opts.autoFitView` **boolean?** 用于控制在路径规划结束后,是否自动调整地图视野使绘制的路线处于视口的可见范围
### Examples
```javascript
var mwalk;
mapObj.plugin(["AMap.Walking"], function() { //加载步行导航插件
mwalk = new AMap.Walking (); //构造步行导航类
AMap.event.addListener(mwalk, "complete", walking_CallBack); //返回导航查询结果
//根据起、终点坐标规划步行路线
mwalk.search(new AMap.LngLat(116.379018, 39.865026), new AMap.LngLat(116.42732, 39.903752));
});
```
```javascript
var mwalk;
mapObj.plugin(["AMap.Walking"], function() { //加载步行导航插件
mwalk = new AMap.Walking (); //构造步行导航类
AMap.Event.addListener(mwalk, "complete", walking_CallBack); //返回导航查询结果
//根据起、终点坐标规划步行路线
mwalk.search(new AMap.LngLat(116.379018, 39.865026), new AMap.LngLat(116.42732, 39.903752));
});
```
### clear
清除搜索的结果
### search
根据起点、终点坐标,实现步行路线规划
#### Parameters
- `origin` **LngLat** 起点经纬度
- `destination` **LngLat** 终点经纬度
- `callback` **WalkingCallback** status为complete时,result为 WalkingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
### search
根据起点、终点名称,实现步行路线规划
#### Parameters
- `points` **Array<Object>** 终点经纬度points为起点、终点和途经点(可选)名称及对应城市的数组,例如:
[{keyword:‘方恒国际中心A座’},{keyword:‘望京站’}]
系统取数组第一个元素和最后一个元素作为起点和终点,中间元素为途经点;
- `callback` **WalkingCallback** status为complete时,result为 WalkingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
## WalkingCallback
Walking.search 的回调函数
Type: Function
### Parameters
- `status` **string** status为complete时,result为 WalkingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果
- `result` **(info | WalkingResult)**
## WalkingResult
WalkingResult 对象
Type: Object
### Properties
- `info` **string** 成功状态说明
- `origin` **LngLat** 步行规划起点坐标
- `destination` **LngLat** 步行规划终点坐标
- `start` **Poi** 步行规划起点
- `end` **Poi** 步行规划终点
- `count` **number** 步行导航路段数目
- `routes` **Array<WalkRoute>** 步行规划路线列表
- `routes.distance` **number** 起点到终点总步行距离,单位:米
- `routes.time` **number** 步行时间预计,单位:秒
- `routes.steps` **Array<WalkStep>** 路段列表,以道路名称作为分段依据,将整个步行导航方案分隔成若干路段
- `routes.steps.instruction` **string** 步行子路段描述,规则:沿 road步行 distance 米 action,例:”沿北京站街步行351米”
- `routes.steps.distance` **number** 步行子路段距离,单位:米
- `routes.steps.time` **number** 步行子路段预计使用时间,单位:秒
- `routes.steps.path` **Array<LngLat>** 步行子路段坐标集合
- `routes.steps.road` **string** 道路
- `routes.steps.action` **string** 本步行子路段完成后动作
- `routes.steps.assist_action` **string** 步行子路段完成后辅助动作,一般为到达某个公交站点或目的地时返回
## Transfer
公交换乘服务,提供起始点公交路线规划服务,目前公交换乘仅支持同一城市的公交路线规划,跨城市出行规划请参考驾车导航查询。公交换乘查询返回结果整合步行信息,若换乘路段(Segment)换乘类型为地铁 “SUBWAY”,则至少包含一条地铁口信息(SubwayEntrance)。用户可以通过自定义回调函数取回并显示查询结果。若服务请求失败,系统将返回错误信息。
### Parameters
- `opts` **DrivingOptions** 参数信息
- `opts.map` **Map** AMap.Map对象, 展现结果的地图实例。当指定此参数后,搜索结果的标注、线路等均会自动添加到此地图上。可选
- `opts.city` **string** 公交换乘的城市,支持城市名称、城市区号、电话区号,此项为必填
- `opts.policy` **number** [公交换乘策略strategy][122]
- `opts.nightflag` **boolean** 是否计算夜班车,默认为不计算。true:计算,false:不计算 (optional, default `false`)
- `opts.extensions` **string** 默认值:base,返回基本地址信息\\n当取值为:all,返回DriveStep基本信息+DriveStep详细信息 (optional, default `'base'`)
- `opts.panel` **(string \| HTMLElement)?** 结果列表的HTML容器id或容器元素,提供此参数后,结果列表将在此容器中进行展示。可选
- `opts.hideMarkers` **boolean** 设置隐藏路径规划的起始点图标
设置为true:隐藏图标;设置false:显示图标\\n默认值为:false (optional, default `false`)
- `opts.isOutline` **boolean?** 使用map属性时,绘制的规划线路是否显示描边。缺省为true
- `opts.outlineColor` **string?** 使用map属性时,绘制的规划线路的描边颜色。缺省为'white'
- `opts.autoFitView` **boolean?** 用于控制在路径规划结束后,是否自动调整地图视野使绘制的路线处于视口的可见范围
### Examples
```javascript
var trans;
mapObj.plugin(["AMap.Transfer"], function() { //加载公交换乘插件
transOptions = {
city: '北京市', //公交城市
policy: AMap.TransferPolicy.LEAST_TRANSFER //乘车策略
};
trans = new AMap.Transfer (transOptions); //构造公交换乘类
AMap.Event.addListener(trans, "complete", trans_CallBack); //返回导航查询结果
AMap.Event.addListener(trans, "error", function(e){alert(e.info);}); //返回错误信息
//根据起、终点坐标查询公交换乘路线
trans.search(new AMap.LngLat(116.379018, 39.865026), new AMap.LngLat(116.42732, 39.903752));
});
```
### search
根据起点和终点坐标,进行公交换乘查询
#### Parameters
- `origin` **LngLat** 起点经纬度
- `destination` **LngLat** 终点经纬度
- `callback` **TransferCallback** status为complete时,result为DrivingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
### search
根据起点和终点坐标,进行公交换乘查询
#### Parameters
- `points` **Array<Object>** 当根据起、终点名称查询时,point为包含起点、终点的数组,例:
[{keyword:‘北京南站’},{keyword:‘北京西站’}]
当数组超过两个元素时,取前两个元素为起点、终点,其余元素忽略
- `callback` **TransferCallback** status为complete时,result为DrivingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
### leaveAt
设置公交路径规划出发时间
#### Parameters
- `time` **string**
- `date` **string**
### clear
清除结果显示
### setPolicy
设置公交换乘策略
#### Parameters
- `policy` **TransferPolicy** 公交换乘策略
### setCity
设置公交换乘查询的城市
#### Parameters
- `city` **String** 城市
### setCityd
设置公交换乘查询的目的地城市
#### Parameters
- `cityd` **String** 城市
## TransferCallback
Transfer.search 的回调函数 [相关示例][124]
Type: Function
### Parameters
- `status` **string** 当status为complete时,result为TransferResult
当status为error时,result为错误信息info
当status为no_data时,代表检索返回0结果
- `result` **(info | TransferResult)**
## TransferResult
TransferResult 对象 [详细文档][122],查阅rest接口 '返回结果参数说明'
Type: Object
## Riding
骑行路线规划服务,提供起、终点坐标的驾车导航路线[查询功能][119]。AMap. Driving构造函数的参数为 DrivingOptions 对象。DrivingOptions 允许设置驾车策略和返回信息详略。用户可以通过自定义回调函数取回并显示查询结果。若服务请求失败,系统将返回[错误信息][116]
### Parameters
- `opts` **RidingOptions** 参数信息
- `opts.map` **Map** AMap.Map对象, 展现结果的地图实例。当指定此参数后,搜索结果的标注、线路等均会自动添加到此地图上。可选
- `opts.policy` **number** 骑行路线规划策略;默认值:0可选值为:
0:推荐路线及最快路线综合
1:推荐路线
2:最快路线 (optional, default `0`)
- `opts.panel` **(string \| HTMLElement)?** 结果列表的HTML容器id或容器元素,提供此参数后,结果列表将在此容器中进行展示。可选
- `opts.hideMarkers` **boolean** 设置隐藏路径规划的起始点图标
设置为true:隐藏图标;设置false:显示图标\\n默认值为:false
显示绿色代表畅通,黄色代表轻微拥堵,红色代表比较拥堵,灰色表示无路况信息。 (optional, default `false`)
- `opts.isOutline` **boolean?** 使用map属性时,绘制的规划线路是否显示描边。缺省为true
- `opts.outlineColor` **string?** 使用map属性时,绘制的规划线路的描边颜色。缺省为'white'
- `opts.autoFitView` **boolean?** 用于控制在路径规划结束后,是否自动调整地图视野使绘制的路线处于视口的可见范围
### Examples
```javascript
var mwalk;
mapObj.plugin(["AMap.Riding"], function() { //加载步行导航插件
mwalk = new AMap.Riding (); //构造步行导航类
AMap.Event.addListener(mwalk, "complete", riding_CallBack); //返回导航查询结果
//根据起、终点坐标规划步行路线
mwalk.search(new AMap.LngLat(116.379018, 39.865026), new AMap.LngLat(116.42732, 39.903752));
});
```
### clear
清除搜索的结果
### setPolicy
骑行路线规划策略
#### Parameters
- `policy` **number** 可选值为:
0:推荐路线及最快路线综合
1:推荐路线
2:最快路线
### search
根据起点、终点坐标,实现骑行路线规划
#### Parameters
- `origin` **LngLat** 起点经纬度
- `destination` **LngLat** 终点经纬度
- `callback` **RidingCallback** status为complete时,result为 RidingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
### search
根据起点、终点名称,实现骑行路线规划
#### Parameters
- `points` **Array<Object>** 包含起点、终点的数组,例:[{keyword:‘方恒国际中心A座’},{keyword:‘望京站’}]
当数组超过两个元素时,取前两个元素为起点、终点,其余元素忽略;
- `callback` **RidingCallback** status为complete时,result为 RidingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果。
## RidingCallback
Riding.search 的回调函数
Type: Function
### Parameters
- `status` **string** status为complete时,result为 RidingResult;当status为error时,result为错误信息info;当status为no_data时,代表检索返回0结果
- `result` **(info | RidingResult)**
## RidingResult
RidingResult [详细文档][128],查阅rest接口'返回结果参数说明'
Type: Object
## DragRoute
### Parameters
- `map` **Map** 指定的地图对象
- `path` **Array<LngLat>** 导航的起点、途经点、终点的经纬度坐标数组
- `policy` **String** [指定驾车策略][110]
- `opts` **DragRouteOptions** 配置项
- `opts.polyOption` **PolylineOptions?** 设置拖拽路线插件的路线属性对象,包括线样式、宽度、颜色等,参考PolylineOptions列表
- `opts.startMarkerOptions` **MarkerOptions?** 设置拖拽路线插件起点点标记属性对象,包括点标记样式、大小等,参考MarkerOptions列表
- `opts.midMarkerOptions` **MarkerOptions?** 设置拖拽路线插件途经点点标记属性对象,包括点标记样式、大小等,参考MarkerOptions列表
- `opts.endMarkerOptions` **MarkerOptions?** 设置拖拽路线插件终点点标记属性对象,包括点标记样式、大小等,参考MarkerOptions列表
- `opts.showTraffic` **boolean** 设置显示实时路况信息,true:路线中显示实时路况信息,false:关闭实时路况信息。 默认值:true (optional, default `true`)
### Examples
```javascript
var arr = new Array();//经纬度坐标数组
arr.push(new AMap.LngLat("116.403322","39.920255")); //初始的导航起点
arr.push(new AMap.LngLat("116.420703","39.897555")); //初始的导航途经点
arr.push(new AMap.LngLat("116.430703","39.897555")); //初始的导航途经点
arr.push(new AMap.LngLat("116.410703","39.897555")); //初始的导航终点
AMap.plugin(['AMap.DragRoute'],function(){
dragRoute = new AMap.DragRoute(mapObj, arr, AMap.DrivingPolicy.LEAST_FEE);
dragRoute.search(); //查询导航路径并开启拖拽导航
});
```
### search
开始路径导航。支持鼠标拖拽导航路径节点,更改途经点时,系统实时重新计算并显示导航路径
### getWays
返回除了起点和终点之外的所有点返回导航的所有途经点,即所有途径点的坐标数组
Returns **Array<LngLat>** 所有途经点坐标
### getRoute
返回当前导航路径,即导航路径的经纬度坐标数组
Returns **Array<LngLat>** 当前导航路径
### destroy
销毁拖拽导航插件。
## DragRouteTruck
可拖拽货车路径规划
### Parameters
- `map` **Map** 指定的地图对象
- `opts` **DragRouteTruckOptions** 配置项
- `opts.polyOption` **PolylineOptions?** 设置拖拽路线插件的路线属性对象,包括线样式、宽度、颜色等,参考PolylineOptions列表
- `opts.startMarkerOptions` **MarkerOptions?** 设置拖拽路线插件起点点标记属性对象,包括点标记样式、大小等,参考MarkerOptions列表
- `opts.midMarkerOptions` **MarkerOptions?** 设置拖拽路线插件途经点点标记属性对象,包括点标记样式、大小等,参考MarkerOptions列表
- `opts.endMarkerOptions` **MarkerOptions?** 设置拖拽路线插件终点点标记属性对象,包括点标记样式、大小等,参考MarkerOptions列表
- `opts.showTraffic` **boolean** 设置显示实时路况信息,true:路线中显示实时路况信息,false:关闭实时路况信息。 默认值:true (optional, default `true`)
- `opts.policy` **number?** 驾车路线规划策略
1躲避拥堵
2不走高速
3避免收费
4躲避拥堵且不走高速
5避免收费且不走高速
6躲避拥堵且避免收费
7躲避拥堵且避免收费且不走高速
8高速优先
9躲避拥堵且高速优先
- `opts.size` **number** 车型大小,必填,1-4分别对应小型至大型
- `opts.width` **number** 宽度,缺省2.5米 (optional, default `2.5`)
- `opts.height` **number** 高度,缺省1.6米 (optional, default `1.6`)
- `opts.load` **number** 载重,缺省0.9t (optional, default `0.9`)
- `opts.weight` **number** 自重,缺省10t (optional, default `10`)
- `opts.axlesNum` **number** 轴数,缺省2轴 (optional, default `2`)
- `opts.extensions` **string** 默认值:base,返回基本地址信息\\n当取值为:all,返回DriveStep基本信息+DriveStep详细信息 (optional, default `'base'`)
- `opts.panel` **(string \| HTMLElement)?** 结果列表的HTML容器id或容器元素,提供此参数后,结果列表将在此容器中进行展示。可选
- `opts.hideMarkers` **boolean** 设置隐藏路径规划的起始点图标
设置为true:隐藏图标;设置false:显示图标\\n默认值为:false (optional, default `false`)
- `opts.showTraffic` **boolean?** 设置是否显示实时路况信息,默认设置为true。
显示绿色代表畅通,黄色代表轻微拥堵,红色代表比较拥堵,灰色表示无路况信息。
- `opts.province` **string?** 车牌省份的汉字缩写,用于判断是否限行,与number属性组合使用,可选。例如:京
- `opts.number` **string?** 除省份之外车牌的字母和数字,用于判断限行相关,与province属性组合使用,可选。例如:NH1N11
- `opts.isOutline` **boolean?** 使用map属性时,绘制的规划线路是否显示描边。缺省为true
- `opts.outlineColor` **string?** 使用map属性时,绘制的规划线路的描边颜色。缺省为'white'
- `opts.autoFitView` **boolean?** 用于控制在路径规划结束后,是否自动调整地图视野使绘制的路线处于视口的可见范围
- `opts.cartype` **number** 车辆类型 0:普通货车(默认值)1:纯电动货车 2:插电混动货车 (optional, default `0`)
- `opts.showpolyline` **number** 是否返回路线数据 当取值为1时,steps与tmcs下的polyline数据会正常返回;当取值为0时,steps与tmcs下的polyline数据为空。 (optional, default `1`)
- `opts.nosteps` **number** 是否返回steps字段内容 当取值为0时,steps字段内容正常返回;当取值为1时,steps字段内容为空。 (optional, default `1`)
- `opts.autoRefresh` **boolean** 是否拖拽后自动更新驾车轨迹 (optional, default `true`)
- `opts.refreshTime` **number** 拖拽后自动更新的延迟时间 (optional, default `300`)
- `opts.apiVersion` **number** 货车接口版本支持 'v4','v5' (optional, default `'v4'`)
- `opts.showFields` **string?** 仅 v5货车接口版本支持 1、具体可指定返回的字段类请见下方返回结果说明中的“show_fields”内字段类型;
2、多个字段间采用“,”进行分割;
3、show_fields未设置时,只返回基础信息类内字段;
4、目前取值支持以下四种:"toll_gate""cameras""general""incident"
"toll_gate":收费站信息
"cameras":电子眼信息
"general":交通设施信息
"incident":交通事件信息
### Examples
```javascript
var arr = new Array();//经纬度坐标数组
path.push({ lnglat: [116.303843, 39.983412] });//起点
path.push({ lnglat: [116.321354, 39.896436] });//途径
path.push({ lnglat: [116.407012, 39.992093] });//终点
AMap.plugin(['AMap.DragRouteTruck'],function(){
dragRoute = new AMap.DragRouteTruck(mapObj, opts);
dragRoute.search(path); //查询导航路径并开启拖拽导航
});
```
### setAvoidPolygons
设置避让区域,最大支持三个避让区域,参数为LngLat的二维数组
#### Parameters
- `areas` **Array<Array<LngLatLike>>**
### clearAvoidPolygons
清除避让区域
### getAvoidPolygons
获取避让区域,返回LngLat的二维数组
Returns **Array<Array<LngLat>>** 避让区域
### search
开始路径导航。支持鼠标拖拽导航路径节点,更改途经点时,系统实时重新计算并显示导航路径
#### Parameters
- `locations` : Array<{lnglat:LngLatLike}>
### updatePath
手动更新路径。设置 autoRefresh 为 false 之后,通过调用这个方法来手动更新路径规划
### getWays
返回除了起点和终点之外的所有点返回导航的所有途经点,即所有途径点的坐标数组
Returns **Array<LngLat>** 所有途经点坐标
### getRoute
返回当前导航路径,即导航路径的经纬度坐标数组
Returns **Array<LngLat>** 当前导航路径
### destroy
销毁拖拽导航插件。
### setOption
修改配置项
#### Parameters
- `opts` **Object**
- `opts.policy` **number?** 驾车路线规划策略
1躲避拥堵
2不走高速
3避免收费
4躲避拥堵且不走高速
5避免收费且不走高速
6躲避拥堵且避免收费
7躲避拥堵且避免收费且不走高速
8高速优先
9躲避拥堵且高速优先
- `opts.size` **number** 车型大小,必填,1-4分别对应小型至大型
- `opts.width` **number** 宽度,缺省2.5米 (optional, default `2.5`)
- `opts.height` **number** 高度,缺省1.6米 (optional, default `1.6`)
- `opts.load` **number** 载重,缺省0.9t (optional, default `0.9`)
- `opts.weight` **number** 自重,缺省10t (optional, default `10`)
- `opts.axlesNum` **number** 轴数,缺省2轴 (optional, default `2`)
- `opts.extensions` **string** 默认值:base,返回基本地址信息\\n当取值为:all,返回DriveStep基本信息+DriveStep详细信息 (optional, default `'base'`)
- `opts.panel` **(string \| HTMLElement)?** 结果列表的HTML容器id或容器元素,提供此参数后,结果列表将在此容器中进行展示。可选
- `opts.hideMarkers` **boolean** 设置隐藏路径规划的起始点图标
设置为true:隐藏图标;设置false:显示图标\\n默认值为:false (optional, default `false`)
- `opts.showTraffic` **boolean?** 设置是否显示实时路况信息,默认设置为true。
显示绿色代表畅通,黄色代表轻微拥堵,红色代表比较拥堵,灰色表示无路况信息。
- `opts.province` **string?** 车牌省份的汉字缩写,用于判断是否限行,与number属性组合使用,可选。例如:京
- `opts.number` **string?** 除省份之外车牌的字母和数字,用于判断限行相关,与province属性组合使用,可选。例如:NH1N11
- `opts.isOutline` **boolean?** 使用map属性时,绘制的规划线路是否显示描边。缺省为true
- `opts.outlineColor` **string?** 使用map属性时,绘制的规划线路的描边颜色。缺省为'white'
- `opts.autoFitView` **boolean?** 用于控制在路径规划结束后,是否自动调整地图视野使绘制的路线处于视口的可见范围
- `opts.cartype` **number** 车辆类型 0:普通货车(默认值)1:纯电动货车 2:插电混动货车 (optional, default `0`)
- `opts.showpolyline` **number** 是否返回路线数据 当取值为1时,steps与tmcs下的polyline数据会正常返回;当取值为0时,steps与tmcs下的polyline数据为空。 (optional, default `1`)
- `opts.nosteps` **number** 是否返回steps字段内容 当取值为0时,steps字段内容正常返回;当取值为1时,steps字段内容为空。 (optional, default `1`)
## GraspRoad
**Extends AMap.Event**
轨迹纠偏服务插件。用于将一组带方向的、可能偏离道路的经纬度轨迹,纠正为准确沿着道路的一条经纬度路径。比如根据间隔采集的车辆位置和朝向信息生成行驶轨迹
### driving
用于驾车轨迹的纠偏。
#### Parameters
- `OriginPath` **Array<Object>**
- `OriginPath.x` **number** 经度
- `OriginPath.y` **number** 纬度
- `OriginPath.ag` **number** 与正北方向的顺时针夹角,[ 0, 360 ]
- `OriginPath.tm` **number** 轨迹点采集的时间,以s为单位 OriginPath数组第一个元素的tm值为从1970年开始的unix的时间戳,精确到秒。
其余元素的tm值为当前采集点的时间减去第一个元素的采集时间的差值
- `OriginPath.sp` **number** 轨迹点的速度,单位 km/h,小数、整数均可
- `callback` **GraspRoadCallback** 回调函数
## GraspRoadCallback
Type: Function
### Parameters
- `err` **Object** 正确时为空
- `GraspedPath` **Object** 返回数据,[详查rest文档][131]
- `GraspedPath.distance` **number** 总距离
- `GraspedPath.data` **Object**
- `GraspedPath.data.points` **Array<Object>** 轨迹点数据
- `GraspedPath.data.points.x` **number** 经度
- `GraspedPath.data.points.x` **number** 纬度