Maperative: Beispiel für Wegsymbole auf Icon-Basis gesucht

hi !

ich suche verzweifelt nach einem Beispiel wo in Maperative die Wegesymbole eines Wanderweges durch ein PNG-Bild erzeugt werden.

Soweit ich weiß soll das genauso laufen wie bei den Shields - nur bei mir bisher ohne Erfolg. Siehe unten.

Shields kommen aufgrund der komplexität der Symbole nicht in Frage und auch die google-Group konnte bis dato nicht weiterhelfen.

Einer von Euch vielleicht?

Gruß Jan .-)

features
points, areas

areas

lines
    hiking hanseatenweg : relation[ref = Hanse]

points

properties
map-background-color : #F1EEE8
map-background-opacity : 1
map-sea-color : #B5D0D0
font-weight : bold
font-family : Verdana
text-max-width : 7
text-halo-width : 25%
text-halo-opacity : 0.75
text-align-horizontal : center
text-align-vertical : center
font-stretch : 0.9
map.rendering.lflp.min-buffer-space : 5
map.rendering.lflp.max-allowed-corner-angle : 40

rules

target : hiking hanseatenweg
    define
        min-zoom : 8
        line-color : #000000
        line-width : 8:5;13:8;15:8;18:10
        border-style : solid
        border-color : #FFFFFF
        border-width : 50%
    draw : line
    define
        min-zoom : 16

// shape : custom
icon-image : hanseatenweg_icon.png
shape-spacing : 20
shape-size : 16:1;20:3
shape-aspect : 3
fill-color : #F98072
line-style : none
draw : icon

Rules mal leicht umgebaut.
Bei dem Icon dürfte die Pfadangabe gefehlt haben.

features
	lines
	hiking hanseatenweg : relation[type=route route=foot]
	// relation[ref = Hanse]

	points

properties
	map-background-color    : #F1EEE8
	map-background-opacity    : 1
	map-sea-color : #B5D0D0
	font-weight : bold
	font-family : Verdana
	text-max-width : 7
	text-halo-width : 25%
	text-halo-opacity : 0.75
	text-align-horizontal : center
	text-align-vertical : center
	font-stretch : 0.9
	map.rendering.lflp.min-buffer-space : 5
	map.rendering.lflp.max-allowed-corner-angle : 40

rules

	target : hiking hanseatenweg
		define
			min-zoom : 8
			line-color : #000000
			line-width : 8:5;13:8;15:8;18:10
			border-style : solid
			border-color : #FFFFFF
			border-width : 50%
		draw : line
		define
			min-zoom : 16
			//shape : custom
			icon-image : icons/SJJB/png/accommodation_shelter2.n.32.png
			shape-spacing : 20
			shape-size : 16:1;20:3
			shape-orientation: fixed
			shape-aspect : 3
			fill-color : #F98072
			line-style : none
		draw : icon

Hi !

Kann gerade smartyphone nicht zugreifen und testen - die png Datei ist in dem laut Script anzuwendenden Verzeichnis hinterlegt.

Gruß Jan

hi !

ich habe mir das angesehen und mit meinem Source


// Default rendering rules for Maperitive resembling that of OSM Mapnik
// http://maperitive.net

// Created by Igor Brejc
// Released under the Creative Commons Attribution-ShareAlike 3.0 License (http://creativecommons.org/licenses/by-sa/3.0/)
// Updates by Michael <quelbs_at_gmail.com>
// Icons used: Map icons CC-0 from SJJB Management (http://www.sjjb.co.uk/mapicons)

features
	points, areas

	areas

	lines
		hiking hanseatenweg : relation[ref = Hanse] 

	points

properties
	map-background-color	: #F1EEE8
	map-background-opacity	: 0
	map-sea-color : #B5D0D0
	font-weight : bold
	font-family : Verdana
	text-max-width : 7
	text-halo-width : 25%
	text-halo-opacity : 0.75
	text-align-horizontal : center
	text-align-vertical : center
	font-stretch : 0.9
	map.rendering.lflp.min-buffer-space : 5
	map.rendering.lflp.max-allowed-corner-angle : 40

rules

	target : hiking hanseatenweg
		define
			min-zoom : 8
			line-color : #000000
			line-width : 8:5;13:8;15:8;18:10
			border-style : solid
			border-color : #FFFFFF
			border-width : 50%
		draw : line
		define
			min-zoom : 8
//			shape : custom
			icon-image : X:\osmHanseatenweg\hanseatenweg_icon.png
			shape-spacing : 20
			shape-size : 16:2000;20:6000
			shape-aspect : 3
			shape-orientation: fixed
			fill-color : #F98072
			line-style : none
		draw : icon






wird auch das Icon angezeigt wie aus [1] ersichtlich.

