Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Leaflet 在web项目中使用Android项目中的map.osm和osmarender.xml_Leaflet_Openlayers_Openstreetmap_Mapsforge_Osmosis - Fatal编程技术网

Leaflet 在web项目中使用Android项目中的map.osm和osmarender.xml

Leaflet 在web项目中使用Android项目中的map.osm和osmarender.xml,leaflet,openlayers,openstreetmap,mapsforge,osmosis,Leaflet,Openlayers,Openstreetmap,Mapsforge,Osmosis,不久前,我编辑了一个.osm文件和一个样式文件(osmarender.xml),并将其包含在一个Android项目中(使用渗透和Mapsforge库)。工作很好,看起来不错。现在我想使用OpenLayers(或传单?)在web项目中重用这些文件 使用这个例子()我能够显示我的(非常局部,但仍然是23MB)地图,但是,它全部是黄色的(当然没有应用样式),并且它被渲染在OSM基础地图的顶部 我想做以下工作: 1.仅显示我的地图(不需要或不需要其他基础地图)。 2.快速显示(但允许平移和缩放)。 3.

不久前,我编辑了一个.osm文件和一个样式文件(osmarender.xml),并将其包含在一个Android项目中(使用渗透和Mapsforge库)。工作很好,看起来不错。现在我想使用OpenLayers(或传单?)在web项目中重用这些文件

使用这个例子()我能够显示我的(非常局部,但仍然是23MB)地图,但是,它全部是黄色的(当然没有应用样式),并且它被渲染在OSM基础地图的顶部

我想做以下工作: 1.仅显示我的地图(不需要或不需要其他基础地图)。 2.快速显示(但允许平移和缩放)。 3.使用我的样式(在osmarender.xml中定义)显示它。 4.仅将其尽可能远地显示(停止在边界框边界附近平移)


我可以用OpenLayers(可能还有渗透或一些渲染工具)来实现这一点吗?如果是这样的话,如何(大约)?

您可以使用或类似的应用程序预渲染所有需要的平铺。再快不过了。还可以查看各种。

,并可以基于mapsforge样式和地图文件渲染光栅分幅。tiles/server可用于其他应用程序,如传单或OpenLayers

虽然不确定这些软件有多稳定和成熟,但MOBAC仍然是alpha,MTS在标签剪裁和不支持Windows方面存在问题


另请参见第页。

Aarg。。。Mapsforge Tile Server是一个很好的提示,但是,正如我今天发现的,答案要简单得多

如果您有一个基于Mapsforge库的Android地图应用程序,您可以让该应用程序生成分幅并将其存储在移动设备上。例如,您可以从那里复制它们并在带有OpenLayers的web项目中重用它们

我的Android代码(带有Mapsforge 0.5.2)如下所示:

TileCache tileCache = AndroidUtil.createTileCache(activity, "mapcache",
            mapView.getModel().displayModel.getTileSize(), this.getScreenRatio(),
            mapView.getModel().frameBufferModel.getOverdrawFactor());
它将磁贴写入“mapcache”目录


无论如何,非常感谢你们两位的帮助

好的,只是尝试了Maperitive,但它没有解析我的XML样式文件。我现在试试蒂莱米尔。Mapnik也是一种选择吗?当然可以。但它需要更多的工作来设置。好吧,问题似乎是我使用的是Ubuntu 15.10,它的正式版本只有一周左右。TileMill的相应ppa不适用于我。所以我尝试了新的Mapbox Studio Classic,但是它不读取osm文件。现在我将返回Maperative(它至少读取我的地图),并尝试让它将我的数据写入不同的格式(不确定是否提供了此功能。不可能。Mapperitive只生成位图、SVG或磁贴。还有其他建议吗?这很完美,因为您需要磁贴。只需使用Mapperitive生成一个充满磁贴的目录,然后在OpenLayers中将此目录的路径指定为磁贴源。仅此而已。