Outils utilisateur

Outils de site


manuel:avancé:personnalisation:online_maps

Cartes en ligne personnalisées


Informations de base

  • Fichier XML - contient la description des fournisseurs de cartes en ligne (plus ci-dessous). Le nom et le chemin d'accès à ce fichier sur la carte de stockage (ou la mémoire interne) sont /CARD_ROOT/Locus/mapsOnline/personnalisé/ .xml (vous pouvez avoir plus d'un xml dans le dossier, Locus Map les ajoutera tous)
  • Images PNG (facultatif) - pour chaque nom de fournisseur de carte. Cette icône n'est pas obligatoire ! Il est simplement affiché à côté du nom de la carte dans le gestionnaire de cartes. Le nom de cette icône doit être le même que le texte de la balise de nom.

Exemple de carte

Un exemple de carte OpenPiste (basée sur OSM) créée à partir de trois couches :

  1. couche d'arrière-plan non visible dans la liste des cartes mais requise.
  2. couche de contour, visible mais pas vraiment nécessaire. Si cette couche n'est pas visible à certains endroits et lorsque le serveur renvoie le code 404 pour les tuiles manquantes, vous pouvez toujours voir la couche d'arrière-plan.
  3. couche d'ombrage, également pas nécessaire. Cette couche est visible dans la liste des cartes - remplissez le "mode" et la "zone" corrects (facultatif).

Le référent ajouté à l'en-tête n'est pas recommandé dans ce cas.

Mapper le code dans le fichier providers.xml

fournisseurs.xml
<?xml version="1.0" codage="UTF-8"?>
    <fournisseurs>
       <fournisseur id="1000" type="0" visible="faux" conditions="True" fond="-1">
          <nom>OSM</nom>
          <mode>fond</mode>
          <url></url>
          <zoomPart>{z}-8</zoomPartie>
          <zoomMin>8</zoomMin>
          <zoomMax>24</zoomMax>
          <tileTaille>256</tileSize>
          <échelle de tuile dpi="0" multi="2.0" remplacer="19" />
          <extraHeader>Référent#http://locus.asamm.cz/</extraHeader>
       </fournisseur>
       <fournisseur id="1001" type="0" visible="faux" conditions="faux" fond="1000">
          <nom>OSM</nom>
          <mode>contours</mode>
          <url></url>
          <zoomPart>{z}-8</zoomPartie>
          <zoomMin>8</zoomMin>
          <zoomMax>24</zoomMax>
          <tileTaille>256</tileSize>
          <échelle de tuile dpi="0" multi="2.0" remplacer="19" />
          <extraHeader>Référent#http://locus.asamm.cz/</extraHeader>
       </fournisseur>
       <fournisseur id="1002" type="0" visible="True" conditions="faux" fond="1001">
          <nom>OSM</nom>
          <mode>OpenPiste</mode>
          <url></url>
          <zoomPart>{z}-8</zoomPartie>
          <zoomMin>8</zoomMin>
          <zoomMax>24</zoomMax>
          <tileTaille>256</tileSize>
          <échelle de tuile dpi="0" multi="2.0" remplacer="19" />
          <pays>Monde</pays>
          <utilisation>randonnée, ski</usage>
          <extraHeader>Référent#http://locus.asamm.cz/</extraHeader>
       </fournisseur>
    </fournisseurs>