Was sich für mich derzeit aber noch als Problem darstellt ist die Tatsache das der Abstand der Icons sehr unterschiedlich ist. Im Bereich Stralsund sind diese eng - bis Greifswald kommt dafür keines in der Zoomstufe des Links [1].

Kann mir einer weiterhelfen ?

Gruß Jan :slight_smile:

[1] http://www.tappenbeck.net/osm/sandbox/hanseatenweg/deu/index.htm?zoom=10&lat=54.1712&lon=13.10199&layers=BT

Ja die Logik wie Maperitive die Icons setzt ist mir auch noch nicht so klar.

Die Eigenschaft ab wann wieder ein Icon gesetzt wird wird mit

shape-spacing :

festgelegt

vielleicht bringt es was für die jeweiligen Zoomstufen verschiedene Werte zu setzten

shape-spacing : 8:5;9:7;10:10;11:13;12:15;13:18;14:20

hier mal grad aus der Luft gegriffen.

Alternativ kann du zusätzliche Punkte über z.B. eine GPX-Datei reinladen
Diese dann genauso wie deine Wanderweg-Icons rendern lassen (nur die Punkte und die benötigten Zoomstufen)



	points
		gps waypoints : gpswaypoint[]
		gps trackpoints: gpstrack[].gpspoint[]
		gps routepoints: gpsroute[].gpspoint[]

rules

	target : gps routepoints
		define
			min-zoom : 8
			max-zoom : 10
			icon-image : X:\osmHanseatenweg\hanseatenweg_icon.png
		draw : icon

	target : gps waypoints
		define
			min-zoom : 8
			max-zoom : 10
			icon-image : X:\osmHanseatenweg\hanseatenweg_icon.png
		draw : icon

	target : gps trackpoints
		define
			min-zoom : 8
			max-zoom : 10
			icon-image : X:\osmHanseatenweg\hanseatenweg_icon.png
		draw : icon

Ich hab hier alle 3 Möglichen GPX-Punktevarianten angegeben, es reicht natürlich eine - jenach welche Variante du erstellst.

Übrigens abgeleitet aus dem Maperitive-Dafault-Style

Hi !

ich habe nochmal auf der google-Group von Maperative nachgefragt und Igor hat geschrieben das bei Relationen die Wege nicht als ein zusammenhängendes Stück gesehen wird.

Das erklärt also die Vorgehensweise so einigermaßen.

Stelllt sich noch die Frage wie man aus einer Relation am einfachsten lokal einen zusammenhängenden stetig sich fortsetzenden Way legen kann - sicherlich läßt sich soetwas manchen. Probleme machen dann bestimmt Plätze und ähnliche Formen.

Ideen ?

Gruß Jan :slight_smile:

Da wird dir nur das manuell Anpassen aus den OSm-Daten in eine GPX bleiben.

Dazu einfach in JOSM Strg+Umschalt+O drücken
Bei Objettyp Relation auswählen und bei ID 71454 eingeben (ist die SuperRealtion die du willst!).

Jetzt hast du in JOSM nur den hanseatenweg.

Rechts kannst du mit einem Rechten Mausklick die Datenebene als GPX-Exportieren.
Allerdings mußt du vorher die ganzen Teilstücke (Ways) noch zusammen führen und dabei die ganzen “Fehler” bereinigen (Flächen, Kreisel , Freie Enden von Ways entfernen usw).

Wenn du dann ein durchgehenden Way hast diesen dann als GPX exportieren (Punkte spielen dabei keine Rolle).

In den Rules auf die Linie mittels

gps tracks : gpstrack

zugreifen und dann genauso wie die Relation rendern lassen

Die GPX dann in maperitive reinladen sieht dann halbwegs so aus das die Icons im gleichen Abstand kommen!

Hi !

Danke - eine Idee den zusammenhängenden weg automatisch zu generieren (perl) hast du nicht ?

Gruß Jan

Wenn die Realtion nur aus Ways bestehen würde und diese ordentlich (d.h. wirklich nur als 1Way) - gäb es sicher eine Möglichkeiten.

Wenn du dir aber die Realtion anschaust wirst du feststellen das es alles andere als ordentlich (Im Sinne einer Route) ist.
Der Hanseatenweg besteht aus meherern getrennten Teiistücken (ohne gemeinsamme Punkte) , enthält Linien von Flächen (gehören normalerweise die Linien geteilt und die Fläche wieder als MP zusammengesetzt) , einige Kreisel , ich glaub 2 Teilstücke (oder mehr) mit verschiedener Wegführung und etliche Wege deren Endpunkte nicht die Fortsetzung der Hanseatenwegs ist (gehören also auch geteilt).

Alles im allen ein recht gutererfasster Weg der aber im Snne des ordenlichen Mappings trotzdem kräftig überholt gehört.