似乎需要更新
这个教程,一个完整的“Hello World!”样式的例子会更好。
这是我在
OsmAnd+ 2.3.5中的操作:
我的数据存储文件夹(
设置 -> 通用设置 -> 数据存储文件夹
)在:
/storage/sdcard1/osmand-plus/osmand
所以自定义渲染器文件必须放在:
/storage/sdcard1/osmand-plus/osmand/rendering
这个目录起初可能是空的,但是当你从“配置地图 -> 地图样式”中选择地图样式后,OsmAnd将把相应的渲染器XML文件放入该目录中。
注意:添加新的渲染器或更改现有渲染器后,您必须完全关闭该应用程序并重新启动它,以使应用程序获取更改。
我采用了“继承”路线,并创建了一个名为
BLACK_ROADS.render.xml
的文件(遵循
<name-of-renderer>.render.xml
命名要求),该文件扩展了
default
(
default.render.xml
) 渲染器。
这是我的渲染器的内容。我把它做成了一种模板,这样我以后就可以看到这个文件中还可以放什么。
<?xml version="1.0" encoding="utf-8"?>
<!-- depends="default" -> default.render.xml -->
<renderingStyle name="Paints the roads black in day mode, white in night mode"
depends="default" defaultColor="#ffffff" version="1">
<renderingAttribute name="primaryRoadColor">
<!-- 40 -> 25% opacity, 80 -> 50% opacity, C0 -> 75% opacity, FF -> 100% opacity -->
<!-- or remove first two hex digits for 100% opacity -->
<!-- NIGHT MODE -->
<case nightMode="true" attrColorValue="#80ffffff"/> <!-- white -->
<!-- DAY MODE -->
<case attrColorValue="#80000000"/> <!-- black -->
</renderingAttribute>
<!-- These are "global" variables (can have many of each), which
can be referenced throughout the file. -->
<!--
<renderingAttribute/>
<renderingConstant/>
<renderingProperty/>
-->
<!-- This section determines the order in which objects are rendered.
Higher values will be on top. -->
<order/>
<!-- This section determines how text object are displayed. -->
<text/>
<!-- This section determines how point objects, which typically
have an icon associated with them, are displayed. -->
<point/>
<!-- This section determines how polygon objects are displayed. -->
<polygon/>
<!-- This section determines the look of roads, footpaths, coastlines etc.
Basically everything that is a line goes into this section. -->
<line/>
</renderingStyle>
这是结果:
- OsmAnd风格
- 新的黑色路线菜单入口(从文件名中获取)
- 黑色路线白天模式
- 黑色路线夜间模式
![黑色路线夜间模式](https://istack.dev59.com/uxcpP.webp)
primaryRoadLowZoomColor
(以同样的方式使用renderingAttribute
块)。这会使它按预期工作。我同意它的文档不是很好... - Jonas Czechrendering.xml
文件(仅涉及颜色和大小)成功使专用自行车道更加可见,但是不能在小于某个最小缩放级别时看到它们而不重新编译.obf文件的事实令人恼火。从overpass-turbo导出GPX文件也可以,但很麻烦且不美观。 - Jonas Czech