Spécifications de la définition de la carte

  • id - identifiant obligatoire, doit être supérieur ou égal à 1000. Les valeurs inférieures sont réservées à Locus Map.
  • type - type de fournisseur de carte
    • 0 - Mercator sphérique, projection Sphérique, Y inverse
    • 1 - Mercator sphérique, projection Sphérique, normale Y
    • 2 - Mercator sphérique, projection Ellipsoïde, Y inverse
    • 3 - Mercator sphérique, projection Ellipsoïde, normale Y
    • 4 - Mercator Sphérique, projection Sphérique, Y du centre
    • 5 - Spherical mercator, projection Spheric, Quadkey map system (plus d'infos ici : http://msdn.microsoft.com/en-us/library/bb259689.aspx)
      • utilisez {c} pour la partie coordonnée uniquement. Il n'y a pas de coordonnées X, Y, Z dans URL, juste {c} !
  • visible - visibilité du fournisseur dans la liste
  • conditions - la tuile de ce fournisseur est-elle requise ? Lorsque le serveur renvoie 404, utiliser le reste de la carte multicouche ou non ?
  • fond - ID de la couche d'arrière-plan
  • prénom - nom du fournisseur
  • mode - brève description
  • la surface - obsolète, n'est plus utilisé
  • url - http://tile… - URL de base pour les tuiles qui ne change pas avec les requêtes. Syntaxe {z}/{x}/{y} pour les tuiles, où {x} et d'autres remplacent les coordonnées X, Y et Zoom
    • {X} - remplace la tuile X
    • {o} - remplace la tuile Y
    • {z} - remplace le niveau de zoom après zoomPartie le calcul est appliqué
    • {ts} - tileScale remplace la valeur
    • {s} (optionnel) - remplace le texte du serveur
  • partie serveur - L'élément {s} peut être défini dans l'url principale. Dans serverPart, un tableau d'éléments peut ensuite être défini qui sera défini de manière aléatoire comme élément {s}. Ainsi par exemple 0;1;2 et l'url a commencé commehttp://tiles{s}.ouvrir ….. {z}/{x}/{y}.png]]> définira chaque appel de manière aléatoire http://tiles0.open…, ou http://tiles1.open…, ou http://tiles2.open...
    Partie serveur paramètre peut également être défini par x, y et paramètres dans une formule mathématique simple :
     ({x}+{y})%4
  • zoomPartie - {z}-8 - syntaxe pour recalculer la valeur de zoom correcte pour la requête. Cette valeur est généralement Zoom - zoom minimum, mais peut être différente
  • zoomMin - zoom minimal
  • zoomMax - zoom maximal
  • TileSize - taille des tuiles en pixels
  • tuileÉchelle - définit le facteur d'échelle (multi) comme étant 2x, le DPI auquel s'appliquer (dpi, 0 = tous les appareils) et la valeur qui sera remplacée dans l'url (remplacer, ne doit pas être vide)
  • d'exportation - liste des pays (séparés par des virgules) pertinents pour la carte. Ces valeurs sont utilisées pour séparer les cartes dans « l'onglet Carte en ligne ».
  • usage - liste des usages possibles de cette carte (séparés par des virgules). Les options actuelles sont : aéro, superposition, cyclé, nautique, photo, randonnée, route, ski, transport, ville. Ces valeurs sont utilisées pour séparer les cartes dans « l'onglet Carte en ligne ».
  • en-tête supplémentaire - requête Http supplémentaire ajoutée à la requête de mosaïque sur le serveur. Ces données supplémentaires se composent de deux parties avec la syntaxe part1#part2. Part1 est le nom de la requête, Part2 est la valeur de la requête. De plus, ce TAG doit être en XML pour chaque fournisseur plus d'une fois.
  • attribution - texte court affiché en bas de l'écran de la carte. Veuillez l'utiliser lorsque vous utilisez des cartes protégées par des droits d'auteur qui nécessitent une attribution dans leurs conditions d'utilisation.

Les ZoomValues ​​(zoomMin, zoomMax) doivent être comptés comme niveau de zoom valide par 2^x. Ainsi, le monde entier a une tuile 256 × 256 px, ce qui signifie 2 ^ 8, donc X = 8 !. C'est pourquoi presque toutes les cartes de Locus commencent par zoomMin = 8 mais ont zoomPart {z} - 8. En effet, dans les URL, les zooms commencent généralement de 0 à une valeur maximale.

Cette solution devrait être améliorée, donc si vous avez des idées, faites-le nous savoir. En outre, un développeur Android expérimenté devrait être en mesure de créer un mécanisme permettant d'ajouter des fournisseurs externes via des fournisseurs de contenu ou des services.

Maintenant que vous connaissez la syntaxe des fournisseurs, vous devez ajouter vos propres fournisseurs. S'il vous plaît, partagez des liens avec d'autres et profitez-en !

Allusions

  • les fournisseurs du même nom seront regroupés
  • si vous ajoutez une icône PNG dans un répertoire personnalisé portant le même nom que le nom du fournisseur, elle sera jointe à l'écran de la carte en ligne

Comment obtenir les informations requises

Nous vous recommandons d'utiliser le navigateur Firefox avec l'extension HttpFox :

  • Démarrez le navigateur Firefox et ouvrez une page Web avec une carte. Bel exemple est http://www.openstreetmap.org/.
  • Ouvrez HttpFox à partir du menu Outils ou par SHIFT-F2. Et appuyez sur le bouton Démarrer vert supérieur.
  • Zoomez maintenant d'un niveau et vous verrez la liste des requêtes sur le serveur de carte. Voir capture d'écran ci-dessous.
  • prendre sélectionné URL ligne. Obligatoire URL est à droite donc quand nous séparons une partie avec des coordonnées alors 12/2215/1389 sera cooPart écrit comme {z}/{x}/{y}.
  • le reste est une partie d'url donc il ressemblera http://c.tile.openstreetmap.org/{c}.png.
  • Ce sont les principales valeurs nécessaires pour ajouter une carte. La taille de tuile est généralement de 256 px. Les valeurs de zoom min et max doivent être testées manuellement. De plus, zoomPart est généralement z-8, ce qui signifie que le zoom 20 dans Locus sera servi comme 12 dans la demande sur le serveur.

Un autre exemple de carte en ligne personnalisée peut être le fichier XML Strava Global Heatmap que nous avons préparé avec nos utilisateurs. Il contient des couches de cyclisme et de course à pied et peut être téléchargé ici >>. Décompressez-le simplement dans le répertoire Locus/mapsOnline/custom et profitez-en !

Propre serveur de tuiles Open Map

Désactivation de la limite de téléchargement de cartes

Si vous exploitez votre propre serveur de tuiles de carte, vous devrez peut-être annuler la limite de téléchargement de tuiles qui est défini dans Locus par défaut afin de maintenir un trafic de téléchargement décent par application :

  1. Activer les mod_headers: en-têtes sudo a2enmod
  2. Modifier le fichier de configuration Apache (/etc/apache2/apache2.conf) et ajouter à la fin : Header set locus_disable_download_limit « true »
manuel/avancé/personnalisation/online_maps.txt · Dernière modification : 2019/07/03 16:33 par mstupka