Génération d'un rendu pour une carte cyclable régionale : Différence entre versions

De Wiklou, le Wiki du Biclou
Aller à : navigation, rechercher
(ajout docs)
m (ajouts exemples + lien vers cartographie)
 
(20 révisions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
== Génération d'un rendu pour carte cyclable régionale ==
+
'''Ce tutoriel est en cours d'écriture donc inexploitable tel quel, mais n’hésitez pas à proposer des améliorations et simplifications si vous avez des connaissances'''
 
 
''Ce tutoriel est en cours d'écriture donc inexploitable tel quel, mais n’hésitez pas à proposer des améliorations et simplifications si vous avez des connaissances''
 
  
 
Axel de Dynamo Nancy (axel[arobase]broman[point]fr).
 
Axel de Dynamo Nancy (axel[arobase]broman[point]fr).
  
=== Préambule ===
+
Cet article est en lien avec celui de la [[Cartographie]].
 +
== Préambule ==
  
 
L’intérêt de travailler avec OpenStreetMap est de donner la possibilité à ceux réutilisant la carte générée, de pouvoir améliorer et correctionner les données y figurantes. Il s'agit en effet d'une cartographie libre et participatif, similaire à ce qu'est Wikipédia pour l'encyclopédie.
 
L’intérêt de travailler avec OpenStreetMap est de donner la possibilité à ceux réutilisant la carte générée, de pouvoir améliorer et correctionner les données y figurantes. Il s'agit en effet d'une cartographie libre et participatif, similaire à ce qu'est Wikipédia pour l'encyclopédie.
Aussi les données issues d'OSM sont sous licences libres, il n'y a donc aucune limitation quant à leurs réutilisations hormis une paternité (Les contributeurs d'OpenStreetMap).
+
Aussi les données issues d'OSM sont sous licences libres, les seules limitations quant à leurs réutilisations hormis une paternité (Les contributeurs d'OpenStreetMap), est l'obligation de redistribuer ces données et éventuellement les modifications apportées sous cette même licence ou équivalente.
 +
 
 +
Les logiciels utilisés dans ce tutoriel sont sous licence libre, hors Maperitive qui n'a pas d’équivalence (il est tout de même gratuit et multi-plateforme). L’intérêt est là de donner la possibilité à tous de pouvoir reproduire le travail avec le minimum de contrainte.
  
 
Ce tutoriel nécessite un ordinateur relativement performant et une bonne capacité de stockage est conseillé. Il est adapté pour un système d'exploitation GNU/Linux Debian/Ubuntu. Si vous utilisez un autre système, ces logiciels existent pour Windows, MAC OSX et GNU/Linux, mais c'est à vous de vous adapter !
 
Ce tutoriel nécessite un ordinateur relativement performant et une bonne capacité de stockage est conseillé. Il est adapté pour un système d'exploitation GNU/Linux Debian/Ubuntu. Si vous utilisez un autre système, ces logiciels existent pour Windows, MAC OSX et GNU/Linux, mais c'est à vous de vous adapter !
Ligne 14 : Ligne 15 :
 
Le tutoriel permet de générer une carte sur une échelle régionale, mais il est tout à fait possible de créer un rendu pour une ville ou un pays ou bien encore d’autres thèmes. Les règles seront juste à ajuster en fonction de la quantité de données voulus, et de ce qui est recherché.
 
Le tutoriel permet de générer une carte sur une échelle régionale, mais il est tout à fait possible de créer un rendu pour une ville ou un pays ou bien encore d’autres thèmes. Les règles seront juste à ajuster en fonction de la quantité de données voulus, et de ce qui est recherché.
  
=== Méthodologie ===
+
[https://broman.fr/divers/tests/voyageureuses/maperitive/grand_est.svg Exemple de résultat possible] (attention le fichier fait 40 mo).
 +
 
 +
== Méthodologie ==
  
==== osmctools ====
+
=== osmctools ===
  
Ce logiciel permet de récupérer uniquement les données étant utiles pour la création du rendu sur mesure. Les fichiers originaux des régions faisant en général plusieurs gigaoctets de données, cette solution permet de travailler par la suite sur des données sensiblement moins importantes, et donc raccourcis les temps de traitements.
+
Ce logiciel permet de récupérer uniquement les données étant utiles pour la création du rendu sur mesure. Les fichiers originaux des régions faisant en général plusieurs gigaoctets de données, cette solution permet de travailler par la suite sur des données sensiblement moins importantes, et donc raccourcis les temps de traitements. À noter que le logiciel n'a pas d'interface graphique, tout s'effectue avec un terminal.
  
'''installer le logiciel osmctools'''
+
==== Installer le logiciel osmctools ====
::disponible dans les dépots
 
  
'''charger carte de la région sur Geofabrik en format compréssé osm.bz2, et décomprésser'''
+
::Disponible dans les dépôts
 +
 
 +
::<code>apt install osmctools</code>
 +
 
 +
==== Télécharger la carte ====
 +
 
 +
::Chargez la carte de la région sur Geofabrik en format compressé osm.bz2, et décompresser
 
::http://download.geofabrik.de/europe/france.html
 
::http://download.geofabrik.de/europe/france.html
  
'''si région non disponible, charger france et découper selon frontières région'''
+
'''Si la région n'est pas disponible, deux solutions :
 +
 
 +
* Chargez chacune des anciennes régions constituantes la nouvelle
 +
::<code>osmconvert lorraine.osm alsace.osm champagne.osm -o=grand_est.osm</code>
 +
::Il est conseillé de charger les régions au même moment afin d’éviter d'avoir des conflits lors de la fusion.
 +
 
 +
* Chargez la France et découpez selon les frontières de la région
 
::<code>osmconvert france-latest.osm -B=region.poly -o=region.osm</code>
 
::<code>osmconvert france-latest.osm -B=region.poly -o=region.osm</code>
::le fichier region.poly peut etre généré à partir de JOSM avec une extension homonyme
+
::Le fichier region.poly peut être généré à l'aide de [http://polygons.openstreetmap.fr ce service].
 +
 
 +
==== Générer fichiers avec données à charger ====
  
'''générer fichiers avec données à charger'''
 
 
::Les règles sont à adapter selon ce qui est rechargé pour le rendu, quelques exemples basiques :
 
::Les règles sont à adapter selon ce qui est rechargé pour le rendu, quelques exemples basiques :
 
::<code>osmfilter region.osm --keep="service:bicycle:diy=yes" >ateliers.osm</code>
 
::<code>osmfilter region.osm --keep="service:bicycle:diy=yes" >ateliers.osm</code>
Ligne 36 : Ligne 51 :
 
::<code>osmfilter region.osm --keep="place=city" --keep="place=town" >villes.osm</code>
 
::<code>osmfilter region.osm --keep="place=city" --keep="place=town" >villes.osm</code>
  
'''fusionner les fichiers'''
+
'''fusionner les fichiers précédemment générés'''
 
::<code>osmconvert ateliers.osm veloroutes.osm villes.osm -o=carte.osm</code>
 
::<code>osmconvert ateliers.osm veloroutes.osm villes.osm -o=carte.osm</code>
  
'''nous travaillerons par la suite avec le fichier carte.osm.'''
+
'''Nous travaillerons par la suite avec le fichier carte.osm.'''
  
 
'''Voici les règles que j'utilise avec osmctools (en cours de complétion).'''
 
'''Voici les règles que j'utilise avec osmctools (en cours de complétion).'''
Ligne 49 : Ligne 64 :
  
 
::// chemins (ways)
 
::// chemins (ways)
::--keep-ways="highway=trunk" // certaines voies rapides sont accessibles aux vélos (http://gis.19327.n8.nabble.com/highway-trunk-en-France-td5821793.html)
+
::--keep-ways="landuse=" // occupations des sols
::--keep-ways="highway=trunk_link"
 
::--keep-ways="highway=primary" // axes stucturants
 
::--keep-ways="highway=primary_link"
 
::--keep-ways="highway=secondary" // axes secondaires
 
::--keep-ways="highway=living_street" // zones de rencontres
 
::--keep-ways="highway=tertiary" // routes de liaisons
 
::--keep-ways="highway=cycleway" // pistes cyclables
 
::--keep-ways="highway=path" // les voies vertes sont representées avec cette balise
 
 
 
 
::--keep-ways="natural=water" // lacs, étangs
 
::--keep-ways="natural=water" // lacs, étangs
::--keep-ways="waterway=riverbank" // rivières larges
+
::--keep-ways="waterway=" // cours d'eaux divers
::--keep-ways="waterway=river" // rivières
 
::--keep-ways="waterway=canal" // canaux
 
  
 
::// relations
 
::// relations
 
::--keep-relations="route=bicycle" // Véloroutes (EuroVelo, VXX, locaux)
 
::--keep-relations="route=bicycle" // Véloroutes (EuroVelo, VXX, locaux)
 
 
::--keep-relations="admin_level=6" // Frontières des départements
 
::--keep-relations="admin_level=6" // Frontières des départements
 
 
::--keep-relations="natural=water" // lacs, étangs
 
::--keep-relations="natural=water" // lacs, étangs
::--keep-relations="waterway=riverbank" // rivières larges
+
::--keep-relations="waterway=" // cours d'eaux divers
 +
::--keep-relations="landuse=" // occupations des sols
  
 
'''Il est possible d’intégrer toutes ces règles dans un unique fichier, ce qui évite la fusion'''
 
'''Il est possible d’intégrer toutes ces règles dans un unique fichier, ce qui évite la fusion'''
 +
 +
'''Créez un fichier nommé "regles", y copier le contenu ci-dessous'''
 +
::-v veut dire verbose, c’est-à-dire bavard et donne des indications sur l'avancement de la requête (attention ne pas laisser d'espace devant les règles).
 +
 +
  -v
 +
 
 +
  --keep-nodes=
 +
  service:bicycle:diy=yes
 +
 
 +
  --keep-nodes=
 +
  place=city
 +
 
 +
  --keep-nodes=
 +
  place=town
 +
 
 +
  --keep-ways=
 +
  landuse=
 +
 
 +
  --keep-ways=
 +
  natural=water
 +
 
 +
  --keep=
 +
  waterway=
 +
 
 +
  --keep-relations=
 +
  route=bicycle
 +
 
 +
  --keep-relations=
 +
  admin_level=6
 +
 
 +
  --keep-relations=
 +
  natural=water
 +
 
 +
  --keep-relations=
 +
  waterway=
 +
 
 +
  --keep-relations=
 +
  landuse=
 +
 +
'''Puis lancer cette commande'''
  
 
::<code>osmfilter region.osm --parameter-file=regles >carte.osm</code>
 
::<code>osmfilter region.osm --parameter-file=regles >carte.osm</code>
  
'''Et créer un fichier nommé regles'''
+
=== Maperitive ===
::-v veut dire verbose, c'est à dire bavard et donne des indications sur l'avancement de la requête
 
  
-v
+
Ce logiciel permet de générer un rendu à partir des données OpenStreetMap. Tant pour du format papier (ce qui nous intéresse principalement), que pour du format web sous forme de tuiles (ceci ne sera pas traité dans ce tutoriel car demande des connaissances en gestion serveur web).
 +
Le rendu peut être généré en format vectoriel (SVG), et bitmap (PNG).
  
--keep-nodes=
+
==== Installer Maperitive ====
service:bicycle:diy=yes
 
  
--keep-nodes=
+
'''Installer et démarrer le logiciel Maperitive et décompresser le fichier.'''
place=city
+
::http://maperitive.net/
 +
::Il nécessite la librairie Mono, disponible dans les dépôts.
 +
::<code>apt install mono-runtime</code>
 +
::Démarrer avec le fichier Maperitive.exe
 +
::Le rendu OSM Mapnik est visible par défaut, supprimer ou désactivez-le en bas à droite.
  
--keep-nodes=
+
==== Charger les données dans Maperitive ====
place=town
 
  
--keep-ways=
+
::Un rendu classique s'affichera
highway=trunk
+
::File -> Open Map Sources...
 +
::Charger le fichier précédemment généré region.osm
  
--keep-ways=
+
'''Charger les règles'''
highway=trunk_link
+
::Un fichier de règles déjà réalisé est disponible sur [https://broman.fr/divers/tests/voyageureuses/maperitive/voyageureuses.mrules broman.fr], il n'est pas finalisé. et sera probablement à adapter selon vos besoins (voir la documentation Maperitive).
 +
::Tapez dans le terminal de Maperitive cette commande pour charger les règles :
 +
::<code>use-ruleset /chemin du fichier/voyageureuses.mrules</code>
 +
::Copiez dans le terminal de Maperitive cette commande pour appliquer les règles :
 +
::<code>apply-ruleset</code>
  
--keep-ways=
+
==== Générer une image vectorielle ====
highway=primary
 
  
--keep-ways=
+
'''Créer une zone d'impression'''
highway=primary_link
+
::Map -> Set Printing Bounds
 +
::Si vous dé-zoomez, vous verrez un rectangle bleu que vous pouvez modifier en cliquant dessus.
  
--keep-ways=
+
'''Choisir le bon zoom'''
highway=secondary
+
::Plus vous zoomerez, plus le fichier généré sera gros mais aussi précis. C'est la partie la plus complexe, car c'est par rapport au zoom choisit que la taille des noms et logos présents auront leur importance.
 +
::Soit vous devrez adapter les règles du fichier chargé précédemment, ou soit vous pouvez modifier les tailles dans un second temps avec Inkscape. Les deux peuvent aussi être combiné.
 +
::Dans notre exemple on zoomera à moins de 9, à vous d'adapter par la suite si cela ne convient pas. Vous pouvez utiliser la roulette de la souris, ou les touches - et +.
  
--keep-ways=
+
'''Générer l'image SVG'''
highway=tertiary
+
::Tools -> Export To SVG (For Inkscape)
 +
::Dans le dossier Maperitive/output/ a été créé un fichier image output.svg.
  
--keep-ways=
+
==== Manipulations facultatifs ====
highway=living_street
 
  
--keep-ways=
+
'''Script pour afficher les noms de départements'''
highway=cycleway
 
  
--keep-ways=
+
::Par défaut, Maperitive ne sait pas exploiter convenablement les relations OSM, il n'est pas possible d'afficher les noms des départements.
highway=path and bicycle=designated
+
::Cependant, il est possible de contourner cette limitation via un scipt Python, en convertissant la relation en simple polygonne.
  
--keep-ways=
+
Pour ce faire créez un fichier Python :
natural=water
 
  
--keep=
+
::<code>convert_bundary_relation_polygone.py</code>
waterway=riverbank
 
  
--keep-ways=
+
Et y copier ceci :
waterway=river
 
  
--keep-ways=
+
  from maperipy import *
waterway=canal
+
  from maperipy.osm import *
 +
  for layer in Map.layers:
 +
    if layer.layer_type == "OsmLayer":
 +
        osmWayList = layer.osm
 +
        for relation in osmWayList.find_relations(lambda x : True):
 +
            if relation.has_tag("boundary","administrative") and relation.has_tag("type"):
 +
                osmWayList.relation(relation.id).set_tag("type","multipolygon")
  
--keep-relations=
+
Dans Mapertive, copiez ceci dans la barre de commandes, et validez :
route=bicycle
 
  
--keep-relations=
+
::<code>run-python /chemin du fichier/convert_bundary_relation_polygone.py</code>
admin_level=6
 
  
--keep-relations=
+
Il ne reste plus qu'à recharger le rendu
natural=water
 
  
--keep-relations=
+
::Faites Ctrl + R
waterway=riverbank
 
  
==== Maperitive ====
+
'''Désactiver la collision'''
  
Ce logiciel permet de générer un rendu à partir des données OpenStreetMap. Tant pour du format papier (ce qui nous intéresse principalement), que pour du format web sous forme de tuiles (ceci ne sera pas traité dans ce tutoriel car demande des connaissances en gestion serveur web).
+
::Maperitive utilise par défaut un système d'anti collision de textes : s'ils se chevauchent certains d'entre eux ne sont pas affichés.
Le rendu peut être généré en format vectoriel (SVG), et bitmap (PNG).
+
::Il existe deux solution:
 +
::* Utiliser la balise "placement-value" dans le fichier de règles de rendu, ce qui supprimera les textes selon la configuration indiqué. Lisez la documentation de Maperitive si vous choisissez cette solution.
 +
::* Tout afficher, puis les déplacer et/ou supprimer par la suite avec le logiciel Inkscape.
 +
 
 +
Pour cette seconde solution, il suffit de désactiver la fonctionnalité directement dans la barre de commandes de Maperitive :
  
'''installer et démarrer le logiciel Maperitive et décompresser le fichier.'''
+
::<code>set-setting name=map.rendering.detect-label-collision  value=false</code>
::http://maperitive.net/
 
::il nécessite la librairie Mono, disponible dans les dépôts.
 
::démarrer avec le fichier Maperitive.exe
 
::le rendu OSM Mapnik est visible par défaut, supprimer ou désactivez-le en bas à droite.
 
  
'''charger les données dans Maperitive, un rendu classique s'affichera'''
+
Maintenant, vous pouvez recharger le rendu (Ctrl + R).
::File -> Open Map Sources...
 
::Charger le fichier précédemment généré region.osm
 
  
'''charger les règles'''
+
''truc à faire : tester l'introduction des ombrages relief, ajouter gestion des véloroutes nationales/internationales.''
::qui n'existent pas encore !
 
  
truc à faire : introduire les courbes de niveaux + éventuellement ombrages relief
+
== Exemples ==
 +
* [http://velocarte66.fr/ Vélocarte des Pyrénées-Orientales]
 +
* ajoutez ici un exemple
  
=== Documentations utilisées pour la production de ce tutoriel ===
+
== Documentations ==
  
[https://wiki.openstreetmap.org/wiki/FR:Page_principale Le wiki OSM pour retrouver les balises] (en français/anglais)
+
* [https://wiki.openstreetmap.org/wiki/FR:Page_principale Le wiki OSM pour retrouver les balises] (en français/anglais)
[https://wiki.openstreetmap.org/wiki/Osmfilter Osmfilter] (en anglais)
+
* [https://wiki.openstreetmap.org/wiki/Osmfilter Osmfilter] (en anglais)
[https://wiki.openstreetmap.org/wiki/Osmconvert Osmconvert] (en anglais)
+
* [https://wiki.openstreetmap.org/wiki/Osmconvert Osmconvert] (en anglais)
[http://maperitive.net/docs/ Maperitive] (en anglais)
+
* [http://maperitive.net/docs/ Maperitive] (en anglais)

Version actuelle datée du 14 février 2018 à 21:39

Ce tutoriel est en cours d'écriture donc inexploitable tel quel, mais n’hésitez pas à proposer des améliorations et simplifications si vous avez des connaissances

Axel de Dynamo Nancy (axel[arobase]broman[point]fr).

Cet article est en lien avec celui de la Cartographie.

Préambule

L’intérêt de travailler avec OpenStreetMap est de donner la possibilité à ceux réutilisant la carte générée, de pouvoir améliorer et correctionner les données y figurantes. Il s'agit en effet d'une cartographie libre et participatif, similaire à ce qu'est Wikipédia pour l'encyclopédie. Aussi les données issues d'OSM sont sous licences libres, les seules limitations quant à leurs réutilisations hormis une paternité (Les contributeurs d'OpenStreetMap), est l'obligation de redistribuer ces données et éventuellement les modifications apportées sous cette même licence ou équivalente.

Les logiciels utilisés dans ce tutoriel sont sous licence libre, hors Maperitive qui n'a pas d’équivalence (il est tout de même gratuit et multi-plateforme). L’intérêt est là de donner la possibilité à tous de pouvoir reproduire le travail avec le minimum de contrainte.

Ce tutoriel nécessite un ordinateur relativement performant et une bonne capacité de stockage est conseillé. Il est adapté pour un système d'exploitation GNU/Linux Debian/Ubuntu. Si vous utilisez un autre système, ces logiciels existent pour Windows, MAC OSX et GNU/Linux, mais c'est à vous de vous adapter !

Le tutoriel permet de générer une carte sur une échelle régionale, mais il est tout à fait possible de créer un rendu pour une ville ou un pays ou bien encore d’autres thèmes. Les règles seront juste à ajuster en fonction de la quantité de données voulus, et de ce qui est recherché.

Exemple de résultat possible (attention le fichier fait 40 mo).

Méthodologie

osmctools

Ce logiciel permet de récupérer uniquement les données étant utiles pour la création du rendu sur mesure. Les fichiers originaux des régions faisant en général plusieurs gigaoctets de données, cette solution permet de travailler par la suite sur des données sensiblement moins importantes, et donc raccourcis les temps de traitements. À noter que le logiciel n'a pas d'interface graphique, tout s'effectue avec un terminal.

Installer le logiciel osmctools

Disponible dans les dépôts
apt install osmctools

Télécharger la carte

Chargez la carte de la région sur Geofabrik en format compressé osm.bz2, et décompresser
http://download.geofabrik.de/europe/france.html

Si la région n'est pas disponible, deux solutions :

  • Chargez chacune des anciennes régions constituantes la nouvelle
osmconvert lorraine.osm alsace.osm champagne.osm -o=grand_est.osm
Il est conseillé de charger les régions au même moment afin d’éviter d'avoir des conflits lors de la fusion.
  • Chargez la France et découpez selon les frontières de la région
osmconvert france-latest.osm -B=region.poly -o=region.osm
Le fichier region.poly peut être généré à l'aide de ce service.

Générer fichiers avec données à charger

Les règles sont à adapter selon ce qui est rechargé pour le rendu, quelques exemples basiques :
osmfilter region.osm --keep="service:bicycle:diy=yes" >ateliers.osm
osmfilter region.osm --keep= --keep-relations="route=bicycle" >veloroutes.osm
osmfilter region.osm --keep="place=city" --keep="place=town" >villes.osm

fusionner les fichiers précédemment générés

osmconvert ateliers.osm veloroutes.osm villes.osm -o=carte.osm

Nous travaillerons par la suite avec le fichier carte.osm.

Voici les règles que j'utilise avec osmctools (en cours de complétion).

// nœuds (nodes)
--keep-nodes="service:bicycle:diy=yes" // ateliers de réparations vélos "faites le vous même"
--keep-nodes="place=city" // ville de plus de 100 000 habitants
--keep-nodes="place=town" // ville de plus de 10 000 habitants
// chemins (ways)
--keep-ways="landuse=" // occupations des sols
--keep-ways="natural=water" // lacs, étangs
--keep-ways="waterway=" // cours d'eaux divers
// relations
--keep-relations="route=bicycle" // Véloroutes (EuroVelo, VXX, locaux)
--keep-relations="admin_level=6" // Frontières des départements
--keep-relations="natural=water" // lacs, étangs
--keep-relations="waterway=" // cours d'eaux divers
--keep-relations="landuse=" // occupations des sols

Il est possible d’intégrer toutes ces règles dans un unique fichier, ce qui évite la fusion

Créez un fichier nommé "regles", y copier le contenu ci-dessous

-v veut dire verbose, c’est-à-dire bavard et donne des indications sur l'avancement de la requête (attention ne pas laisser d'espace devant les règles).
 -v
 
 --keep-nodes=
 service:bicycle:diy=yes
 
 --keep-nodes=
 place=city
 
 --keep-nodes=
 place=town
 
 --keep-ways=
 landuse=
 
 --keep-ways=
 natural=water
 
 --keep=
 waterway=
 
 --keep-relations=
 route=bicycle
 
 --keep-relations=
 admin_level=6
 
 --keep-relations=
 natural=water
 
 --keep-relations=
 waterway=
 
 --keep-relations=
 landuse=

Puis lancer cette commande

osmfilter region.osm --parameter-file=regles >carte.osm

Maperitive

Ce logiciel permet de générer un rendu à partir des données OpenStreetMap. Tant pour du format papier (ce qui nous intéresse principalement), que pour du format web sous forme de tuiles (ceci ne sera pas traité dans ce tutoriel car demande des connaissances en gestion serveur web). Le rendu peut être généré en format vectoriel (SVG), et bitmap (PNG).

Installer Maperitive

Installer et démarrer le logiciel Maperitive et décompresser le fichier.

http://maperitive.net/
Il nécessite la librairie Mono, disponible dans les dépôts.
apt install mono-runtime
Démarrer avec le fichier Maperitive.exe
Le rendu OSM Mapnik est visible par défaut, supprimer ou désactivez-le en bas à droite.

Charger les données dans Maperitive

Un rendu classique s'affichera
File -> Open Map Sources...
Charger le fichier précédemment généré region.osm

Charger les règles

Un fichier de règles déjà réalisé est disponible sur broman.fr, il n'est pas finalisé. et sera probablement à adapter selon vos besoins (voir la documentation Maperitive).
Tapez dans le terminal de Maperitive cette commande pour charger les règles :
use-ruleset /chemin du fichier/voyageureuses.mrules
Copiez dans le terminal de Maperitive cette commande pour appliquer les règles :
apply-ruleset

Générer une image vectorielle

Créer une zone d'impression

Map -> Set Printing Bounds
Si vous dé-zoomez, vous verrez un rectangle bleu que vous pouvez modifier en cliquant dessus.

Choisir le bon zoom

Plus vous zoomerez, plus le fichier généré sera gros mais aussi précis. C'est la partie la plus complexe, car c'est par rapport au zoom choisit que la taille des noms et logos présents auront leur importance.
Soit vous devrez adapter les règles du fichier chargé précédemment, ou soit vous pouvez modifier les tailles dans un second temps avec Inkscape. Les deux peuvent aussi être combiné.
Dans notre exemple on zoomera à moins de 9, à vous d'adapter par la suite si cela ne convient pas. Vous pouvez utiliser la roulette de la souris, ou les touches - et +.

Générer l'image SVG

Tools -> Export To SVG (For Inkscape)
Dans le dossier Maperitive/output/ a été créé un fichier image output.svg.

Manipulations facultatifs

Script pour afficher les noms de départements

Par défaut, Maperitive ne sait pas exploiter convenablement les relations OSM, il n'est pas possible d'afficher les noms des départements.
Cependant, il est possible de contourner cette limitation via un scipt Python, en convertissant la relation en simple polygonne.

Pour ce faire créez un fichier Python :

convert_bundary_relation_polygone.py

Et y copier ceci :

 from maperipy import *
 from maperipy.osm import *
 for layer in Map.layers:
   if layer.layer_type == "OsmLayer":
       osmWayList = layer.osm
       for relation in osmWayList.find_relations(lambda x : True):
           if relation.has_tag("boundary","administrative") and relation.has_tag("type"):
               osmWayList.relation(relation.id).set_tag("type","multipolygon")

Dans Mapertive, copiez ceci dans la barre de commandes, et validez :

run-python /chemin du fichier/convert_bundary_relation_polygone.py

Il ne reste plus qu'à recharger le rendu

Faites Ctrl + R

Désactiver la collision

Maperitive utilise par défaut un système d'anti collision de textes : s'ils se chevauchent certains d'entre eux ne sont pas affichés.
Il existe deux solution:
  • Utiliser la balise "placement-value" dans le fichier de règles de rendu, ce qui supprimera les textes selon la configuration indiqué. Lisez la documentation de Maperitive si vous choisissez cette solution.
  • Tout afficher, puis les déplacer et/ou supprimer par la suite avec le logiciel Inkscape.

Pour cette seconde solution, il suffit de désactiver la fonctionnalité directement dans la barre de commandes de Maperitive :

set-setting name=map.rendering.detect-label-collision value=false

Maintenant, vous pouvez recharger le rendu (Ctrl + R).

truc à faire : tester l'introduction des ombrages relief, ajouter gestion des véloroutes nationales/internationales.

Exemples

Documentations