Render Map

Descripción

Devuelve una imagen de un mapa, en el formato especificado, definido por la definición de mapa JSON interno y los parámetros de solicitud.

El método RenderMap es muy similar al método RenderNamedMap, excepto que no se especifica un mapa con nombre asignado en la dirección URL y, en su lugar, se define el mapa en el cuerpo JSON de la solicitud REST. La generación de un mapa definido en línea se utiliza cuando se desea obtener una vista como imagen de un mapa con nombre asignado mediante la especificación de la representación (por ejemplo, gif), las dimensiones del ráster y una vista representada como centro y acercamiento, centro y escala o un cuadro delimitador. Opcionalmente, puede especificar la configuración regional y la resolución (DPI), así como suministrar información de autorización (seguridad).

La representación del cuerpo JSON está en el formato GeoJSON. Para obtener más información acerca de GeoJSON, consulte geojson.org/geojson-spec.html.

Estas reglas en orden de prioridad determinan cómo se crea la vista de representación:

  • si se especifican el centro y el zoom, se ignoran todos los otros parámetros que controlan la vista (para centro y zoom, debe especificar los parámetros c y z en la solicitud)
  • si el centro y la escala se especifican, entonces se ignoran todos los otros parámetros que controlan la vista. (para centro y escala, debe especificar los parámetros c y s en la solicitud)
  • si se especifica el cuadro delimitador, este se usa para definir la vista (para el cuadro delimitador, debe especificar el parámetro b en la solicitud)
  • si no se cumple ninguno de estos requisitos, entonces se arrojará un código HTTP de 404 (Not Found).

Formato de dirección URL de HTTP POST

Este formato se utiliza para solicitudes HTTP POST:


HTTP POST:	/maps/image.image type;
POST DATA:	w=width;h=height;c=x,y,srs;z=zoom;s=scale;b=x1,y1,x2,y2,srs;
			[r=resolution];[bc=background color];[bo=background opacity];
POST BODY: Content-Type:application/json {map definition}
			

Parámetros

Consulte Tipos de datos de URL de solicitud, para obtener información acerca de los tipos de parámetros que se indican a continuación.

Parámetro Tipo Requerido Descripción
image type Cadena El tipo de imagen para devolver (gif, png, jpg, bmp, jpeg, o tiff)
w=ancho Integer Ancho de las imágenes en píxeles
h=alto Integer Alto de las imágenes en píxeles
c=x, y, srs Double, Double, String Solo se requiere si se define la vista usando centro y zoom, o centro y escala El centro de la vista en coordenadas geográficas, que consta de una posición x, y, y el nombre de srs (sistema de referencia espacial).
z=zoom Integer, String Solo se requiere si se define la vista usando centro y zoom El zoom, o la distancia en toda la vista en unidades lineales. El zoom está representado por una cadena con un número seguido por uno o más espacios, los cuales son seguidos por una abreviatura de unidad lineal (por ejemplo, mi, km, m, etc.).
s=escala Integer Solo se requiere si se define la vista usando centro y escala La vista del mapa que se va a aumentar a la escala especificada. El valor de la escala se usa para comparar los valores del mapa y la distancia del mundo real. Por ejemplo, si se especifica un valor de 1000, la escala del mapa es 1:1000 (1 unidad de mapa es igual a 1000 unidades del mundo real).
b=x1, y1, x2, y2, srs Double, Double, Double, Double, String Solo se requiere si se define la vista usando un cuadro delimitador El cuadro delimitador que define toda la vista en las coordenadas del mundo real, mediante el uso de posiciones x, y de esquinas opuestas y el nombre srs (sistema de referencia espacial).
r=resolución Integer no La resolución DPI del mapa como un entero. Los DPI miden la resolución de las imágenes del mapa en puntos por pulgada (la cantidad de puntos que pueden colocarse en lo que abarca una pulgada lineal). Si no se especifica, asume el valor predeterminado del servidor.
bc=color de fondo Cadena no El color de fondo que se usará en la imagen del mapa, según se expresa en el formato RRGGBB. Si no se proporciona, el color de fondo será transparente.
Nota: A diferencia de la API SOAP, un # principal no debería preceder al color web hexadecimal.
bo=opacidad de fondo Double no

La opacidad del color de fondo. Si se especifican los atributos de fondo y backgroundOpacity, estos valores se usarán para dibujar el fondo. Si no se utiliza fondo, será totalmente transparente, independientemente del atributo backgroundOpacity. Si se utiliza fondo pero no se especifica la opacidad, será totalmente opaco.

Devolución

Arroja una imagen del mapa en el formato especificado.

Ejemplo

En su forma más simple, la opción de generar mapa puede definir una sola capa con nombre asignado y arrojar la imagen. En esta instancia, el mapa se arroja como un PNG que es de 400 x 400 píxeles de dimensión, la vista del mapa está definida por el cuadro delimitador en EPSG 27700. El mapa se define usando una única capa definida en el cuerpo json.


POST http://<server>:<port>/rest/Spatial/MappingService/maps/image.png;w=400;h=400;b=-140012,3087,736671,1193876,epsg%3A27700 HTTP/1.1
Content-type: application/json
Authorization: <Basic or Spectrum Token>

{
   "layers":[
      {
         "type":"NamedLayer",
         "name":"/Samples/NamedLayers/UK_REGNS_Layer"
      }
   ]
}

			

Los siguientes ejemplos muestran cómo se definen varias descripciones de mapa JSON:

Descripción Ejemplo
Centro y zoom con múltiples capas Ejemplo
Cuadro delimitador con una sola capa Ejemplo
Centro y escala con múltiples capas Ejemplo
Configuración de la capacidad de generación de capas Ejemplo
Mapa con superposición de capa circular Ejemplo
Tema de rango de conteo equivalente con estilos MapBasic Ejemplo
Capa de características con tema de rango Bi-Quantile Ejemplo
Capa de barras de graduación Ejemplo
Capa de gráfico de líneas Ejemplo
Capa de enlace de líneas con expresión métrica Ejemplo
Representación de un mapa mediante Feature Service Response Ejemplo

Hacer un mapa con un fondo azul transparente:

http://<server>:<port>/rest/Spatial/MappingService/maps/image.png;w=256;h=256;b=-180,-90,180,90,epsg:4326;bc=0048FF;bo=.5
Content-type: application/json
Authorization: <Basic or Spectrum Token>

{
   "layers":[
      {
         "type":"NamedLayer",
         "name":"/Samples/NamedLayers/WorldcapFeatureLayer"
      },
      {
         "type":"NamedLayer",
         "name":"/Samples/NamedLayers/UK_REGNS_Layer"
      },
      {
         "type":"NamedLayer",
         "name":"/Samples/NamedLayers/WorldFeatureLayer"
      }
   ]
}