我试图准备OSM(*.osm.pbf) - 整个意大利的数据,用于离线使用iPhone-app.我需要从7到16的缩放级别,因为全国各地都有很多POI.
这是我的出发点.此解决方案的问题是数据库的文件大小.
是否有针对iOS 6/7的基于矢量的离线地图使用的开源解决方案?或者,是否可以最小化数据库文件大小?
我们收集了大量数据,并且正在尝试在我们的数据库上构建一个系统,该系统可以将纬度 - 经度信息转换为城市和国家.我们不想使用任何谷歌Api.我们想要设置我们自己的服务器来执行此操作.
我使用OSM地图创建了一个App.该应用程序工作正常,但从我当前位置到目的地的路线显示为一条直线而不是通过任何道路.
我正在使用的方法:
public void addRouteOverlay(GeoPoint startPoint, GeoPoint endPoint) {
// road manager
RoadManager roadManager = new OSRMRoadManager();
// start and end points
ArrayList<GeoPoint> waypoints = new ArrayList<GeoPoint>();
waypoints.add(startPoint);
// GeoPoint endPoint = new GeoPoint(48.4, -1.9);
waypoints.add(endPoint);
// roadManager.addRequestOption("routeType=bicycle");
// retreive the road between those points
Road road = roadManager.getRoad(waypoints);
if (road.mStatus != Road.STATUS_OK){
Log.d("Road Status", ""+road.mStatus);
}
// Polyline with the route shape
org.osmdroid.bonuspack.overlays.Polyline roadOverlay = RoadManager
.buildRoadOverlay(road, this);
// Polyline to the overlays of your map
mapView.getOverlays().add(roadOverlay);
// …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用传单在我的地图上的标记之间找到一条路线。我用了那个代码:
L.Routing.control({
waypoints: [
L.latLng(36.9009882, 10.3009531),
L.latLng(36.9922751, 10.1255164)
]}).addTo(map);
Run Code Online (Sandbox Code Playgroud)
但我的地图上没有新东西。有什么遗漏吗?我该怎么办?
我知道可以通过 OSMNX python 包提取城市的道路网络。请参阅https://geoffboeing.com/2016/11/osmnx-python-street-networks/ 的详细信息。
paris_network = ox.gdf_from_place("Paris")
Run Code Online (Sandbox Code Playgroud)
但是,假设我不想要那种高度的细节,而只想要整个国家的大高速公路。我正在寻找类似的东西:
france_big_expressway_network = ox.gdf_from_place("France", road_type = "freeway")
Run Code Online (Sandbox Code Playgroud)
我想它可能来自“基础设施”的论点,但作为一个新手,我真的不知道如何准确地使用它。
无法弄清楚如何在给定位置获得特定半径的所有道路.我目前的疑问是
<query type="way">
<around lat="55.693309807744484" lon="21.151986122131348" radius="50"/>
</query>
<union>
<item/>
<recurse type="down"/>
</union>
<print/>
Run Code Online (Sandbox Code Playgroud)
我试图添加这样的东西,<highway>primary,secondary,tertiary,residential</highway>但它没有用
在这个Mapbox博客文章中,Lauren Budorick分享了他们如何使用OSRM开发路由引擎,该OSRM使用高程数据为骑行者提供更好的路线...... 令人惊叹!
我还想在插入外部(用户生成的)数据时探索OSRM路由的潜力,但我仍然很难掌握OSRM配置文件的工作原理.我认为我得到了一个主要的想法,即每一种方式(或节点?)都通过管道传输到一些功能中,而这些功能一直都很好地分析了这条路是多么好.
但就是这样,我脑子里有很多缺失的部分,就像Lauren在她的个人资料中使用的每个功能一样.如果有人能指出一些关于如何运作的更详细的信息,你会让我的下周更加容易:)
另外,在Lauren的帖子中,source_function她在里面加载了一个./srtm_bayarea.asc文件.那个.asc文件是什么样的?如何生成一个文件,例如,存储在pgsql数据库中的数据?我们可以使用其他格式,比如GeoJSON吗?
然后,当segment_function她使用像source.lon和那样的东西时target.lat,那些是指存储在asc文件中的原始数据吗?或者该文件是否被处理成一些标准,以映射所有内容以符合它?
正如你所看到的,我是一个完整的路由新手,也许是一般的GIS,但我想更多地了解围绕OSRM生态系统的这些标准和工具.你能和我分享一些小技巧吗?
有没有人知道是否有办法使用OpenStreetMap(离线或API)来获取给定GPS坐标集的国家名称?
我对使用此处提到的Google或Geonames API不感兴趣:GPS坐标的国家/地区名称
鉴于此立交桥查询https://overpass-turbo.eu/s/Sle,它搜索博物馆和画廊,我如何引入一种新型标签来搜索同一位置,例如我还想搜索node["amenity"~"cafe|bar"]周围同一区域(周围500米lat: 500,53.866444)lon: 10.684738我尝试过的所有操作要么引发错误,要么返回不完整的结果。例如,以下内容有效,但仅返回 caf\xc3\xa9s 和酒吧,但不返回博物馆。
[out:json];\n node["tourism"~"museum|gallery"](around:500,53.866444, 10.684738);\n node["amenity"~"cafe|bar"](around:500,53.866444, 10.684738);\n out center;\nRun Code Online (Sandbox Code Playgroud)\n 我想编写一个必须使用缩放/平移工具渲染我的地图图像的applet,我发现JXMapViewer可以帮助我,我如何使用它?在哪里我可以找到相关的文档,帮助我编写一个applet,请求我的图像服务器上提供渲染瓷砖?怎么样的图像服务器和.... !!!! ??? 帮助我:图像服务器结构,tileprovider,tilefactory,... JXMapViewer需要.
geocoding ×2
java ×2
overpass-api ×2
android ×1
google-maps ×1
ios ×1
javascript ×1
jxmapviewer ×1
leaflet ×1
lua ×1
map ×1
offline ×1
osmdroid ×1
osmnx ×1
osrm ×1
python ×1
swing ×1
swingx ×1
vector ×1