lbs.client.amap.api.direction 源代码

# encoding: utf-8
from __future__ import absolute_import, unicode_literals

from optionaldict import optionaldict

from . import base


[文档]class Direction(base.AmapBaseApi): """ 路径规划 https://lbs.amap.com/api/webservice/guide/api/direction """
[文档] def walking(self, origin, destination): """ 步行路径规划 :param origin: 出发点 :param destination: 目的地 """ origin, num = self._parse_location(origin, False) if num != 1: raise ValueError("出发点解析失败") destination, num = self._parse_location(destination, False) if num != 1: raise ValueError("目的地解析失败") data = optionaldict({ "origin": origin, "destination": destination, }) self._get("/v3/direction/walking", data)
[文档] def transit_integrated(self, origin, destination, city, cityd=None, extensions="base", strategy=0, nightflag=0, date=None, time=None): """ 公交路径规划 :param origin: 出发点 :param destination: 目的地 :param city: 城市/跨城规划时的起点城市 :param cityd: 跨城公交规划时的终点城市 :param extensions: 返回结果详略 :param strategy: 公交换乘策略 :param nightflag: 是否计算夜班车 :param date: 出发日期 :param time: 出发时间 """ origin, num = self._parse_location(origin, False) if num != 1: raise ValueError("出发点解析失败") destination, num = self._parse_location(destination, False) if num != 1: raise ValueError("目的地解析失败") data = optionaldict({ 'origin': origin, 'destination': destination, 'city': city, 'cityd': cityd, 'extensions': extensions, 'strategy': strategy, 'nightflag': nightflag, 'date': date, 'time': time, }) return self._get("/v3/direction/transit/integrated", data)
[文档] def driving(self, origin, destination, originid=None, destinationid=None, origintype=None, destinationtype=None, strategy=0, waypoints=None, avoidpolygons=None, avoidroad=None, province=None, number=None, cartype=0, ferry=0, roadaggregation=False, nosteps=0, extensions='base'): """ 驾车路径规划 :param origin: 出发点 :param destination: 目的地 :param originid: 出发点poiid :param destinationid: 目的地poiid :param origintype: 起点的poi类别 :param destinationtype: 终点的poi类别 :param strategy: 驾车选择策略 :param waypoints: 途经点 :param avoidpolygons: 避让区域 :param avoidroad: 避让道路名 :param province: 用汉字填入车牌省份缩写,用于判断是否限行 :param number: 填入除省份及标点之外,车牌的字母和数字(需大写)。用于判断限行相关。 :param cartype: 车辆类型 :param ferry: 在路径规划中,是否使用轮渡 :param roadaggregation: 是否返回路径聚合信息 :param nosteps: 是否返回steps字段内容 :param extensions: 返回结果控制 """ origin, num = self._parse_location(origin, False) if not 0 < num <= 3: raise ValueError("出发点解析失败") destination, num = self._parse_location(destination, False) if num != 1: raise ValueError("目的地解析失败") data = optionaldict({ 'origin': origin, 'destination': destination, 'originid': originid, 'destinationid': destinationid, 'origintype': origintype, 'destinationtype': destinationtype, 'strategy': strategy, 'waypoints': waypoints, 'avoidpolygons': avoidpolygons, 'avoidroad': avoidroad, 'province': province, 'number': number, 'cartype': cartype, 'ferry': ferry, 'roadaggregation': 'true' if roadaggregation else 'false', 'nosteps': nosteps, 'extensions': extensions, }) return self._get("/v3/direction/driving", data)
def bicycling(self, origin, destination, ): pass def truck(self, origin, destination, ): pass def distance(self, origin, destination, ): pass