WebGIS
Le serveur WebGIS standard est inclus dans Wialon Local. Par défaut, toute information d’adresse utilisée pour le suivi en ligne et les rapports est prise directement depuis celui-ci.
Les fichiers au format AVD sont utilisés dans WebGIS. Les fichiers de ce format peuvent être créés à partir d’autres formats de données vectorielles, tels que MP, MapInfo, ESRI Shape, OSM (OpenStreetMap). Notez que la carte source doit être réalisée dans le système de coordonnées WGS-84 (en degrés).
Les cartes sources dans le format vectoriel pris en charge doivent être téléchargées sur le serveur. Les fichiers de cartes sources doivent être fournis sous forme d’archive de données (TAR, RAR, ZIP) incluant un ensemble de fichiers de configuration. Selon le format de la carte source, l’archive doit inclure un ensemble particulier de fichiers.
Pour décompresser avec succès l’archive sur le serveur, celle-ci ne doit pas contenir de sous-dossiers.
Paramètres de compilation
| Paramètre | Description |
|---|---|
| Map name | Nom de la carte, par exemple, le nom de la ville pour laquelle la carte est créée. |
| Map tag | Balise de carte comme ville, pays, etc. Peut être utilisée pour une recherche ou comme filtre de dessin. |
| Priority | Priorité de la carte ; 100 par défaut. Une priorité plus élevée signifie un rendu de carte plus précoce. Les cartes avec une priorité mineure sont rendues plus tard et sont situées au-dessus de celles avec une priorité plus élevée. |
| Min level | Le niveau minimum désiré auquel dessiner une carte (0-16). |
| Max level | Le niveau maximum désiré auquel dessiner une carte (0-16). |
| Add search | Ajouter des informations pour la recherche à la carte. |
| Capital letters | Considérer la casse des lettres (minuscule/majuscule) dans les informations d’adresse du fichier MP (villes, régions, pays). |
| Clear background | L’option Clear background lors du rendu de carte est utilisée pour combiner plusieurs cartes. Les cartes avec une priorité plus élevée situées dans les couches inférieures ne sont pas affichées. Si les cartes se chevauchent, la carte supérieure (plus détaillée) est affichée. L’arrière-plan est blanc. Il est fortement recommandé d’utiliser ce paramètre. |
| Skip render | Le rendu de carte ignoré est utilisé lorsque vous ne voulez pas ajouter d’informations de dessin au fichier (dans ce cas, la carte est utilisée uniquement pour la recherche). |
| Skip default render | Ne pas inclure les informations de dessin pour la carte dans le fichier par défaut. Le rendu de carte n’est disponible que pour les plans de facturation avec les balises de carte correspondantes. |
| Skip addresses | Ne pas ajouter d’informations au fichier pour le géocodage inverse (détermination de l’adresse par coordonnées) sur la carte (utilisé uniquement pour le rendu). |
Création d’une carte à partir du format MP
Pour créer une carte à partir du format Polish MP, vous devez utiliser un fichier de configuration XML spécial. Pour le télécharger sur le serveur, une archive constituée d’une carte source au format MP et d’un fichier XML de configuration doit être créée.
Les noms du fichier XML de configuration et de l’archive doivent être identiques.
Le fichier de configuration standard transformant les fichiers MP en fichiers AVD (pfm.xml) peut être téléchargé ici : http://distro.gurtam.com/maps_cfg/. Vous pouvez créer votre propre fichier de configuration selon vos exigences.
Exemple :
<pfm>
<feature type="0x0001" shape="PL" avd_type="1" max_level="2" name="A restricted access major divided highway, normally with 2 or more running lanes plus emergency hard shoulder. Equivalent to the Freeway, Autobahn, etc." use_addr="1" is_street="1"/>
<feature type="0x0002" shape="PL" avd_type="3" max_level="2" name=" Important roads that aren't motorways. Typically maintained by central, not local government. Need not necessarily be a divided highway." use_addr="1" is_street="1"/>
<feature type="0x0003" shape="PL" avd_type="5" max_level="2" name="Roads generally linking larger towns." use_addr="1" is_street="1"/>
<feature type="0x0004" shape="PL" avd_type="7" max_level="2" name="Roads generally linking smaller towns and villages." use_addr="1" is_street="1"/>
<feature type="0x0000" shape="PL" avd_type="9" max_level="2" name="Minor roads." use_addr="1" is_street="1"/>
<feature type="0x000a" shape="PL" avd_type="11" max_level="1" name="Unclassified roads typically form the lowest form of the interconnecting grid network." use_addr="1" is_street="1"/>
<feature type="0x0042" shape="PL" avd_type="12" max_level="1" name="Unpaved roads." use_addr="1"/>
<feature type="0x3008" shape="POI" avd_type="59" max_level="0" name="A fire station." use_addr="1" is_house="1"/>
<feature type="0xf001" shape="POI" avd_type="60" max_level="0" name="Bus station." use_addr="1" is_house="1"/>
<feature type="0x2f06" shape="POI" avd_type="61" max_level="0" name="A bank." use_addr="1" is_house="1"/>
<feature type="0x2b00" shape="POI" avd_type="62" max_level="0" name="A hotel." use_addr="1" is_house="1"/>
</pfm>
Les paramètres suivants sont utilisés dans le fichier XML de configuration.
| Paramètre | Description |
| --------- | ----------- |
| use_addr | Utiliser cet élément lors de la recherche d'une adresse par coordonnées. |
| is_city | Utiliser cet élément lors de la recherche d'un lieu par nom (ville). |
| is_street | Utiliser cet élément lors de la recherche d'une rue par nom (rue). La fonction de verrouillage (accrochage) aux routes peut également utiliser cet élément. |
| is_house | Utiliser cet élément lors de la recherche d'une maison par nom ou numéro (maison). |
| is_road | La route. Cet élément peut également être utilisé pour verrouiller les mouvements de l'unité sur les routes existantes. |
| type | Type de source du fichier MP (format polonais). |
| shape: | PG — polygone, PL — polyligne, POI — point. |
| avd_type | Type de carte résultant dans le fichier AVD (0—255). |
| max_level | Niveau maximum pour stocker les données de carte au format AVD. Les niveaux dépendent du métrage : niveau 0 — de 10 à 250 mètres, niveau 1 — de 250 m à 20 km, niveau 2 — de 20 à 500 km. |
| name | Le nom d'un objet, d'une zone, d'un point, qui est une marque personnalisée. |
Les **conditions** suivantes doivent être remplies pour stocker correctement les inscriptions de carte :
* Le fichier MP source doit être encodé en Win 1251, et l'inscription (IMG ID) doit contenir la chaîne `CodePage=1251`.
* Le fichier MP source doit être encodé en Win UTF-8, et l'inscription (IMG ID) doit contenir la chaîne `CodePage=1252` ou une autre valeur différente de 1251.
## Création de cartes à partir du format OSM { #id-.WebGISv2504-CreatingmapsfromOSMformat }
Pour créer des cartes à partir de fichiers au format OSM, un fichier XML de configuration ou allCountries.txt sont utilisés. Pour télécharger sur le serveur, une archive contenant la carte source au format OSM, le fichier XML de configuration et allCountries.txt doit être créée. Le dernier (allCountries.txt) est un fichier supplémentaire pour la liaison d'adresses. Le document consiste en une liste de villes du monde dans laquelle la taille de la population est indiquée. Un rayon approximatif d'une ville est calculé sur la base d'un algorithme spécial et dépend de la taille de la population.
`osm.xml` est un fichier de configuration transférant les fichiers OSM vers les fichiers AVD standard.
Le fichier de configuration standard transférant les fichiers OSM vers les fichiers AVD (`osm.xml`) et allCountries.txt peuvent être téléchargés ici : [http://distro.gurtam.com/maps_cfg/](http://distro.gurtam.com/maps_cfg/).
## Cartes d'autres formats vectoriels { #id-.WebGISv2504-Mapsfromothervectorformats }
Pour créer des cartes à partir d'autres formats vectoriels tels que MapInfo, ESRI shapefile, etc., il est nécessaire de télécharger une archive composée des couches de carte source dans un format correspondant et d'un fichier XML de configuration.
Le fichier XML doit être encodé en UTF-8 sans BOM :
```xml
<conv name="cheljabinskaja" encoding="utf8">
<layer file="chel-roads-l.shp">
<features max_level="1" name="$NAME" use_addr="1" is_street="1" region="$ADDR_REGIO" street="$NAME">
<mod filter="(highway ='bridleway') or (highway ='living_street')" type="14"/>
<mod filter="(highway ='path') or (highway ='steps')" type="16"/>
</features>
</layer>
<layer file="chel-buildings-a.shp">
<features type="210" max_level="1" name="$ADDR_HOUSE" is_house="1" region="$ADDR_REGIO"
street="$ADDR_STREET" house="$ADDR_HOUSE" use_addr="1"/>
</layer>
<layer file="chel-city-p.shp">
<features type="64" max_level="2" name="$NAME" address="$NAME">
<mod filter="PLACE ='village'" type="66" is_city="1" region="$ADDR_REGIO"
max_level="1" name="$NAME" address="$NAME"/>
<mod filter="PLACE = 'town'" type="65" is_city="1" region="$ADDR_REGIO"
max_level="1" name="$NAME" address="$NAME"/>
<mod filter="PLACE = 'city'" type="64" is_city="1" region="$ADDR_REGIO"
max_level="1" name="$NAME" address="$NAME"/>
</features>
</layer>
<layer file="chel-landuse-a.shp">
<features type="166" max_level="1" name="$NAME">
<mod filter="LANDUSE ='Military'" type="173" max_level="1" name="$NAME"/>
<mod filter="LANDUSE ='cemetery'" type="147" max_level="1" name="$NAME"/>
<mod filter="LANDUSE ='commercial'" type="151" max_level="1" name="$NAME"/>
<mod filter="LANDUSE ='forest'" type="165" max_level="1" name="$NAME"/>
<mod filter="LANDUSE ='nature_reserve'" type="184" max_level="1" name="$NAME"/>
<mod filter="LANDUSE ='residential'" type="166" max_level="1" name="$NAME"/>
</features>
</layer>
<layer file="chel-admin-a.shp">
<features type="0x004a" shape="PG" avd_type="0" max_level="0"/>
</layer>
</conv>
Le fichier commence et se termine par la balise conv. Les clés suivantes peuvent être utilisées à l’intérieur de cette balise :
name — nom de la carte, encoding — encodage du fichier pour une conversion.
La partie principale d’une conversion de carte est la description des couches utilisées pour recevoir des données. La balise layer permet de décrire chaque couche individuellement et, si fourni par différents attributs, de convertir une carte selon eux.
La clé file est utilisée pour définir le fichier de couche.
Ensuite, vous devez indiquer les propriétés de la couche features. Dans la clé type, il est nécessaire d’indiquer la valeur du type d’éléments de la carte au format .avd (voir dans pfm.xml ou osm.xml). Le paramètre name est utilisé pour afficher toute propriété d’un objet converti. Ce paramètre sera utilisé comme légende pour les objets sur la carte. Seules les lettres latines et le signe $ sont acceptés. Dans l’exemple mentionné ci-dessus, les noms des champs utilisés peuvent être trouvés dans les fichiers indiqués, c’est-à-dire dans .shp. Si d’autres symboles sont utilisés, le fichier peut être converti avec des erreurs ou ne pas être converti du tout. Si vous souhaitez convertir de tels fichiers, vous devez changer les noms des champs pour des noms latins.
Il est également nécessaire d’indiquer le niveau auquel les cartes du fichier seront situées. Le paramètre max_level en est responsable. Selon vos préférences, vous pouvez faire varier ces paramètres de 0 à 2 ou les laisser comme dans pfm.xml ou osm.xml.
Les paramètres suivants sont facultatifs.
| Paramètre | Description | Exemple |
|---|---|---|
| data_type | Type d’objet : polygone (pg), polyligne (pl), point (poi). | data_type=“pg” |
| address | Définir l’adresse par la valeur indiquée. | |
| region | Définir le nom de la région par la valeur indiquée. | region=“$Region” |
| street | Définir le nom de la rue par la valeur indiquée. | street=“$st” |
| street_type | Définir le type de rue par la valeur indiquée. | street_type=“$sts_type” |
| house | Définir le numéro de maison par la valeur indiquée. | house=“$number” |
| is_city | Définir si cet objet est une ville. Si ce n’est pas le cas, n’utilisez pas ce paramètre. | is_city=“1” |
| is_street | Définir si cet objet est une rue. Si ce n’est pas le cas, n’utilisez pas ce paramètre. | is_street=“1” |
| is_house | Définir si cet objet est une maison. Si ce n’est pas le cas, n’utilisez pas ce paramètre. | is_house=“1” |
| dump_attr | Il est responsable de l’affichage des propriétés particulières de l’objet (dans stdout). Il fonctionne de la même manière que le paramètre name, mais il affiche des informations pour un utilisateur qui convertit la carte. |
Le signe dollar entre guillemets ("$") signifie que les lettres qui suivent seront utilisées comme variable et remplacées par la valeur de cette variable. Pour utiliser un texte normal avec une variable, il est nécessaire de le marquer avec le signe | des deux côtés. Pour récupérer des données d’une autre couche, utilisez le signe dièse (#). Après #, définissez trois paramètres. Dans le premier paramètre, indiquez le champ à partir duquel la valeur doit être prise, puis mettez un point (.). Le deuxième paramètre indique la couche (nom de fichier sans extension) à utiliser pour obtenir des données, mettez à nouveau un point. Le troisième paramètre indique quel champ de la couche indiquée doit être utilisé. Le quatrième paramètre peut être utilisé si la valeur est cachée dans un champ de chaîne ou parmi un certain nombre de valeurs — entrez un champ, le signe égal (=), et le signe ‘%’ entre guillemets simples ('%'). N’oubliez pas de séparer tous les paramètres avec des points.
Voici un exemple.
Supposons que nous ayons deux couches :
- la couche
citiesavec les champs ID, Name, Region - la couche
streetsavec les champs ID, City, CityID, Name
Alors,
- pour obtenir le nom de la rue et la ville, utilisez
$Name|, |#CityID.Cities.Name - pour obtenir la ville et la région lors de la recherche par un autre champ, utilisez
$Name|, |#City.Cities.Region.Name='%'
Si vous avez remarqué que le fichier de couche contient des objets de différents types (vous pouvez le vérifier avec le paramètre dump_attr), et que vous voulez les afficher comme des types différents, utilisez la balise mod. Là, vous définissez les conditions de filtrage et le type d’objet attendu comme résultat du processus de conversion. Dans le paramètre filter, entrez la condition comme requête SQL. Le paramètre type est défini de la même manière que celle décrite ci-dessus.
Dans une layer, il peut y avoir un nombre quelconque de features. Dans une feature, il peut y avoir un nombre quelconque de mod.
S’il y a une erreur lors de la lecture du fichier, essayez de l’ouvrir dans un autre programme, par exemple Internet Explorer : s’il y a des erreurs dans le corps du fichier, IE affiche seulement la partie correcte du fichier. Cependant, notez que la vérification n’est effectuée que pour l’ouverture/fermeture des balises.
Utilisez des commentaires pour faciliter l’édition et l’utilisation ultérieures du fichier.