Skip to content

Routage "petit_trail" modifications

Antonin Del Fabbro edited this page Feb 4, 2024 · 14 revisions

infos génériques sur les 3 routages

Dans l'ordre en partant du début du fichier les paramètres modifiables pour influer sur le calcul

  • <attribute name="heuristicCoefficient" value="3.4" /> indice de "pifométrie"

(plus il est bas plus le calcul respecte les instructions du fichier, mais plus le calcul sera lent)

  • <routingProfile name="petit_trail" baseProfile="car" restrictionsAware="true" minSpeed="1" defaultSpeed="40.0" maxSpeed="110.0" sharpTurn="" slightTurn="" roundaboutTurn="" followSpeedLimitations="false" onewayAware="true">

(testez d'autres valeurs, sachant qu'elles seront écrasées par celle du réglage du profil OsmAnd)

access

ce qui ne sera pas inclus dans les calculs de routage à cause de value="-1"

		<way attribute="access">
			<select value="-1" t="osmand_change" v="delete"/>
			<select value="-1" t="construction" v="yes"/>
			<select value="-1" t="smoothness" v="impassable"/>
			<select value="-1" t="highway" v="path"/>
			<select value="-1" t="highway" v="footway"/>
			<select value="-1" t="highway" v="cycleway"/>
			<select value="-1" t="mtb:scale" v="2"/>
			<select value="-1" t="mtb:scale" v="3"/>
			<select value="-1" t="mtb:scale" v="4"/>
			<select value="-1" t="mtb:scale" v="5"/>
			<select value="-1" t="mtb:scale" v="6"/>

ce qui est inclus sous condition

			<if param="avoid_ice_roads_fords">
				<select value="-1" t="ice_road" v="yes"/>
				<select value="-1" t="winter_road" v="yes"/>
				<select value="-1" t="ford" v="yes"/>
			</if>

et tous les blocs <if> suivants à l'intérieur du bloc pour définir les interdictions ou le privé

la fin du bloc <access> qui interdit tout autre way que celles incluses plus haut (pour éviter du routage sur les way type rivière ou téléphérique par exemple)

			<select value="-1"/>
		</way>

