OSMSharp -获取实际道路的信息

本文关键字:道路 信息 获取 OSMSharp | 更新日期: 2023-09-27 18:15:35

我正试图为Android (c# - Xamarin)编写一个应用程序,我加载了一个PBF文件,我可以找到两个地方(坐标)之间的路线。但是我不知道怎样才能得到我实际所在位置的信息(通过坐标)。

我想知道我所在的街道(街道)的情况,例如街道名称、限速等。

我没有找到关于这个的任何东西。我希望有人知道怎么做。

OSMSharp -获取实际道路的信息

免责声明:我是OsmSharp/Itinero的原作者。

你可以使用下面的代码来获取给定位置边的信息:

        var routerDb = RouterDb.Deserialize(...); // load routerdb here.
        var router = new Router(routerDb);
        var routerPoint = router.Resolve(Vehicle.Car.Fastest(), new Coordinate(51.269692005119616f, 4.783473014831543f));
        var edge = routerDb.Network.GetEdge(routerPoint.EdgeId);
        var attributes = routerDb.GetProfileAndMeta(edge.Data.Profile, edge.Data.MetaId);
        var speed = Vehicle.Car.Fastest().Speed(attributes);

属性是原始OSM标签的集合,speed是Car配置文件的速度估计。