轻量行驶里程分析服务是一类Web API接口服务,用于分析行程轨迹相关的时空信息,目前支持分析行程的道路等级,反映车辆在各等级道路上的行驶里程。
开发者通过车辆的行驶轨迹,自动分析其途经道路的等级,返回在不同等级道路上的行驶里程。
https://api.map.baidu.com/api_trackanalysis/v1/roadgrade?
//POST请求
参数名称 | 参数含义 | 类型 | 必选 | 备注 | ||
---|---|---|---|---|---|---|
ak | 用户的AK,授权使用 | string | 是 | |||
point_list | 轨迹点序列 | string | 是 | 最多不能超过2000个轨迹点,且轨迹里程不超过500公里,point_list格式为json, 其中每个point必须包含: | ||
latitude | double | 是 | 纬度,支持小数点后6位 | |||
longitude | double | 是 | 经度,支持小数点后6位 | |||
coord_type_input | string | 是 | 轨迹点的坐标系,支持以下值:bd09ll(百度经纬度坐标)、gcj02(国测局加密坐标)、wgs84(GPS所采用的坐标系) | |||
loc_time | int | 是 | 轨迹点的定位时间,使用UNIX时间戳 | |||
speed | double | 否 | 轨迹点的速度,单位:公里/小时 | |||
direction | int | 否 | 轨迹点的方向,单位:范围为[0,359],0度为正北方向,顺时针方向递增 | |||
height | int | 否 | 轨迹点的高度,单位:米 | |||
radius | int | 否 | 定位时返回的定位精度,单位:米 | |||
rectify_option | 纠偏设置 | string(0-128) | 否 | ”竖线相隔。默认值为: | ||
supplement_mode | 里程补偿设置 | string(0-128) | 否 | 默认值:no_supplement | ||
sn | 用户的权限签名 | string | 否 | 若用户所用ak的校验方式为sn校验时该参数必须。 sn校验说明 |
参数名 | 含义 | 类型 | 备注 | ||
---|---|---|---|---|---|
status | 状态码 | int | 详见状态码定义 | ||
message | 响应信息 | string | 对status的中文描述 | ||
total | 忽略掉page_index,page_size后的轨迹点数量 | 代表一共有多少条符合条件的track | |||
distance | 此段轨迹的里程数 | double | t符合条件的所有轨迹点总里程,单位:米 | ||
road_grade_info | 道路等级信息 | ||||
road_grade | string | 道路等级,包括: ROAD_GRADE_VILLAGE 乡镇村道 ROAD_GRADE_SIDEWALK 步行道路 ROAD_GRADE_PROVINCIAL 省道 ROAD_GRADE_OTHER 其它道路 ROAD_GRADE_NINE 特服道路 ROAD_GRADE_NATIONAL 国道 ROAD_GRADE_HIGHWAY 高速道路 ROAD_GRADE_FERRY 轮渡 ROAD_GRADE_COUNTY 县道 ROAD_GRADE_CITYHIGHWAY 城市高速 | |||
distance | double | 该道路等级对应的轨迹里程,单位:米 |
输入AK可生成包含IP/SN校验方式的代码
<?php// 此处填写你在控制台-应用管理-创建应用后获取的AK$ak = '您的AK';// 发起一个http post请求,并返回请求的结果// $url字段为请求的地址// $param字段为请求的参数function request_post($url = '', $param = array()) {if (empty($url) || empty($param)) {return false;}$curl = curl_init(); // 初始化curlcurl_setopt($curl, CURLOPT_URL, $url); // 设置指定urlcurl_setopt($curl, CURLOPT_TIMEOUT, 1000); // 设置超时时间1秒curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // curl不直接输出到屏幕curl_setopt($curl, CURLOPT_HEADER, 0); // 设置header// 以下两行不对https做证书及服务器校验,真实项目中请根据实际情况调整。curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);curl_setopt($curl, CURLOPT_POST, 1); // 设置POSTcurl_setopt($curl, CURLOPT_POSTFIELDS, $param);$data = curl_exec($curl); // 运行curlif (!$data) {print("an error occured in function request_post(): " . curl_error($curl) . "\n");}curl_close($curl);return $data;}// 请求地址$url = 'https://api.map.baidu.com/api_trackanalysis/v1/roadgrade';// 构造请求$param['ak'] = $ak;$param['point_list'] = '['.'{"latitude":39.22682,"coord_type_input":"gcj02","longitude":117.283027,"loc_time":1632817534},'.'{"latitude":39.223979,"coord_type_input":"gcj02","longitude":117.285641,"loc_time":1632817592},'.'{"latitude":39.220022,"coord_type_input":"gcj02","longitude":117.285826,"loc_time":1632817652},'.'{"latitude":39.213075,"coord_type_input":"gcj02","longitude":117.281162,"loc_time":1632817712},'.'{"latitude":39.207602,"coord_type_input":"gcj02","longitude":117.270462,"loc_time":1632817773}'.']';$param['rectify_option'] = 'transport_mode:auto|denoise_grade:1|vacuate_grade:1';// 只支持x-www-form-urlencoded格式的请求$param = http_build_query($param);// 发送请求$res = request_post($url, $param);// 将原始返回的结果打印出来print("请求的原始返回结果为:\n");print($res . "\n");?>
{"status": 0,"message": "成功","total":19,"distance":2982.47,"road_grade_info":[{"road_grade":"其它道路","distance":243.99},{"road_grade":"县道","distance":455.08},{"road_grade":"高速道路","distance":2283.39}]}
参数 | 值 | 备注 | 必选 |
---|---|---|---|
point_list | 轨迹点序列 | 否 |
ak:<您的ak>point_list:[{"latitude":39.22682,"coord_type_input":"gcj02","longitude":117.283027,"loc_time":1632817534},{"latitude":39.223979,"coord_type_input":"gcj02","longitude":117.285641,"loc_time":1632817592},{"latitude":39.220022,"coord_type_input":"gcj02","longitude":117.285826,"loc_time":1632817652},{"latitude":39.213075,"coord_type_input":"gcj02","longitude":117.281162,"loc_time":1632817712},{"latitude":39.207602,"coord_type_input":"gcj02","longitude":117.270462,"loc_time":1632817773}]
上一篇
下一篇
本篇文章对您是否有帮助?