📝 ce qui signifie que

  • les sentiers (single track ou "path" dans Osm) ne seront jamais inclus dans le calcul (à moins d'être mal renseigné dans Osm)
  • les footway (sentier pour pédestre) ne sont pas inclus
  • les pistes cyclable non plus
  • tout ce qui est précisé mtb:scale échelle difficulté VTT au delà de 1 sera ignoré pour le calcul
    même si les mtb:scale sont censées s'appliquer uniquement aux sentiers

speed

vitesse des différents chemins ou attributs qui permet de dessiner la hiérarchie que va employer le moteur de calcul (toujours le plus rapide si possible) et d'obtenir une estimation du temps de parcours réaliste.

priority

au début du bloc les routes goudronnées,

  • "0.1" interdit l'utilisation
  • "0.5" pour certaines voies qui sont généralement le lien entre chemins (si priorité trop basse les chemins ne seront plus atteignables...)
			<select value="0.1" t="highway" v="motorway"/>
			<select value="0.1" t="highway" v="motorway_link"/>
			<select value="0.15" t="highway" v="trunk"/>
			<select value="0.15" t="highway" v="trunk_link"/>
			<select value="0.2" t="highway" v="primary"/>
			<select value="0.2" t="highway" v="primary_link"/>
			<select value="0.2" t="highway" v="secondary"/>
			<select value="0.2" t="highway" v="secondary_link"/>
			<select value="0.2" t="highway" v="tertiary"/>
			<select value="0.2" t="highway" v="tertiary_link"/>
			<select value="0.5" t="highway" v="unclassified"/>
			<select value="0.5" t="highway" v="road"/>
			<select value="0.5" t="highway" v="service"/>
			<select value="0.5" t="highway" v="residential"/>
			<select value="0.2" t="highway" v="living_street"/>

ensuite le sous bloc dépendant de l'activation du switch "trie les chemins" qui en cas de switch "actif" s'applique avant la suite du fichier

c'est ici que sont "hiérarchisés" les chemins, vous devez commencer par l'attribut le plus défavorable à votre activité car les objets ne sont pris qu'une fois avec le premier de leur attribut exprimé ici (si un grade3 est aussi indiqué mud il faut que mud soit considéré avant grade3 pour avoir l'effet escompté)

			<if param="avoid_grade">
				<select value="1.5" t="ford" v="yes"/>
				<select value="1.25" t="smoothness" v="very_horrible"/>
				<select value="1.5" t="smoothness" v="horrible"/>
				<select value="1.5" t="surface" v="mud"/>
				<select value="1.5" t="surface" v="sand"/>
				<select value="1.5" t="surface" v="grass"/>
				<select value="1.75" t="surface" v="dirt"/>
				<select value="1.75" t="surface" v="earth"/>
				<select value="1.75" t="surface" v="unpaved"/>
				<select value="1.75" t="surface" v="ground"/>
				<select value="1.75" t="tracktype" v="grade5"/>			
				<select value="1.75" t="surface" v="rock"/>
				<select value="2" t="tracktype" v="grade4"/>			
				<select value="2" t="surface" v="compacted"/>
				<select value="2" t="surface" v="gravel"/>
				<select value="2" t="surface" v="pebblestone"/>
				<select value="2" t="surface" v="cobblestone"/>
				<select value="2" t="surface" v="unhewn_cobblestone"/>
				<select value="2" t="surface" v="paved"/>
				<select value="2" t="surface" v="paving_stones"/>
				<select value="2" t="tracktype" v="grade3"/>
				<select value="2" t="surface" v="fine_gravel"/>
				<select value="2" t="surface" v="asphalt"/>
				<select value="2" t="surface" v="metal"/>
				<select value="2" t="surface" v="chipseal"/>
				<select value="2" t="surface" v="wood"/>
				<select value="2" t="surface" v="concrete"/>
				<select value="2" t="tracktype" v="grade2"/>
				<select value="2" t="tracktype" v="grade1"/>
				<select value="1.5" t="highway" v="track"/><!--chemins non taggés-->
			</if>

ici la dernière ligne donne la vitesse de l'élément suivante au moteur de calcul (depuis le bloc speed) 20 * 1.5 =30
et les lignes précédentes (depuis le bloc speed) 45 * 2=90
les chemins sans précisions sont défavorisés d'un facteur de 3 par rapport aux pistes

⚠️ lorsque vous résidez (ou séjournez) dans une région dont une grosse partie des chemins sont restés sans précisions particulières dans OpenStreetMap
la valeur "1.5" attribuée aux chemins sans précisions (la dernière ligne du sous bloc <select value="1.50" t="highway" v="track"/>) va s'appliquer par opposition à la valeur qui lui est attribuée lorsque le switch n'est pas activée "5"

💡 si vous trouvez que le calcul prend trop de route (à cause d'une différence entre valeurs des routes et celle de "track" trop faible)
augmentez la valeur de "track"
ou plus simplement désactivez le switch "trie les chemins"

lorsque le switch "trie les chemins" est inactif, c'est la fin du bloc priorityqui s'applique

			<select value="5" t="highway" v="track"/><!--chemins -->

			<select value="0"/>
		</way>

tout est au même niveau de priorité
rien n'est ajouté ou enlevé, mais la proportion de chemins dont la "qualité", la "surface", sont inconnues va beaucoup augmenter

  • avantage, vous ne ratez aucun chemins et le calcul est très rapide
  • inconvénient, vous ne savez pas sur quoi vous allez rouler (boue, sable etc)

voilà pour la partie "tuning" du routage de "petit_trail"
si vous trouvez de meilleures valeurs, n'hésitez pas à en faire profiter tout le monde en partageant votre résultat :)

exemples

dans une zone avec la majorité des chemins sans précisions.

fichier original sans "trie les chemins" fichier original avec "trie les chemins"
fichier modifié 1.5 pour track fichier modifié 1 pour track