[Talk-de] [patch] Breite von Flüssen XSL
Christian Koerner
misk at gmx.net
Mo Jul 7 15:43:20 UTC 2008
Ich verlagere mal die Diskussion (Flussbreite fuer osmarender.xsl [1])
mit hier her...
On Sun, 6 Jul 2008 21:12:03 +0000 (UTC)
Sven Geggus <lists at fuchsschwanzdomain.de> wrote:
> Sven Geggus <lists at fuchsschwanzdomain.de> wrote:> OK Leute, nachdem
> Raphael zurecht darauf hingewiesen hat, dass das Teil stinklangsam
> geworden ist hab ich nochmal drüber geschaut und das Problem zusammen
> mit Matthias Merz, der deutlich besser perl kann als ich gelöst!
>
Fuer die XSL-Version habe ich die Angabe honorWidth in die Regeldatei
verlegt (also in osm-map-features-z*.xml)
----8<----
<rule e="way" k="waterway" v="river">
<line class="waterway-casing waterway-river-casing"
honor-width="yes" />
</rule>
<rule e="way" k="waterway" v="river">
<line class="waterway-core waterway-river-core" honor-width="yes" />
</rule>
---->8----
Das beschraenkt den XSL-Code auf eine einzige Abfrage
----8<----
<xsl:choose>
<xsl:when test="$instruction/@honor-width='yes'">
<!-- zeichne Pfade mit Breitenangabe -->
</xsl:when>
<xsl:otherwise>
<!-- zeichne Pfade ohne Breitenangabe -->
</xsl:otherwise>
</xsl:choose>
---->8----
... statt dem Aufsplitten des 'class'-Strings, dem Pruefen ob fuer
$class die Breitenangabe Verwendung findet, etc. .
Gleiche Vorteile gelten natuerlich auch fuer or/p.
<REQUEST_FOR_COMMENT>
-- Namen die ich ersetzt habe:
minLineWidth => minimumWayWidth
maxLineWidth => maximumWayWidth
meter2pixel => meter2pixelFactor
Warum 'minimum/maximum'? Es existiert schon 'minimumMapWidth' und
'minimumMapHeight', also einfach um eine gewisse Namenskonvention zu
haben.
-- Warum auf drawPathWithSmartLinecaps Funktion beschraenken?
Ob SmartLinecaps oder nicht wird ja in der Regeldatei angegeben. Wenn
der Benutzer nun fuer waterway="river" aber smart-linecap="no" in
der Regeldatei angibt, kann er nicht mehr das Flussbreite-Feature
genieszen.
Und spaeter will man sicher die Breite auch fuer andere Ways haben, also
gleich mit in drawPath() einbauen! Spricht was dagegen?
-- Verwendung von Breitenangaben in Europa (Tagwatch):
"width" -> 9623
"est_width" -> 489
"est width" -> 68
"width_est" -> 16
Via Script 'est_width' & Co. in 'width' aendern und nur 'width'-Angaben
beruecksichten?
</REQUEST_FOR_COMMENT>
Bitte mal diese Sachen noch klaeren, dann folgt der Osmarender-Patch :)
Beste Gruesze
Christian
[1] Flussbreite fuer osmarender.xsl
- http://lists.openstreetmap.org/pipermail/talk-de/2008-July/015624.html
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : signature.asc
Dateityp : application/pgp-signature
Dateigröße : 189 bytes
Beschreibung: nicht verfügbar
URL : <http://lists.openstreetmap.org/pipermail/talk-de/attachments/20080707/dd34411b/attachment.sig>
Mehr Informationen über die Mailingliste Talk-de