用于对 OSM 数据进行简单路由的库
项目描述
pyroutelib3
pyroutelib2的延续。Python 3 中 OSM 数据的路由。
OSM 数据块存储在tilescache/
用法
from pyroutelib3 import Router # Import the router
router = Router("<transport mode>") # Initialise it
start = router.findNode(lat, lon) # Find start and end nodes
end = router.findNode(lat, lon)
status, route = router.doRoute(start, end) # Find the route - a list of OSM nodes
if status == 'success':
routeLatLons = list(map(router.nodeLatLon, route)) # Get actual route coordinates
交通方式:汽车、自行车、步行、马、电车、火车
状态:成功、no_route、give_up
离线路由
如果要离线使用 pyroutelib3 或在自定义 .osm 文件上使用,只需向 Router 添加第二个参数:特定 osm 文件的路径。
from pyroutelib3 import Router
router = Router("<transport mode>", "<path-to-.osm-file>")
# Continue on doing like in the example above
从 1.5 开始,pyroutelib3 现在接受其他文件格式,然后是 OSM XML:.osm.gz、.osm.bz2 和 .osm.pbf。但是,必须通知 pyroutelib3 提供了哪种文件,如下所示:
from pyroutelib3 import Router
router = Router("<transport mode>", "<path-to-file>", localfileType="<xml/gz/bz2/pbf>")
更多信息
有关使用 pyroutelib3 的更多高级信息(例如自定义方式成本),请查看 wiki:https ://github.com/MKuranowski/pyroutelib3/wiki 。
来自 pyroutelib2 的更改
- 移植到 python3
- 使 pyroutelib 成为一个包
- 自定义传输类型
- 处理访问密钥
- 转弯限制
- 离线路由器(仅加载本地 osm 文件)
执照
pyroutelib3 在 GNU GPL v3 下分发。
版权所有 2007,Oliver White 修改:版权所有 2017-2018,Mikolaj Kuranowski - 基于https://github.com/gaulinmp/pyroutelib2
pyroutelib3 是免费软件:您可以根据自由软件基金会发布的 GNU 通用公共许可条款重新分发和/或修改它;许可证的第 3 版,或(由您选择)任何更高版本。
pyroutelib3 的分发是希望它有用,但没有任何保证;甚至没有对适销性或特定用途适用性的默示保证。有关详细信息,请参阅 GNU 通用公共许可证。
您应该已经收到了 GNU 通用公共许可证的副本以及 pyroutelib3。如果没有,请参阅http://www.gnu.org/licenses/。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
内置分布
pyroutelib3-1.7.2.tar.gz的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | c8034b85c56f3cf89cee103f909ee1553fbef1818502127b72448654aca863ff |
|
| MD5 | 2fc425f560adb9629e763cd0c9bd8741 |
|
| 布莱克2-256 | 0b342ae2446ae273a341842a057abe3ba110627d82167413c7bf0e138bc4af0a |
pyroutelib3-1.7.2 -py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 4b50dfcce7e6b469fc7e90f9d67397acb3a07e90939c8ecd8e6a3f84d1244065 |
|
| MD5 | 53acc7cd457d8fa03a02e2c7338c5537 |
|
| 布莱克2-256 | ce1132a4f4c5fbd2c5ed1f2361c8e724d06f92a0bf9ed879e2f60f328a2c9068 |