All Downloads are FREE. Search and download functionalities are using the official Maven repository.

assets.vtm.openmaptiles.xml Maven / Gradle / Ivy

Go to download

OpenGL vector map library written in Java - running on Android, iOS, Desktop and within the browser.

The newest version!
<?xml version="1.0" encoding="UTF-8"?>
<rendertheme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" base-stroke-width="0.7"
    map-background="#d8dbcb" version="1" xmlns="http://opensciencemap.org/rendertheme"
    xsi:schemaLocation="http://opensciencemap.org/rendertheme https://raw.githubusercontent.com/mapsforge/vtm/master/resources/rendertheme.xsd">

    <tag-transform k="render_height" k-lib="height" />
    <tag-transform k="render_min_height" k-lib="min_height" />

    <!-- base style for fixed width lines -->
    <style-line cap="butt" fix="true" id="fix" width="1.0" />

    <!-- Road Text -->
    <style-text fill="#606060" font-family="medium" id="road" k="name" priority="9" size="14"
        stroke="#ffffff" stroke-width="2.0" />
    <style-text style="bold" fill="#606060" id="major-road" k="name" priority="7" size="16"
        stroke="#ffffff" stroke-width="2.0" />
    <style-text style="bold" fill="#606060" id="road-ref" k="ref" priority="8" size="14"
        stroke="#ffffff" stroke-width="2.0" />
    <style-text caption="true" style="bold" fill="#ffffff" id="road-ref-caption" k="ref"
        priority="8" size="12" bg-fill="#6c9f43" />

    <!-- Water -->
    <style-text caption="true" fill="#2d51bc" font-family="light" id="caption-major-water-name"
        k="name" size="16" />
    <style-text caption="true" fill="#2d51bc" font-family="light" id="caption-water-name" k="name"
        size="14" />
    <style-text fill="#2d51bc" font-family="light" id="river" k="name" size="12" />

    <!-- Places -->
    <style-text style="bold" caption="true" fill="#000000" id="country-caption" k="name"
        priority="0" size="20" stroke="#ffffff" stroke-width="2.0" />
    <style-text caption="true" fill="#000000" id="city-lz-caption" k="name" priority="3" size="18"
        stroke="#ffffff" stroke-width="2.0" />
    <style-text style="bold" caption="true" fill="#000000" id="city-caption" k="name" priority="1"
        size="18" stroke="#ffffff" stroke-width="2.0" />
    <style-text caption="true" fill="#000000" id="town-caption" k="name" priority="4" size="18"
        stroke="#ffffff" stroke-width="2.0" />
    <style-text caption="true" fill="#000000" id="village-caption" k="name" priority="5" size="16"
        stroke="#ffffff" stroke-width="2.0" />
    <style-text caption="true" fill="#000000" id="suburb-caption" k="name" priority="5" size="16"
        stroke="#ffffff" stroke-width="2.0" />
    <style-text caption="true" fill="#000000" id="hamlet-caption" k="name" priority="6" size="14"
        stroke="#ffffff" stroke-width="2.0" />

    <!-- Pois -->
    <style-text caption="true" dy="20" fill="#606060" font-family="medium" id="poi" k="name"
        size="14" stroke="#ffffff" stroke-width="2.0" />
    <style-text style="bold" caption="true" dy="12" fill="#4D2F08" id="peak-name-caption" k="name"
        size="14" stroke="#ffffff" stroke-width="2.0" />
    <style-text style="bold" caption="true" dy="-12" fill="#4D2F08" id="peak-ele-caption" k="ele"
        size="12" stroke="#ffffff" stroke-width="2.0" />
    <style-text style="bold" caption="true" fill="#606060" font-family="condensed"
        id="housenumber-caption" k="housenumber" priority="12" size="12" />
    <style-text style="bold" caption="true" fill="#606060" font-family="condensed"
        id="house-name-caption" k="name" priority="11" size="12" stroke="#ffffff"
        stroke-width="2.0" />

    <!-- De Area Styles -->
    <style-area fade="8" fill="#c5c6be" id="de-residential" />
    <style-area fade="13" fill="#b8b8c1" id="de-pedestrian" />
    <style-area fade="8" fill="#ebdbe8" id="de-industrial" />
    <style-area fade="8" fill="#e0e0b8" id="de-school" />
    <style-area fade="8" fill="#ace0b0" id="de-park" />
    <style-area fade="8" fill="#add19e" id="de-forest" />
    <style-area fade="8" fill="#c3dbad" id="de-grass" />
    <style-area fade="8" fill="#def6c0" id="de-campsite" />
    <style-area fade="8" fill="#aacbaf" id="de-cemetery" />
    <style-area fade="8" fill="#d6aa95" id="de-military" />
    <style-area fade="8" fill="#e6dcd1" id="de-mud" />
    <style-area fade="8" fill="#e8eff2" id="de-ice" />

    <!-- Avoid patterns and textures because of old GPU issues -->
    <!--<style-area id="tex1" src="assets:textures/rough.png" />-->

    <!-- park|common|green|cemetery|golf_course|dog_park -->
    <style-area fade="11" fill="#9ac56e" id="park" />

    <!-- <style-area id="park" fill="#a3ca7b" fade="11" /> -->
    <style-line cap="butt" fade="14" fix="true" id="park" stroke="#9ac56e" width="1.0" />

    <!-- Colors from OSM-DE Style -->
    <style-line cap="butt" id="de-motorway" stroke="#e892a2" width="2.1" />
    <style-line cap="butt" id="de-trunk" stroke="#f9b29c" width="2.1" />
    <style-line id="de-primary" stroke="#ffc982" width="2.1" />
    <style-line id="de-secondary" stroke="#fffa9b" width="2.1" />
    <style-line id="de-tertiary" stroke="#fdffd1" width="2.1" />
    <style-line id="de-unclassified" stroke="#ffffff" width="1.1" />
    <style-line id="de-residential" stroke="#ffffff" width="1.1" />
    <style-line id="de-service" stroke="#ffffff" width="0.5" />
    <style-line cap="butt" id="de-motorway-link" use="de-motorway" width="-0.8" />
    <style-line cap="butt" id="de-trunk-link" use="de-trunk" width="-0.8" />
    <style-line cap="butt" fix="true" id="de-steps" stipple="2" stipple-stroke="#be6253"
        stipple-width="1.0" stroke="#aaffffff" width="4.2" />
    <style-line id="de-pedestrian" stroke="#b8b8c1" width="0.5" />
    <style-line cap="butt" fix="true" id="de-rail" stroke="#999999" width="0.9" />
    <!-- Tunnels TODO activate tunnel rendering -->
    <style-line cap="butt" id="de-motorway-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-motorway" />
    <style-line cap="butt" id="de-trunk-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-trunk" />
    <style-line cap="butt" id="de-primary-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-primary" />
    <style-line cap="butt" id="de-secondary-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-secondary" />
    <style-line cap="butt" id="de-tertiary-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-tertiary" />
    <style-line cap="butt" id="de-unclassified-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-unclassified" />
    <style-line cap="butt" id="de-residential-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-residential" />
    <style-line cap="butt" id="de-service-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-service" />
    <style-line cap="butt" id="de-motorway-link-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-motorway-link" />
    <style-line cap="butt" id="de-trunk-link-tunnel" stipple="10" stipple-stroke="#c5c6be"
        use="de-trunk-link" />


    <!-- Not for motorcycle -->
    <!-- track|footway|path|cycleway -->
    <style-line cap="butt" id="footway" stipple="2" stipple-stroke="#a39b68" stipple-width="0.6"
        stroke="#aaffffff" width="1.8" />
    <style-line id="highway:track" stipple="3" stipple-stroke="#a39b68" use="footway" width="0.4" />
    <style-line fix="true" id="highway:path" stipple="2" stipple-stroke="#837b58" use="footway"
        width="4.2" />

    <!-- Water -->
    <style-line cap="butt" fix="true" id="water" stroke="#a4bbcc" width="1.0" />
    <style-line fix="false" id="river" stroke="#a4bbcc" use="water" />
    <style-area fade="-1" fill="#99badf" id="water" />

    <style-line fade="15" id="building" stroke="#eeb7b6b3" use="fix" />
    <style-area fade="15" fill="#e2e1dc" id="building" />

    <!-- Sea -->
    <m k="layer" v="water">
        <m k="class">
            <m v="ocean">
                <area mesh="true" use="water" />
            </m>
        </m>
    </m>

    <!-- Landcover -->
    <m k="layer" v="landcover">
        <!-- TODO handle subclass -->
        <m k="class">
            <m v="ice">
                <area use="de-ice" />
            </m>
            <m v="wood">
                <area use="de-forest" />
            </m>
            <m v="grass">
                <area use="de-grass" />
            </m>
            <m v="wetland">
                <area use="de-wetland" />
            </m>
        </m>
    </m>

    <!-- Park -->
    <m k="layer" v="park">
        <m k="class">
            <m v="national_park|nature_reserve">
                <area use="de-forest" />
            </m>
        </m>
    </m>

    <!-- Landuse -->
    <m k="layer" v="landuse">
        <!-- TODO handle subclass -->
        <m k="class">
            <m v="military">
                <area use="de-military" />
            </m>
            <m v="residential|commercial|retail">
                <area use="de-residential" />
            </m>
            <m v="railway|industrial">
                <area use="de-industrial" />
            </m>
            <m v="stadium|playground|pitch">
                <area use="de-park" />
            </m>
            <m v="grass">
                <area use="de-grass" />
            </m>
            <m v="school|university|kindergarten|college|hospital">
                <area use="de-school" />
            </m>
            <m v="cemetery">
                <area use="de-cemetery" />
            </m>
        </m>
    </m>

    <!-- Lakes, rivers -->
    <m k="layer" v="water">
        <m k="class">
            <m v="lake|river">
                <area use="water" />
            </m>
        </m>
    </m>

    <!-- boundary -->
    <m e="way" k="layer" v="boundary">
        <m k="admin_level">
            <m v="4">
                <line fix="true" stipple="4" stipple-stroke="#888888" stipple-width="1.0"
                    stroke="#dadada" width="1.5" />
            </m>
            <m v="2">
                <line fix="true" stipple="6" stipple-stroke="#647b9c" stipple-width="1.0"
                    stroke="#dadada" width="2" />
            </m>
        </m>
    </m>

    <!-- TODO aeroway -->

    <m k="layer" v="waterway">
        <m k="class">
            <m v="ditch|drain" zoom-min="14">
                <line fade="14" use="water" width="0.2" />
            </m>
            <m v="canal">
                <line use="river" width="-0.3" />
            </m>
            <m v="stream" zoom-min="13">
                <line fade="13" use="water" width="0.5" />
            </m>
            <m select="first" v="river">
                <line use="river" width="0.3" />
            </m>
        </m>

        <text use="river" />
    </m>

    <m k="layer" v="transportation" zoom-min="6">

        <!-- outline 0 -->
        <outline-layer blur="1.0" id="glow" stroke="#000000" width="0.2" />
        <outline-layer id="0" stroke="#44000000" width="0.1" />

        <!-- Outlines for DE-Style -->
        <outline-layer id="de-motorway-outline" stroke="#dc2a67" width=".5" />
        <outline-layer id="de-trunk-outline" stroke="#c84e2f" width=".5" />
        <outline-layer id="de-primary-outline" stroke="#c49a64" width=".5" />
        <outline-layer id="de-secondary-outline" stroke="#a09c60" width=".5" />
        <outline-layer id="de-tertiary-outline" stroke="#95995a" width=".5" />
        <outline-layer id="de-unclassified-outline" stroke="#868e8b" width=".5" />
        <outline-layer id="de-tunnel" stroke="#7c7c7c" width="0.2" />

        <!-- Bridge casings should be above other roads -->
        <outline-layer id="bridge" stroke="#000000" width="0.08" />
        <outline-layer id="de-bridge" stroke="#000000" width="0.2" />

        <m k="class">
            <m zoom-min="10">
                <m v="rail|transit" zoom-min="12">
                    <line use="de-rail" />
                </m>
                <m v="ferry">
                    <line stroke="#2d51bc" width="1" />
                </m>
                <m v="track">
                    <m k="brunnel">
                        <m v="tunnel">
                            <line outline="de-tunnel" use="highway:track" />
                        </m>
                        <m v="bridge">
                            <line outline="bridge" use="highway:track" />
                        </m>
                    </m>
                    <m k="brunnel" v="~">
                        <line use="highway:track" />
                    </m>
                </m>
                <m v="path" zoom-min="16">
                    <m k="subclass" v="pedestrian">
                        <line outline="0" use="de-pedestrian" />
                        <m closed="yes">
                            <area use="de-pedestrian" />
                            <line cap="butt" fix="true" stroke="#44000000" width="1.0" />
                        </m>
                    </m>
                    <m k="subclass" v="steps">
                        <line use="de-steps" />
                    </m>
                    <m k="subclass" v="footway|path|cycleway|bridleway">
                        <m k="brunnel">
                            <m v="tunnel">
                                <line outline="de-tunnel" use="highway:path" />
                            </m>
                            <m v="bridge">
                                <line outline="bridge" use="highway:path" />
                            </m>
                        </m>
                        <m k="brunnel" v="~">
                            <line use="highway:path" />
                        </m>
                    </m>
                </m>
                <m v="service">
                    <m k="brunnel">
                        <m v="tunnel">
                            <line outline="de-tunnel" use="de-service" />
                        </m>
                        <m v="bridge">
                            <line outline="bridge" use="de-service" />
                        </m>
                    </m>
                    <m k="brunnel" v="~">
                        <line use="de-service" />
                    </m>
                </m>
                <m v="minor">
                    <m k="brunnel">
                        <m v="tunnel">
                            <line outline="de-tunnel" use="de-unclassified" />
                        </m>
                        <m v="bridge">
                            <line outline="de-bridge" use="de-unclassified" />
                        </m>
                    </m>
                    <m k="brunnel" v="~">
                        <line outline="de-unclassified-outline" use="de-unclassified" />
                    </m>
                </m>
                <m v="tertiary">
                    <m k="brunnel">
                        <m v="tunnel">
                            <line outline="de-tunnel" use="de-tertiary" />
                        </m>
                        <m v="bridge">
                            <line outline="de-bridge" use="de-tertiary" />
                        </m>
                    </m>
                    <m k="brunnel" v="~">
                        <line outline="de-tertiary-outline" use="de-tertiary" />
                    </m>
                </m>
                <m v="secondary">
                    <m k="brunnel">
                        <m v="tunnel">
                            <line outline="de-tunnel" use="de-secondary" />
                        </m>
                        <m v="bridge">
                            <line outline="de-bridge" use="de-secondary" />
                        </m>
                    </m>
                    <m k="brunnel" v="~">
                        <line outline="de-secondary-outline" use="de-secondary" />
                    </m>
                </m>
            </m>
            <m zoom-min="8">
                <m v="primary">
                    <m k="brunnel">
                        <m v="tunnel">
                            <line outline="de-tunnel" use="de-primary" />
                        </m>
                        <m v="bridge">
                            <line outline="de-bridge" use="de-primary" />
                        </m>
                    </m>
                    <m k="brunnel" v="~">
                        <line outline="de-primary-outline" use="de-primary" />
                    </m>
                </m>
                <m v="trunk">
                    <m k="brunnel">
                        <m v="tunnel">
                            <line outline="de-tunnel" use="de-trunk" />
                        </m>
                        <m v="bridge">
                            <line outline="de-bridge" use="de-trunk" />
                        </m>
                    </m>
                    <m k="brunnel" v="~">
                        <line outline="de-trunk-outline" use="de-trunk" />
                    </m>
                </m>
            </m>
            <m v="motorway">
                <m k="brunnel">
                    <m v="tunnel">
                        <line outline="de-tunnel" use="de-motorway" />
                    </m>
                    <m v="bridge">
                        <line outline="de-bridge" use="de-motorway" />
                    </m>
                </m>
                <m k="brunnel" v="~">
                    <line outline="de-motorway-outline" use="de-motorway" />
                </m>
            </m>
        </m>
        <!-- highway one-way markers -->
        <m k="oneway" v="1" zoom-min="16">
            <m k="class" v="motorway|trunk|primary|secondary|tertiary|minor">
                <symbol repeat="true" src="assets:symbols/oneway.svg" />
            </m>
        </m>
    </m>

    <!-- Building and Housenumbers -->
    <m k="layer" v="building|building:part">
        <m v="building">
            <m zoom-min="15">
                <m closed="yes">
                    <area fade="15" use="building" />
                    <line fade="15" use="building" />
                </m>
                <m closed="no">
                    <line fade="15" use="building" />
                </m>
            </m>
        </m>
        <m v="building:part">
            <m zoom-min="16">
                <m closed="yes">
                    <area fade="16" use="building" />
                    <line fade="16" use="building" />
                </m>
                <m closed="no">
                    <line fade="16" use="building" />
                </m>
            </m>
        </m>
        <m zoom-min="17">
            <extrusion line-color="#ffd9d8d6" side-color="#eaecebe9" top-color="#eaf9f8f6" />
        </m>
    </m>
    <m k="layer" v="housenumber" zoom-min="17">
        <text use="house-name-caption" />
        <text use="housenumber-caption" />
    </m>

    <m k="layer" v="mountain_peak">
        <m k="rank" select="first">
            <m v="1" zoom-min="13">
                <symbol src="assets:symbols/peak.svg" />
            </m>
            <m v="2" zoom-min="14">
                <symbol src="assets:symbols/peak.svg" />
            </m>
            <m zoom-min="15">
                <symbol src="assets:symbols/peak.svg" />
            </m>

            <m select="when-matched">
                <text use="peak-name-caption" />
                <text use="peak-ele-caption" />
            </m>
        </m>
    </m>

    <m k="layer" v="poi" zoom-min="13">
        <m k="subclass">
            <!-- Motorcycle POIs -->
            <m select="first">
                <m v="fuel">
                    <symbol src="assets:symbols/transport/fuel.svg" />
                </m>
                <m v="motorcycle_parking">
                    <symbol src="assets:symbols/custom/transport/parking_motorcycle.svg" />
                </m>
                <m v="parking" zoom-min="16">
                    <symbol src="assets:symbols/transport/parking.svg" />
                </m>
                <m v="viewpoint">
                    <symbol src="assets:symbols/tourist/view_point.svg" />
                </m>
                <m v="motorcycle|motorcycle_repair">
                    <symbol src="assets:symbols/shopping/diy.svg" />
                </m>
            </m>
            <m k="name" select="first">
                <m v="castle">
                    <symbol src="assets:symbols/tourist/castle2.svg" />
                </m>
                <m v="attraction">
                    <symbol src="assets:symbols/tourist/attraction.svg" />
                </m>
                <m v="hospital" zoom-min="15">
                    <symbol src="assets:symbols/health/hospital.svg" />
                </m>
                <m v="pharmacy" zoom-min="16">
                    <symbol src="assets:symbols/health/pharmacy.svg" />
                </m>
                <m v="hotel" zoom-min="16">
                    <symbol src="assets:symbols/accommodation/hotel2.svg" />
                </m>
                <m v="hostel" zoom-min="16">
                    <symbol src="assets:symbols/accommodation/hostel.svg" />
                </m>
                <m v="camp_site" zoom-min="12">
                    <symbol src="assets:symbols/accommodation/camping.svg" />
                </m>
                <m v="caravan_site" zoom-min="12">
                    <symbol src="assets:symbols/accommodation/caravan_park.svg" />
                </m>
                <m v="restaurant" zoom-min="16">
                    <symbol src="assets:symbols/food/restaurant.svg" />
                </m>
                <m v="cafe" zoom-min="16">
                    <symbol src="assets:symbols/food/cafe.svg" />
                </m>
                <m v="pub" zoom-min="16">
                    <symbol src="assets:symbols/food/pub.svg" />
                </m>
                <m v="fast_food" zoom-min="16">
                    <symbol src="assets:symbols/food/fastfood.svg" />
                </m>
            </m>

            <m select="when-matched">
                <text use="poi" />
            </m>
        </m>

        <!-- Barriers -->
        <m k="subclass" zoom-min="16">
            <m v="bollard">
                <symbol src="assets:symbols/barrier/bollard.svg" />
            </m>
            <m v="block">
                <symbol src="assets:symbols/barrier/blocks.svg" />
            </m>
            <m v="gate">
                <symbol src="assets:symbols/barrier/gate.svg" />
            </m>
            <m v="lift_gate">
                <symbol src="assets:symbols/barrier/lift_gate.svg" />
            </m>
        </m>
    </m>

    <!-- Render Labels at last -->

    <m k="layer" v="water_name">
        <m k="class">
            <m v="sea|ocean">
                <text use="caption-major-water-name" />
            </m>
            <m v="lake">
                <text use="caption-water-name" />
            </m>
        </m>
    </m>

    <m k="layer" v="place">
        <m k="class">
            <m v="hamlet|neighbourhood|isolated_dwelling" zoom-max="14">
                <text use="hamlet-caption" />
            </m>
            <m v="suburb" zoom-max="15" zoom-min="13">
                <text use="suburb-caption" />
            </m>
            <m v="village|island" zoom-max="15" zoom-min="12">
                <text use="village-caption" />
            </m>
            <m v="town" zoom-max="15">
                <text use="town-caption" />
            </m>
            <m v="city" zoom-max="15">
                <m zoom-max="13" zoom-min="7">
                    <text use="city-caption" />
                </m>
                <m zoom-max="6">
                    <text priority="6" use="city-lz-caption" />
                    <!-- It can happen that cities with lower rank are drawn above cities with rank 1 or 2, we should try to avoid this -->
                    <m k="rank">
                        <m v="1">
                            <text priority="1" use="city-lz-caption" />
                        </m>
                        <m v="2">
                            <text priority="2" use="city-lz-caption" />
                        </m>
                        <m v="3">
                            <text priority="3" use="city-lz-caption" />
                        </m>
                        <m v="4">
                            <text priority="4" use="city-lz-caption" />
                        </m>
                        <m v="5">
                            <text priority="5" use="city-lz-caption" />
                        </m>
                    </m>
                </m>
            </m>
            <m v="country" zoom-max="6">
                <text use="country-caption" />
            </m>
        </m>
    </m>

    <m k="layer" v="transportation_name">
        <m k="class">
            <m v="minor|tertiary|secondary">
                <text use="road" />
                <text use="road-ref" />
            </m>
            <m v="primary|trunk|motorway">
                <text use="major-road" />
                <m zoom-max="12">
                    <text use="road-ref-caption" />
                </m>
                <m zoom-min="13">
                    <text use="road-ref" />
                </m>
            </m>
        </m>
    </m>
</rendertheme>




© 2015 - 2025 Weber Informatics LLC | Privacy Policy