Wialon Local incluye el servidor estándar WebGIS. Por defecto, toda la información de dirección que se emplea al seguir unidades y crear reportes se toma directamente de este servidor.
En WebGIS se utilizan los archivos de formato AVD. Los archivos de este formato se puede crear de otros formatos vectoriales: MP, MapInfo, ESRI Shape, OSM (OpenStreetMap). El mapa de origen debe ser en el sistema de coordenadas WGS 84 (en grados).
El archivo comprimido (TAR, RAR, ZIP) con mapas de origen en formato vectorial y archivos de configuración se debe cargar en el servidor. El conjunto de archivos depende del formato del mapa de origen.
Para que el archivo comprimido pueda ser descomprimido en el servidor, no debe contener subcarpetas.
Parámetros de compilación
Parámetro | Descripción |
---|---|
Map name | Es el nombre del mapa, por ejemplo, el nombre de la ciudad para la cual que se crea el mapa. |
Map tag | Es la etiqueta del mapa, por ejemplo, ciudad, país, etc. Puede utilizarse para búsqueda o como filtro para trazar. |
Priority | Es la prioridad del mapa; 100, por defecto. Los mapas que tienen menor prioridad se generan más tarde y se encuentran encima de los mapas con mayor prioridad. |
Min level | Es el nivel mínimo en el que se traza el mapa (0-16). |
Max level | Es el nivel máximo en el que se traza el mapa (0-16). |
Add search | Incluir la información de búsqueda en el mapa. |
Capital letters | Considerar el caso de las letras (mayúsculas/minúsculas) en la información de direcciones del archivo MP (ciudades, regiones, países). |
Clear background | No trazar mapas con mayor prioridad, es decir, los mapas que se encuentran en las capas inferiores. Cuando partes de mapas se sobreponen, se traza aquel que se encuentra encima (que es más detallado). El fondo es blanco. Se recomienda emplear esta opción. |
Skip render | No incluir la información de trazado del mapa en el archivo (se utilizará solo la información de direcciones). |
Skip default render | No incluir la información de trazado del mapa en el archivo por defecto. El mapa se visualiza solo para los planes de facturación con etiquetas de mapas correspondientes. |
Skip addresses | No incluir la información de geocodificación inversa en el archivo. De esta forma, al apretar un punto en el mapa se muestran coordenadas, y la dirección, no. |
Creación el mapa del formato MP
Para crear mapas de archivos del formato polaco, se utiliza el archivo de configuración XML. Para cargarlo al servidor, es necesario crear un archivo que contiene el mapa de origen de formato MP y el archivo de configuración XML.
Los nombres del archivo de configuración XML y del archivo comprimido deben ser los mismos.
Aquí puede descargar un archivo de configuración para convertir los archivos MP en los archivos AVD (pfm.xml). Puede crear su propio archivo de configuración de acuerdo con sus necesidades.
Ejemplo:
<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>
A continuación, son los parámetros que se emplean en el archivo de configuración XML.
Parámetro | Descripción |
---|---|
use_addr | Utilice este elemento para buscar dirección por coordenadas. |
is_city | Utilice este elemento para buscar un lugar por nombre (ciudad). |
is_street | Utilice este elemento para buscar una calle por nombre (calle). Este elemento puede vincularse cuando una unidad sigue la carretera. |
is_house | Utilice este elemento para buscar un edificio por nombre o número (edificio). |
is_road | Es una carretera. Este elemento también puede ser utilizado para vincular el trayecto de unidad con las carreteras existentes. |
type | Es el tipo de origen del archivo MP (formato polaco). |
shape: | PG es un polígono; PL, una polilínea; POI, un punto. |
avd_type | Es el tipo resultante en el archivo AVD (0-255). |
max_level | Es el nivel máximo en el que deben guardarse datos del mapa en el archivo AVD. Los niveles corresponden a la cantidad de metros determinada: nivel 0, de 10 m a 250 m; nivel 1, de 250 m a 20 km; nivel 2, de 20 km a 500 km. |
name | Es el nombre de un objeto, área, punto, que es un marcador personalizado. |
Para que el texto en el mapa se almacena correctamente, es necesario cumplir con una de las siguientes condiciones:
- el archivo de origen MP debe estar codificado en Win 1251 y el título (IMG ID) debe contener la línea CodePage=1251;
- el archivo de origen MP debe estar codificado en Win UTF-8 y el título (IMG ID) debe contener la línea CodePage=1252 (el valor que se utiliza debe ser diferente de 1251).
Creación del mapa de formato OSM
Para crear mapas de los archivos de formato OSM, se utiliza un archivo de configuración XML y allCountries.txt. Para cargarlos al servidor, se crea un archivo comprimido que contiene el mapa de origen de formato OSM, archivo de configuración y allCountries.txt. allCountries.txt es un archivo adicional para vincular direcciones. El documento contiene la lista de ciudades del mundo con el número de población en base del cual se calcula el radio aproximado de una ciudad.
Aquí puede descargar un archivo estándar para convertir los tipos del archivo OSM a los tipos del archivo AVD (osm.xml) y allCountries.txt.
Mapas de otros formatos vectoriales
Para crear mapas de otros formatos vectoriales, por ejemplo, MapInfo, ESRI shapefile, es necesario descargar un archivo que contiene capas del mapa de origen en formato correspondiente y un archivo de configuración XML.
El archivo XML debe estar codificado en UTF-8 sin BOM:
<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>
El archivo empieza y termina con la etiqueta conv. En esta etiqueta se puede utilizar las siguientes claves: name, nombre del mapa; encoding, codificación de archivos para conversión.
Lo más importante para conversión del mapa es descripción de capas que es necesaria utilizar para recibir datos. La etiqueta layer permite describir cada capa por separado, así como convertir el mapa de acuerdo con diferentes atributos si están previstos.
La clave file se utiliza para indicar el archivo de la capa.
A continuación, es necesario indicar las propiedades de la capa features. En la clave type, es necesario indicar el tipo del elemento del mapa de formato AVD (se puede verlo en pfm.xml o osm.xml). El parámetro name se utiliza para visualizar propiedades de una unidad que se convierte. Este parámetro se utiliza para visualizar la descripción de la unidad en el mapa. Se aceptan solo letras latinas después del signo $. En el ejemplo más arriba, se puede encontrar los nombres de campos utilizados en los archivos indicados allí, es decir, en SHP. Si en el archivo se utilizan los caracteres no latinos, habrá un error de conversión. Si desea convertir tales archivos, tiene que cambiar los nombres de campos por unos latinos.
Asimismo, es necesario indicar el nivel en el que deben encontrarse los mapas del archivo. Se hace por medio del parámetro max_level. Dependiendo del mapa que desea obtener, se puede establecer los parámetros de 0 a 2 o establecer los mismos parámetros que los en pfm.xml o osm.xml.
Adicionalmente se puede utilizar los siguientes parámetros.
Parámetro | Descripción | Ejemplo |
---|---|---|
data_type | Es el tipo del objeto: polygon (pg), polyline (pl), point (poi). | data_type="pg" |
address | Determina la dirección por el valor indicado. | |
region | Determina el nombre de región por el valor indicado. | region="$Region" |
street | Determina el nombre de calle por el valor indicado. | street="$st" |
street_type | Determina el tipo de calle por el valor indicado. | street_type="$sts_type" |
house | Determina el número de casa por el valor indicado. | house="$number" |
is_city | Determina si el objeto es una ciudad. Si no lo es, no indique este parámetro. | is_city="1" |
is_street | Determina si el objeto es una calle. Si no lo es, no indique este parámetro. | is_street="1" |
is_house | Determina si el objeto es una casa. Si no lo es, no indique este parámetro. | is_house="1" |
dump_attr | Corresponde a la visualización de propiedades particulares de un objeto (in stdout). Funciona del mismo modo que el parámetro name, pero visualiza la información para el usuario que convierte el mapa. |
El signo de dólar entre comillas ("$") significa que las letras que siguen se utilizarán como variable y se substituirán con este valor variable. Para utilizar un texto habitual junto con alguna variante, es necesario marcar este texto con el signo "|" desde ambos lados. Asimismo, se puede utilizar el signo del numeral (#) que permite utilizar datos de otra capa. Después de #, se indica el campo del cual se toma el valor, a continuación, se pone un punto (.). El segundo valor muestra qué capa (nombre de archivo sin extensión) se utiliza para recibir datos. A continuación, se pone un punto. El tercer parámetro indica qué campo de la capa especificada debe utilizarse. El cuarto parámetro puede utilizarse si es necesario buscar un valor en el campo de cadena o en un número de valores. Se indica como campo, signo igual (=) and signo por ciento entre comillas simples ('%'). No olvide separar todos los parámetros con puntos.
A continuación, se ofrece un ejemplo.
Supongamos que tenemos dos capas:
- la capa cities con los campos ID, Name, Region;
- la capa streets con los campos ID, City, CityID, Name.
Entonces, - para obtener el nombre de la calle y de la ciudad, utilice
$Name|, |#CityID.Cities.Name; - para obtener la ciudad y región al buscar por otro campo, utilice
$Name|, |#City.Cities.Region.Name='%'.
Si ha notado que el archivo de la capa contiene objetos de diferentes tipos (puede verificarlo con el parámetro dump_attr) y desea mostrarlos como tipos diferentes, utilice la etiqueta 'mod'. Aquí se establecen las condiciones de filtración y el tipo de objeto que será el resultado del proceso de conversión. En el parámetro filter introduzca la condición como consulta SQL. El parámetro type se establece de la misma forma.
Un layer puede contener cualquier número de features. Un feature puede contener cualquier número de mod.
Si surge un error al leer el archivo, intente abrirlo con otro programa, por ejemplo, Internet Explorer. Si hay errores en el contenido del archivo, este programa muestra solo la parte correcta del archivo. Sin embargo, tenga en cuenta que se verifican solo etiquetas de apertura y cierre. Asimismo, verifique si están escritos correctamente los nombres de capas del mapa en la clave file.
Utilice comentarios para facilitar la edición y uso del archivo en futuro.