3.2. Web Map Service (WMS)
Los estándares WMS 1.1.1 y 1.3.0 implementados en QGIS Server proporcionan una interfaz HTTP para solicitar imágenes de mapas o leyendas generadas a partir de un proyecto QGIS. Una solicitud WMS típica define el proyecto QGIS que se utilizará, las capas que se renderizarán y el formato de imagen que se generará. El soporte básico también está disponible como Descriptor de capa con estilo (SLD).
Especificaciones:
Solicitudes standard proporcionadas por el servidor QGIS:
Solicitud |
Descripción |
---|---|
Devuelve metadatos XML con información sobre el servidor |
|
Devuelve un mapa |
|
Recupera datos (geometría y valores) para una ubicación de píxeles |
|
Devuelve símbolos de leyenda |
|
Devuelve un documento XML con descripción de estilo en SLD |
|
Devuelve información sobre la disponibilidad de WFS y WCS respectivamente para capas vectoriales y ráster |
Solicitudes de proveedor proporcionadas por QGIS Server:
Solicitud |
Descripción |
---|---|
Devuelve un diseño QGIS |
|
Devuelve información específica sobre QGIS Server |
|
Devuelve metadatos XML sobre capacidades extendidas opcionales |
3.2.1. GetCapabilities
Parámetros estándar para la solicitud GetCapabilities según las especificaciones OGC WMS 1.1.1 y 1.3.0:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Nombre del servicio (WMS) |
|
Sí |
Nombre de la solicitud (GetCapabilities) |
|
No |
Versión del servicio |
La solicitud GetCapabilities también admite los siguientes parámetros de proveedor:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Archivo de proyecto QGIS |
URL ejemplo:
http://localhost/qgis_server?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetCapabilities
3.2.2. GetMap
Parámetros estándar para la petición GetMap de acuerdo con las especificaciones OGC WMS 1.1.1 y 1.3.0:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Nombre del servicio (WMS) |
|
Sí |
Nombre de la petición (GetMap) |
|
Sí |
Versión del servicio |
|
No |
Capas a mostrar |
|
No |
Estilo de capas |
|
Sí |
Sistema de referencia de coordenadas |
|
Sí |
Extensión del mapa |
|
Sí |
Ancho de la imagen en píxeles. |
|
Sí |
Altura de la imagen en píxeles |
|
No |
Formato de imagen |
|
No |
fondo transparente |
|
SLD |
No |
URL de una SLD que se utilizará para diseñar |
SLD_BODY |
No |
SLD en línea (XML) que se utilizará para diseñar |
Además de los estándar, QGIS Server admite redlining así como los siguientes parámetros adicionales:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Archivo de proyecto QGIS |
|
No |
Especifica el color de fondo |
|
No |
Especifica la resolución de salida |
|
No |
compresión JPEG |
|
No |
Opacidad de la capa o Grupo |
|
No |
Subconjunto de entidades |
|
No |
Resalta entidades |
|
FILE_NAME |
No |
Nombre de archivo de la capa descargada Solo para``FORMAT=application/dxf`` |
No |
Opciones del formato de archivo especificado Solo para``FORMAT=application/dxf`` |
|
No |
Trabajando en modo teselado |
URL ejemplo:
http://localhost/qgis_server?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetMap
&MAP=/home/qgis/projects/world.qgs
&LAYERS=mylayer1,mylayer2,mylayer3
&STYLES=style1,default,style3
&OPACITIES=125,200,125
&CRS=EPSG:4326
&WIDTH=400
&HEIGHT=400
&FORMAT=image/png
&TRANSPARENT=TRUE
&DPI=300
&TILED=TRUE
VERSIÓN
Este parámetro permite especificar la versión del servicio a utilizar. Los valores disponibles para el parámetro VERSIÓN
son:
1.1.1
1.3.0
Según el número de versión, se esperan ligeras diferencias como se explica más adelante para los siguientes parámetros:
CRS
/SRS
BBOX
CAPAS
Este parámetro permite especificar las capas que se mostrarán en el mapa. Los nombres deben estar separados por una coma.
Además, QGIS Server introdujo algunas opciones para seleccionar capas mediante:
un short name
el id de capa
La opción del proyecto que permite seleccionar las capas por su id está en el menú Usar los ids de las capas como nombres para activar esta opción.
del diálogo . Marque la casillahttp://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&LAYERS=mylayerid1,mylayerid2
&...
ESTILOS
Este parámetro se puede utilizar para especificar el estilo de una capa para el paso de renderizado. Los estilos deben estar separados por una coma. El nombre del estilo predeterminado es default
.
SRS / CRS
Este parámetro permite indicar la salida del mapa Spatial Reference System en WMS 1.1.1 y tiene que ser foramdo como EPSG:XXXX
. Note que SRC
también es compatible si la versión actual es 1.1.1.
Para WMS 1.3.0, es preferible el parámetro SRC
pero también se admite SRS
.
Tenga en cuenta que si en la solicitud se indican los parámetros SRC
y SRS
, entonces es la versión actual indicada en el parámetro VERSIÓN
la que es decisiva.
En el siguiente caso, el parámetro SRS
se mantiene cualquiera que sea el parámetro VERSION
porque no se indica SRC
:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&SRS=EPSG:2854
&...
En el siguiente caso, el parámetro SRS
se mantiene en lugar de SRC
debido al parámetro VERSIÓN
:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.1.1
&CRS=EPSG:4326
&SRS=EPSG:2854
&...
En el siguiente caso, el parámetro SRC
se mantiene en lugar de SRS
debido al parámetro VERSION
:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&CRS=EPSG:4326
&SRS=EPSG:2854
&...
BBOX
Este parámetro permite especificar la extensión del mapa con unidades según el SRC actual. Las coordenadas deben estar separadas por una coma.
El parámetro BBOX
se forma como min_a,min_b,max_a,max_b
pero la definición de los ejes a
y b
es diferente según el parámetro VERSION
actual:
en WMS 1.1.1, el orden de los ejes siempre es este/norte
en WMS 1.3.0, el orden de los ejes depende de la autoridad CRS
Por ejemplo, en el caso de EPSG:4326
y WMS 1.1.1, a
es la longitud (este) y b
la latitud (norte), lo que lleva a una solicitud como :
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.1.1
&SRS=epsg:4326
&BBOX=-180,-90,180,90
&...
Pero en el caso de WMS 1.3.0, el orden de los ejes definido en la base de datos EPSG es norte/este, por lo que a
es la latitud y b
la longitud:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&CRS=epsg:4326
&BBOX=-90,-180,90,180
&...
ANCHURA
Este parámetro permite especificar el ancho en píxeles de la imagen de salida.
ALTURA
Este parámetro permite especificar la altura en píxeles de la imagen de salida.
FORMATO
Este parámetro se puede utilizar para especificar el formato de la imagen del mapa. Los valores disponibles son:
jpg
jpeg
image/jpeg
image/png
image/png; mode=1bit
image/png; mode=8bit
image/png; mode=16bit
application/dxf
: solo las capas que tienen acceso de lectura en el servicio WFS se exportan en formato DXFURL ejemplo:
http://localhost/qgisserver? SERVICE=WMS&VERSION=1.3.0 &REQUEST=GetMap &FORMAT=application/dxf &LAYERS=Haltungen,Normschacht,Spezialbauwerke &CRS=EPSG%3A21781 &BBOX=696136.28844801,245797.12108743,696318.91114315,245939.25832905 &WIDTH=1042 &HEIGHT=811 &FORMAT_OPTIONS=MODE:SYMBOLLAYERSYMBOLOGY;SCALE:250 &FILE_NAME=plan.dxf
TRANSPARENTE
Este parámetro booleano se puede utilizar para especificar la transparencia del fondo. Los valores disponibles son (no distinguen entre mayúsculas y minúsculas):
TRUE
FALSE
Sin embargo, este parámetro se ignora si el formato de la imagen indicada con FORMAT
es diferente de PNG.
BGCOLOR
Este parámetro permite indicar un color de fondo para la imagen del mapa. Sin embargo, no se puede combinar con el parámetro `` TRANSPARENTE`` en el caso de imágenes PNG (la transparencia tiene prioridad). El color puede ser literal o en notación hexadecimal.
URL ejemplo con la notación literal:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&BGCOLOR=green
&...
Ejemplo URL con la notación hexadecimal:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&BGCOLOR=0x00FF00
&...
DPI
Este parámetro se puede utilizar para especificar la resolución de salida solicitada.
IMAGE_QUALITY
Este parámetro solo se utiliza para imágenes JPEG. De forma predeterminada, la compresión JPEG es -1
.
Puede cambiar el valor predeterminado por proyecto QGIS en el menú GetMap
puede hacerlo usando el parámetro ʻIMAGE_QUALITY`.
OPACITIES
Lista de valores de opacidad separados por comas. La opacidad se puede establecer a nivel de capa o grupo. Los valores permitidos van desde 0
(totalmente transparente) a 255
(totalmente opaco).
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&WIDTH=400
&HEIGHT=200
&CRS=EPSG:4326
&LAYERS=countries,places
&BBOX=42,-6,52,15
&OPACITIES=255,0
FILTER
Se puede seleccionar un subconjunto de capas con el parámetro FILTRO
La sintaxis es básicamente la misma que para la cadena del subconjunto QGIS. Sin embargo, existen algunas restricciones para evitar inyecciones de SQL en bases de datos a través de QGIS Server. Si se encuentra una cadena peligrosa en el parámetro, QGIS Server devolverá el siguiente error:
<ServiceExceptionReport>
<ServiceException code="Security">The filter string XXXXXXXXX has been rejected because of security reasons.
Note: Text strings have to be enclosed in single or double quotes. A space between each word / special character is mandatory.
Allowed Keywords and special characters are IS,NOT,NULL,AND,OR,IN,=,<,=<,>,>=,!=,',',(,),DMETAPHONE,SOUNDEX.
Not allowed are semicolons in the filter expression.</ServiceException>
</ServiceExceptionReport>
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&VERSION=1.3.0
&WIDTH=400
&HEIGHT=300
&CRS=EPSG:4326
&BBOX=41,-6,52,10
&LAYERS=countries_shapeburst,countries,places
&FILTER=countries_shapeburst,countries:"name" = 'France';places: "name" = 'Paris'
En este ejemplo, el mismo filtro "name" = 'France'
se aplica a las capas countries
y countries_shapeburst
, mientras que el filtro "name" = 'Paris'
es solo aplicado a places
.
Nota
Es posible realizar búsquedas de atributos a través de GetFeatureInfo y omitir el parámetro X / Y si hay un FILTRO. QGIS Server luego devuelve información sobre las características coincidentes y genera un cuadro delimitador combinado en la salida XML.
SELECTION
El parámetro SELECCIÓN
puede resaltar entidades de una o más capas. Las características vectoriales se pueden seleccionar pasando listas separadas por comas con identificadores de objetos.
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&LAYERS=mylayer1,mylayer2
&SELECTION=mylayer1:3,6,9;mylayer2:1,5,6
&...
La siguiente imagen presenta la respuesta de una solicitud GetMap usando la opción SELECTION
p.ej. http://myserver.com/...&SELECTION=countries:171,65
.
Como los identificadores de esas características corresponden en el conjunto de datos de origen a Francia y Rumanía, están resaltados en amarillo.
FORMAT-OPTIONS
Este parámetro se puede utilizar para especificar opciones para el formato seleccionado. Solo para FORMAT=application/dxf
. Una lista de pares clave: valor separados por punto y coma:
ESCALA: para ser utilizado para reglas de simbología, filtros y estilos (no escala real de los datos - los datos permanecen en la escala original).
MODO: corresponde a las opciones de exportación que se ofrecen en el cuadro de diálogo de exportación QGIS Desktop DXF. Los valores posibles son
NOSYMBOLOGY
,FEATURESYMBOLOGY
ySYMBOLLAYERSYMBOLOGY
.LAYERSATTRIBUTES: especifique un campo que contenga valores para los nombres de las capas DXF; si no se especifica, se utilizan los nombres de las capas QGIS originales.
USE_TITLE_AS_LAYERNAME: si está habilitado, el título de la capa se utilizará como nombre de capa.
CODEC: especificar un códec que se utilizará para la codificación. El valor predeterminado es
ISO-8859-1
. Consulte el cuadro de diálogo de exportación DXF del escritorio de QGIS para obtener valores válidos.NO_MTEXT: Utilice TEXT en lugar de MTEXT para las etiquetas.
FORCE_2D: Forzar salida 2D. Esto es necesario para el ancho de la polilínea.
TILED
Por motivos de rendimiento, QGIS Server se puede utilizar en modo mosaico. En este modo, el cliente solicita varios mosaicos pequeños de tamaño fijo y los ensambla para formar el mapa completo. Al hacer esto, los símbolos en o cerca del límite entre dos teselas pueden aparecer cortados, porque solo están presentes en una de los teselas.
Establezca el parámetro TILED
en TRUE
para decirle al servidor QGIS que funcione en modo teselado y para aplicar el búfer de teselas configurado en el proyecto QGIS (consulte Configure su proyecto).
Cuando TILED
es TRUE
y cuando se configura un búfer de mosaico distinto de cero en el proyecto QGIS, las entidades fuera de la extensión del mosaico se dibujan para evitar símbolos de corte en los límites del mosaico.
TILED
predeterminado como FALSE
.
3.2.3. GetFeatureInfo
Parámetros estándar para la petición GetFeatureInfo de acuerdo con las especificaciones OGC WMS 1.1.1 y 1.3.0 :
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Nombre del servicio (WMS) |
|
Sí |
Nombre de la solicitud (GetFeatureInfo) |
|
No |
Versión del servicio |
|
Sí |
Capas a consultar |
|
Sí |
Capas para mostrar (idénticas a QUERY_LAYERS) |
|
No |
Estilo de capas |
|
Sí |
Sistema de referencia de coordenadas |
|
No |
Extensión del mapa |
|
Sí |
Ancho de la imagen en píxeles. |
|
Sí |
Altura de la imagen en píxeles |
|
No |
fondo transparente |
|
No |
Formato de salida |
|
No |
Número máximo de objetos espaciales a devolver |
|
No |
Columna de píxeles del punto a consultar |
|
No |
Igual que el parámetro I, pero en WMS 1.1.1 |
|
No |
Fila de píxeles del punto a consultar |
|
No |
Igual que el parámetro J, pero en WMS 1.1.1 |
|
WMS_PRECISION |
No |
La precisión (número de dígitos) que se utilizará al devolver la geometría (consulte Cómo agregar geometría a la respuesta de la función). El valor predeterminado es |
En adición a los estándares, QGIS Server apoya los siguientes parámetros extra:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Archivo de proyecto QGIS |
|
No |
Subconjunto de entidades |
|
No |
Tolerancia en pixeles para capas punto |
|
No |
Tolerancia en pixeles para capas línea |
|
No |
Tolerancia en píxeles para capas polígono |
|
No |
Filtrado de geometría |
|
No |
Agregar consejos de mapa a la salida |
|
No |
Agregar geometría a la salida |
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetMap
&MAP=/home/qgis/projects/world.qgs
&LAYERS=mylayer1,mylayer2,mylayer3
&CRS=EPSG:4326
&WIDTH=400
&HEIGHT=400
&INFO_FORMAT=text/xml
&TRANSPARENT=TRUE
&QUERY_LAYERS=mylayer1
&FEATURE_COUNT=3
&I=250
&J=250
INFO_FORMAT
Este parámetro se puede utilizar para especificar el formato del resultado. Los valores disponibles son:
text/xml
text/html
text/plain
application/vnd.ogc.gml
application/json
QUERY_LAYERS
Este parámetro especifica las capas a mostrar en el mapa. Nombres son separados por comas.
Además, El servidor de QGIS presenta opciones para seleccionar las capas por:
nombre corto
id capa
Consulte el parámetro LAYERS
definido en GetMap para obtener más información.
FEATURE_COUNT
Este parámetro especifica el número máximo de entidades por capa que se devolverán. Por ejemplo, si QUERY_LAYERS
se establece en layer1, layer2
y FEATURE_COUNT
se establece en 3
, se devolverán un máximo de 3 entidades de layer1. Asimismo, se devolverá un máximo de 3 entidades de layer2.
De formar predeterminada, sólo 1 objeto espacial por capa es devuelto.
I
Este parámetro, definido en WMS 1.3.0, le permite especificar la columna de pixeles del punto de consulta.
X
Igual que el parámetro I
, pero definido en WMS 1.1.1.
J
Este parámetro, definido en WMS 1.3.0, le permite especificar la fila de pixeles del punto de consulta.
Y
Igual que el parámetro J
, pero definido en WMS 1.1.1.
FI_POINT_TOLERANCE
Este parámetro especifica la tolerancia en pixeles para capas de puntos.
FI_LINE_TOLERANCE
Este parámetro especifica la tolerancia en pixeles para capas de líneas.
FI_POLYGON_TOLERANCE
Este parámetro especifica la tolerancia en pixeles para capas de polígonos.
FILTER_GEOM
Este parámetro especifica una gepmetría WKT con la cuál las entidades deben intersecarse.
WITH_MAPTIP
Este parámetro especifica si agregar sugerencias de mapas a la salida.
Valores disponibles son (no en caso sensitivo):
TRUE
FALSE
WITH_GEOMETRY
Este parámetro especifica si se deben agregar geometrías a la salida. Para usar esta función, primero debe habilitar la opción: guilabel:Añadir geometría a la entidad de respuesta en el proyecto QGIS. Ver: ref: Configura tu proyecto <Creatingwmsfromproject>.
Valores disponibles son (no en caso sensitivo):
TRUE
FALSE
3.2.4. GetLegendGraphics
Parámetros estándar para la solicitud GetLegendGraphics según las especificaciones OGC WMS 1.1.1 y 1.3.0:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Nombre del servicio (WMS) |
|
Sí |
Nombre de la solicitud (GetLegendGraphics) |
|
No |
Versión del servicio |
|
Sí |
Capas a mostrar |
|
No |
Estilo de capas |
|
No |
Sistema de referencia de coordenadas |
|
No |
Extensión del mapa |
|
No |
Ancho de la imagen en píxeles. |
|
No |
Altura de la imagen en píxeles |
|
No |
Legend format |
|
No |
fondo transparente |
Además de los estándar, QGIS Server admite parámetros adicionales para cambiar el tamaño de los elementos de la leyenda o las propiedades de la fuente para los títulos de las capas y las etiquetas de los elementos:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Archivo de proyecto QGIS |
|
No |
Ancho del mapa |
|
No |
Altura de mapa |
|
No |
Agregar cuenta de características de características |
|
No |
Símbolo de regla para representar |
|
No |
Representación de etiquetas de elementos |
|
No |
Espacio entre marco de leyenda y contenido (mm) |
|
No |
Espacio entre marcos de leyenda y contenido (mm) |
|
No |
Espacio vertical entre el título de la capa y los elementos (mm) |
|
No |
Espacio vertical entre símbolo y elementos (mm) |
|
No |
Espacio horizontal entre símbolo y etiqueta (mm) |
|
No |
Ancho de la vista previa del símbolo (mm) |
|
No |
Altura de la vista previa del símbolo (mm) |
|
No |
Representación del título de la capa |
|
No |
Familia de fuentes de capas |
|
No |
Representación en negrita del título de la capa |
|
No |
Tamaño de fuente del título de la capa (pt) |
|
No |
Representación en cursiva del título de la capa |
|
No |
Color del título de la capa |
|
No |
Familia de fuentes de elementos |
|
No |
Representación en negrita de la etiqueta del artículo |
|
No |
Tamaño de fuente de la etiqueta del elemento (pt) |
|
No |
Representación en cursiva de la etiqueta del elemento |
|
No |
Color de la etiqueta del artículo |
BBOX
Este parámetro se puede usar para especificar el área geográfica para la cual se debe construir la leyenda (su formato se describe here) pero no se puede combinar con el parámetro RULE
. El parámetro SRS
/CRS
se vuelve obligatorio cuando se usa el parámetro BBOX
.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=countries,airports
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
Nota
Cuando se define el parámetro BBOX
, la leyenda se denomina content based legend.
ANCHURA
Este parámetro no se usa de forma predeterminada, pero se vuelve obligatorio cuando se establece el parámetro RULE
. En este caso permite especificar el ancho en píxeles de la imagen de salida.
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYER=testlayer%20%C3%A8%C3%A9
&RULE=rule1
&WIDTH=30
&HEIGHT=30
ALTURA
Este parámetro no se usa de forma predeterminada, pero se vuelve obligatorio cuando se establece el parámetro RULE
. En este caso permite especificar la altura en píxeles de la imagen de salida.
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYER=testlayer%20%C3%A8%C3%A9
&RULE=rule1
&WIDTH=30
&HEIGHT=30
FORMATO
Este parámetro se puede utilizar para especificar el formato de la imagen de la leyenda. Los valores disponibles son:
image/jpeg
image/png
application/json
Para JSON, los símbolos se codifican con Base64 y la mayoría de las demás opciones relacionadas con el diseño o las fuentes no se tienen en cuenta porque la leyenda debe construirse en el lado del cliente. El parámetro RULE
no se puede combinar con este formato.
Ejemplo de URL con la salida JSON correspondiente:
http://localhost/qgisserver?
SERVICE=WMS&
REQUEST=GetLegendGraphics&
LAYERS=airports&
FORMAT=application/json
Y la salida JSON correspondiente:
{
"nodes":[
{
"icon":"<base64 icon>",
"title":"airports",
"type":"layer"
}
],
"title":""
}
SRCWIDTH
Este parámetro puede definirse cuando se establece el parámetro RULE
. En este caso, el valor SRCWIDTH
se reenvía a la solicitud GetMap
subyacente como el parámetro WIDTH
mientras que el parámetro WIDTH
de GetLegendGraphics
se usa para la leyenda de la imagen.
SRCHEIGHT
Este parámetro puede definirse cuando se establece el parámetro RULE
. En este caso, el valor SRCHEIGHT
se reenvía a la solicitud GetMap
subyacente como el parámetro HEIGHT
mientras que el parámetro HEIGHT
de GetLegendGraphics
se usa para la leyenda de la imagen.
SHOWFEATURECOUNT
Este parámetro se puede utilizar para activar el recuento de características en la leyenda. Los valores disponibles son (no distingue entre mayúsculas y minúsculas):
TRUE
FALSE
Por ejemplo:
RULE
Este parámetro está disponible en capas con representación Rule-based y permite construir una leyenda con solo el símbolo de la regla con nombre. No se puede combinar con el parámetro BBOX
ni el formato JSON.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=mylayer,
&RULE=myrulename
RULELABEL
Este parámetro permite controlar la representación de la etiqueta del artículo. Los valores disponibles son (no distingue entre mayúsculas y minúsculas):
TRUE
: etiqueta del elemento de visualizaciónFALSE
: ocultar la etiqueta del artículoAUTO
: ocultar la etiqueta del elemento para las capas con representación Single symbol
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=countries,airports
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&RULELABEL=AUTO
BOXSPACE
Este parámetro permite especificar el espacio entre el marco de la leyenda y el contenido en milímetros. Por defecto, el valor del espacio es 2
mm.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&BOXSPACE=0
LAYERSPACE
Este parámetro permite especificar el espacio vertical entre capas en milímetros. Por defecto, el valor del espacio es 3
mm.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERSPACE=0
LAYERTITLESPACE
Este parámetro permite especificar el espacio vertical entre el título de la capa y los siguientes elementos en milímetros. Por defecto el valor del espacio es 3
mm.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERTITLESPACE=0
SYMBOLSPACE
Este parámetro permite especificar el espacio vertical entre el símbolo y el elemento siguiente en milímetros. Por defecto el valor del espacio es 2
mm.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=countries
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&SYMBOLSPACE=0
ICONLABELSPACE
Este parámetro permite especificar el espacio horizontal entre el símbolo y el texto de la etiqueta en milímetros. Por defecto el valor del espacio es 2
mm.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=countries,
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ICONLABELSPACE=0
SYMBOLWIDTH
Este parámetro permite especificar el ancho de la vista previa del símbolo en milímetros. Por defecto el valor de ancho es 7
mm.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=countries,
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&SYMBOLWIDTH=2
SYMBOLHEIGHT
Este parámetro permite especificar la altura de la vista previa del símbolo en milímetros. Por defecto el valor de la altura es 4
mm.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=countries,
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&SYMBOLHEIGHT=2
LAYERTITLE
Este parámetro especifica si renderizar el título de la capa.
Valores disponibles son (no en caso sensitivo):
TRUE
(valor predeterminado)FALSE
LAYERFONTFAMILY
Este parámetro especifica la familia de fuentes que se usará para representar el título de la capa.
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=countries
&LAYERFONTFAMILY=monospace
LAYERFONTBOLD
Este parámetro especifica si el título de la capa se muestra en negrita. Los valores disponibles son (no distingue entre mayúsculas y minúsculas):
TRUE
FALSE
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERFONTBOLD=TRUE
LAYERFONTSIZE
Este parámetro especifica el tamaño de fuente para representar el título de la capa en el punto.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERFONTSIZE=20
LAYERFONTITALIC
Este parámetro especifica si el título de la capa se representa en cursiva. Los valores disponibles son (no distingue entre mayúsculas y minúsculas):
TRUE
FALSE
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERFONTITALIC=TRUE
LAYERFONTCOLOR
Este parámetro especifica el color del título de la capa. El color puede ser literal (red
, green
, ..) o en notación hexadecimal (0xFF0000
, 0x00FF00
, …).
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&LAYERFONTCOLOR=0x5f9930
ITEMFONTFAMILY
Este parámetro especifica la familia de fuentes que se usará para representar la etiqueta del elemento.
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=countries
&ITEMFONTFAMILY=monospace
ITEMFONTBOLD
Este parámetro especifica si la etiqueta del elemento se muestra en negrita. Los valores disponibles son (no distingue entre mayúsculas y minúsculas):
TRUE
FALSE
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ITEMFONTBOLD=TRUE
ITEMFONTSIZE
Este parámetro especifica el tamaño de fuente para representar el título de la capa en el punto.
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ITEMFONTSIZE=20
ITEMFONTITALIC
Este parámetro especifica si la etiqueta del elemento se muestra en cursiva. Los valores disponibles son (no distingue entre mayúsculas y minúsculas):
TRUE
FALSE
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ITEMFONTITALIC=TRUE
ITEMFONTCOLOR
Este parámetro especifica el color de la etiqueta del elemento. El color puede ser literal (red
, green
, ..) o en notación hexadecimal (0xFF0000
, 0x00FF00
, …).
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetLegendGraphics
&LAYERS=airports,places
&BBOX=43.20,-2.93,49.35,8.32
&CRS=EPSG:4326
&TRANSPARENT=TRUE
&ITEMFONTCOLOR=0x5f9930
3.2.5. GetStyle(s)
Parámetros estándar para la solicitud GetStyle (o GetStyles) según las especificaciones OGC WMS 1.1.1:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Nombre del servicio (WMS) |
|
Sí |
Nombre de la solicitud (GetStyle o GetStyles) |
|
Sí |
Capas a consultar |
La solicitud GetStyle también admite los siguientes parámetros de proveedor:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Archivo de proyecto QGIS |
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetStyles
&LAYERS=mylayer1,mylayer2
3.2.6. DescribeLayer
Parámetros estándar para la solicitud DescribeLayer según las especificaciones OGC WMS 1.1.1 y 1.3.0:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Nombre del servicio (WMS) |
|
Sí |
Nombre de la solicitud (DescribeLayer) |
|
Sí |
Capas para describir |
|
Sí |
versión SLD |
La solicitud de DescribeLayer también admite los siguientes parámetros de proveedor:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Archivo de proyecto QGIS |
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=DescribeLayer
&SLD_VERSION=1.1.0
&LAYERS=mylayer1
El documento XML se parece a:
<DescribeLayerResponse xmlns="http://www.opengis.net/sld" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ows="http://www.opengis.net/ows" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:se="http://www.opengis.net/se" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/DescribeLayer.xsd">
<Version>1.1.0</Version>
<LayerDescription>
<owsType>wfs</owsType>
<se:OnlineResource xlink:href="http://localhost/qgis_server" xlink:type="simple"/>
<TypeName>
<se:FeatureTypeName>my_vector_layer</se:FeatureTypeName>
</TypeName>
</LayerDescription>
<LayerDescription>
<owsType>wcs</owsType>
<se:OnlineResource xlink:href="http://localhost/qgis_server" xlink:type="simple"/>
<TypeName>
<se:FeatureTypeName>my_raster_layer</se:FeatureTypeName>
</TypeName>
</LayerDescription>
</DescribeLayerResponse>
SLD_VERSION
Este parámetro permite especificar la versión de SLD. Solo está disponible el valor 1.1.0
.
3.2.7. GetPrint
QGIS Server tiene la capacidad de crear una salida de diseño de impresión en formato pdf o píxel. Las ventanas de diseño de impresión del proyecto publicado se utilizan como plantillas. En la solicitud GetPrint, el cliente tiene la posibilidad de especificar parámetros de las etiquetas y mapas de diseño contenidos.
La solicitud GetPrint admite redlining, :ref:`external WMS Layers<wms_external> ` así como los siguientes parámetros:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Archivo de proyecto QGIS |
|
Sí |
Nombre del servicio (WMS) |
|
Sí |
Nombre de la solicitud (GetPrint) |
|
No |
Versión del servicio |
|
No |
Capas a mostrar |
|
Sí |
Plantilla de diseño a usar |
|
Sí |
Sistema de referencia de coordenadas |
|
No |
Formato de salida |
|
No |
Características del Atlas |
|
No |
Estilo de capas |
|
No |
fondo transparente |
|
No |
Opacidad de la capa o Grupo |
|
No |
Resalta entidades |
|
No |
Extensión del mapa “X” |
|
No |
Capas del mapa “X” |
|
No |
Estilo de capas del mapa “X” |
|
No |
Escala de capas del mapa “X” |
|
No |
Rotación del mapa “X” |
|
No |
Intervalo de cuadrícula en eje x del mapa “X” |
|
No |
Intervalo de cuadrícula en eje y del mapa “X” |
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetPrint
&MAP=/home/qgis/projects/world.qgs
&CRS=EPSG:4326
&FORMAT=png
&TEMPLATE=Layout%201
&map0:EXTENT=-180,-90,180,90
&map0:LAYERS=mylayer1,mylayer2,mylayer3
&map0:OPACITIES=125,200,125
&map0:ROTATION=45
Tenga en cuenta que la plantilla de diseño puede contener más de un mapa. De esta forma, si quieres configurar un mapa específico, debes utilizar los parámetros mapX:
donde X
es un número positivo que puedes recuperar gracias a la solicitud GetProjectSettings.
Por ejemplo:
<WMS_Capabilities>
...
<ComposerTemplates xsi:type="wms:_ExtendedCapabilities">
<ComposerTemplate width="297" height="210" name="Druckzusammenstellung 1">
<ComposerMap width="171" height="133" name="map0"/>
<ComposerMap width="49" height="46" name="map1"/></ComposerTemplate>
</ComposerTemplates>
...
</WMS_Capabilities>
TEMPLATE
Este parámetro puede serr usado para especificar el nombre de la plantilla de composición a usar para la impresión.
FORMATO
Este parámetro especifica el formato de la imagen de mapa. Los valores disponibles son:
png
(valor predeterminado)image/png
jpg
jpeg
image/jpeg
svg
image/svg
image/svg+xml
pdf
application/pdf
Si el parámetro FORMAT
es diferente de uno de estos valores, entonces se devuelve una excepción.
ATLAS_PK
Este parámetro permite la activación del renderizado Atlas indicando qué características queremos imprimir. Para recuperar un atlas con todas las características, se puede usar el símbolo *
(según el número máximo de características permitidas en la configuración del proyecto).
Cuando FORMATO
es pdf
, se devuelve un solo documento PDF que combina las páginas de funciones. Para todos los demás formatos, se devuelve una sola página.
mapX:EXTENT
Este parámetro especifica la extensión para un elemento del diseño de mapa como xmin,ymin,xmax,ymax.
mapX:ROTATION
Este parámetro especifica la rotación del mapa en grados.
mapX:GRID_INTERVAL_X
Este parámetro especifica la densidad de línea de cuadrícula en la dirección X.
mapX:GRID_INTERVAL_Y
Este parámetro especifica la densidad de línea de cuadrícula en la dirección Y.
mapX:SCALE
Este parámetro especifica la escala de mapa para un elemento de la composición de mapa. Es útil para asegurar la visibilidad basada en escala de capas y etiquetas incluso si el cliente y servidor puedan tener diferentes algoritmos para calcular el denominador de escala.
mapX:LAYERS
Este parámetro especifica las capas para un elemento de mapa de diseño. Consulte GetMap Layers para obtener más información sobre este parámetro.
mapX:STYLES
Este parámetro especifica los estilos de las capas definidos en un elemento de mapa de diseño específico. Consulte GetMap Styles para obtener más información sobre este parámetro.
3.2.8. GetProjectSettings
Este tipo de solicitud funciona de manera similar a GetCapabilities, pero es más específico para QGIS Server y permite que un cliente lea información adicional que no está disponible en la salida de GetCapabilities:
visibilidad inicial de las capas
información acerca de atributos vectoriales y sus tipos de edición
información acerca de orden de capa y orden de dibujado
lista de capas publicadas en WFS
mostrar si un grupo en el árbol de capas es mutuamente exclusivo
La solicitud GetProjectSettings admite los siguientes parámetros:
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Archivo de proyecto QGIS |
|
Sí |
Nombre del servicio (WMS) |
|
Sí |
Nombre de la solicitud (GetProjectSettings) |
3.2.9. GetSchemaExtension
La solicitud GetSchemaExtension permite recuperar capacidades y operaciones extendidas opcionales del servicio WMS, como las implementadas por QGIS Server.
Parámetros |
Necesario |
Descripción |
---|---|---|
Sí |
Archivo de proyecto QGIS |
|
Sí |
Nombre del servicio (WMS) |
|
Sí |
Nombre de la solicitud (GetSchemaExtension) |
URL ejemplo:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetSchemaExtension
El documento XML se parece a:
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wms="http://www.opengis.net/wms" xmlns:qgs="http://www.qgis.org/wms" targetNamespace="http://www.qgis.org/wms" elementFormDefault="qualified" version="1.0.0">
<import namespace="http://www.opengis.net/wms" schemaLocation="http://schemas.opengis.net/wms/1.3.0/capabilities_1_3_0.xsd"/>
<element name="GetPrint" type="wms:OperationType" substitutionGroup="wms:_ExtendedOperation"/>
<element name="GetStyles" type="wms:OperationType" substitutionGroup="wms:_ExtendedOperation"/>
</schema>
3.2.10. Capas WMS Externas
QGIS Server permite incluir capas de servidores WMS externos en solicitudes WMS GetMap y WMS GetPrint. Esto es especialmente útil si un cliente web usa una capa de fondo externa en el mapa web. Por razones de rendimiento, dichas capas deben ser solicitadas directamente por el cliente web (no en cascada a través del servidor QGIS). Sin embargo, para imprimir, estas capas deben conectarse en cascada a través del servidor QGIS para que aparezcan en el mapa impreso.
Las capas externas se pueden agregar al parámetro LAYERS como EXTERNAL_WMS<layername>:. Los parámetros para las capas WMS externas (por ejemplo, url, formato, dpiMode, crs, capas, estilos) se pueden proporcionar más tarde como parámetros de servicio <layername>:<parameter>. En una solicitud GetMap, esto podría verse así:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetMap
&LAYERS=EXTERNAL_WMS:basemap,layer1,layer2
&OPACITIES=100,200,255
&STYLES=,,
&basemap:url=http://externalserver.com/wms.fcgi
&basemap:format=image/jpeg
&basemap:dpiMode=7
&basemap:crs=EPSG:2056
&basemap:layers=orthofoto
&basemap:styles=default
De manera similar, las capas externas se pueden usar en las solicitudes GetPrint:
http://localhost/qgisserver?
SERVICE=WMS
&REQUEST=GetPrint
&TEMPLATE=A4
&map0:layers=EXTERNAL_WMS:basemap,layer1,layer2
&map0:EXTENT=<minx,miny,maxx,maxy>
&OPACITIES=100,200,255
&basemap:url=http://externalserver.com/wms.fcgi
&basemap:format=image/jpeg
&basemap:dpiMode=7
&basemap:crs=EPSG:2056
&basemap:layers=orthofoto
&basemap:styles=default
3.2.11. Redlining
Esta función está disponible y se puede utilizar con solicitudes GetMap y GetPrint.
La función de marcación roja se puede utilizar para pasar geometrías y etiquetas en la solicitud que el servidor superpone sobre la imagen devuelta estándar (mapa). Esto permite al usuario poner énfasis o quizás agregar algunos comentarios (etiquetas) a algunas áreas, ubicaciones, etc. que no están en el mapa estándar.
La solicitud GetMap tiene el formato:
http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetMap
&HIGHLIGHT_GEOM=POLYGON((590000 5647000, 590000 6110620, 2500000 6110620, 2500000 5647000, 590000 5647000))
&HIGHLIGHT_SYMBOL=<StyledLayerDescriptor><UserStyle><Name>Highlight</Name><FeatureTypeStyle><Rule><Name>Symbol</Name><LineSymbolizer><Stroke><SvgParameter name="stroke">%23ea1173</SvgParameter><SvgParameter name="stroke-opacity">1</SvgParameter><SvgParameter name="stroke-width">1.6</SvgParameter></Stroke></LineSymbolizer></Rule></FeatureTypeStyle></UserStyle></StyledLayerDescriptor>
&HIGHLIGHT_LABELSTRING=Write label here
&HIGHLIGHT_LABELSIZE=16
&HIGHLIGHT_LABELCOLOR=%23000000
&HIGHLIGHT_LABELBUFFERCOLOR=%23FFFFFF
&HIGHLIGHT_LABELBUFFERSIZE=1.5
El equivalente GetPrint está en el formato (tenga en cuenta que se agrega el parámetro mapX:
para indicar qué mapa tiene líneas rojas):
http://localhost/qgisserver?
SERVICE=WMS
&VERSION=1.3.0
&REQUEST=GetPrint
&map0:HIGHLIGHT_GEOM=POLYGON((590000 5647000, 590000 6110620, 2500000 6110620, 2500000 5647000, 590000 5647000))
&map0:HIGHLIGHT_SYMBOL=<StyledLayerDescriptor><UserStyle><Name>Highlight</Name><FeatureTypeStyle><Rule><Name>Symbol</Name><LineSymbolizer><Stroke><SvgParameter name="stroke">%23ea1173</SvgParameter><SvgParameter name="stroke-opacity">1</SvgParameter><SvgParameter name="stroke-width">1.6</SvgParameter></Stroke></LineSymbolizer></Rule></FeatureTypeStyle></UserStyle></StyledLayerDescriptor>
&map0:HIGHLIGHT_LABELSTRING=Write label here
&map0:HIGHLIGHT_LABELSIZE=16
&map0:HIGHLIGHT_LABELCOLOR=%23000000
&map0:HIGHLIGHT_LABELBUFFERCOLOR=%23FFFFFF
&map0:HIGHLIGHT_LABELBUFFERSIZE=1.5
Aquí está la imagen obtenida por la solicitud anterior en la que se dibujan un polígono y una etiqueta sobre el mapa normal:
Puede ver que hay varios parámetros en esta solicitud:
HIGHLIGHT_GEOM: Puede añadir POINT, MULTILINESTRING, POLYGON etc. Admite geometrías multiparte. Aquí hay un ejemplo:
HIGHLIGHT_GEOM=MULTILINESTRING((0 0, 0 1, 1 1))
. Las coordenadas deben estar en el SRC de la solicitud GetMap/GetPrint.HIGHLIGHT_SYMBOL: Esto controla cómo se perfila la geometría y puede cambiar el ancho, el color y la opacidad del trazo.
HIGHLIGHT_LABELSTRING: Puede pasar su texto de etiquetado a este parámetro.
HIGHLIGHT_LABELSIZE: Este parámetro controla el tamaño de la etiqueta.
HIGHLIGHT_LABELFONT: Este parámetro controla la fuente de la etiqueta (por ejemplo, Arial)
HIGHLIGHT_LABELCOLOR: Este parámetro controla el color de la etiqueta.
HIGHLIGHT_LABELBUFFERCOLOR: Este parámetro controla el color del búfer de etiquetas.
HIGHLIGHT_LABELBUFFERSIZE: Este parámetro controla el tamaño del búfer de etiquetas.