Presentar leyendas para un mapa
Descripción
Devuelve la leyenda completa de un mapa, especificando la definición de mapa como JSON, el tamaño de muestra y el tipo mime de las leyendas. La leyenda se arroja como filas de muestras únicas, lo que incluye una imagen codificada base 64 (o dirección URL) y una descripción de texto, que constituye una leyenda completa. Para cada capa en la definición del mapa, serán devueltas cero, una, o más entradas de leyendas.
Cuando inLineSwatch se pasa como falso, se usa la definición de mapa JSON para crear una clave única. Esta clave, junto con la ruta (legends/{legendIndex}/rows/{rowindex}), se ubica en la memoria caché. Esta clave puede utilizarse en la operación getSwatch para recuperar la leyenda de la caché.
La representación del cuerpo JSON está en el formato GeoJSON. Para obtener más información sobre GeoJSON, consulte geojson.org/geojson-spec.html.
Formato de dirección URL de HTTP POST
El siguiente formato se utiliza para solicitudes HTTP POST:
HTTP POST: /maps/legends.json;
POST DATA: w=width;h=height;t=image type;
[r=resolution]?[inlineSwatch=boolean]&[ignoreLegendRowOverrideVisibility=boolean]
POST BODY: Content-Type:application/json {map definition, containing an object of a Map, layer array, or FeatureCollection}
Parámetros
Consulte Tipos de datos de URL de solicitud, para obtener información sobre los tipos de parámetros que se indican a continuación.
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
tipo | Cadena | sí | El tipo de información para devolver la leyenda (por ejemplo, json) |
w=ancho | Integer | sí | Ancho de la muestra individual de leyenda en píxeles |
h=alto | Integer | sí | Altura de la muestra individual de leyenda en píxeles |
t=tipo de imagen | Cadena | sí | El tipo de imágenes que se arrojará para las muestras de leyenda (por ejemplo, gif, png, etc.) |
r=resolución | Integer | no | La resolución DPI de las muestras de leyenda como un entero. Los DPI miden la resolución de las imágenes 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. |
inlineSwatch=booleano | Boolean | no | Determina si las imágenes de muestra se arrojan como datos o URL a la ubicación de la imagen en el servidor. De manera predeterminada, todas las imágenes de muestra se arrojan como imágenes codificadas base 64 en la respuesta JSON (inlineSwatch=verdadero). Para arrojar URLs de imagen de muestra a las imágenes ubicadas en el servidor, especifique inlineSwatch=false. |
ignoreLegendRowOverrideVisibility=boolean | Boolean | no | Ignora la configuración de visibilidad de LegendRowOverride en un recurso con nombre asignado y arroja todas las leyendas. |
Ejemplo
Devuelve la leyenda (muestras e información) del mapa MapWithLayer, ubicado en el directorio /Samples/NamedMaps en el repositorio, en formato JSON. Las muestras serán de 32 x 16, en formato PNG, y se arrojarán como imágenes codificadas base 64. El mapa se define usando una única capa definida en el cuerpo json.
http://<hostname>:<port>/rest/Spatial/MappingService/maps/legends.json;w=16;h=32;t=png
Content-type: application/json
Authorization: <Basic or Spectrum Token>
{
'layers':[
{
'type':'NamedLayer',
'name':'/Samples/NamedLayers/UK_REGNS_Layer'
}
]
}
El cuerpo de la solicitud puede contener una serie de capas (como anteriormente), Map o Featurecollection. A continuación se muestran ejemplos de objetos Map yFeatureCollection:
{
"MapDescription": {
"version": "1.0",
"name": "Samples/NamedMaps/WorldMap",
"layers":[
{
"type":"NamedLayer",
"name":"/Samples/NamedLayers/USALayer"
}
]
}
}
{ "type": "FeatureCollection",
"features": [
{ "type": "Feature",
"geometry": {"type": "Point", "coordinates": [102.0, 0.5]},
"properties": {"prop0": "value0"}
},
{ "type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0]
]
},
"properties": {
"prop0": "value0",
"prop1": 0.0
}
},
{ "type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [
[ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0],
[100.0, 1.0], [100.0, 0.0] ]
]
},
"properties": {
"prop0": "value0",
"prop1": {"this": "that"}
}
}
]
}
Devolución
Arroja una matriz de valores de cadena devueltos en un objeto de respuesta JSON, que representa todas las muestras de leyenda de un mapa. Para cada capa en el mapa, serán devueltas cero, una, o más entradas de leyendas.En la siguiente respuesta, inlineSwatch es verdadero. La imagen se arroja como la imagen codificada base 64 predeterminada.
{
"LegendResponse":[{"layerName":"UK REGNS",
"rows":[{
"description":"Region","swatch":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAy
CAYAAAAeP4ixAAAASUlEQVR42u3PQRUAAAREQf3TacRBCszu+wEm4tjqQAPJxQcBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBeQHZXgPRVfdw38uLQQAAAABJRU5ErkJggg=="
}],
"title":"UK REGNS",
"type":"CARTOGRAPHIC"}]
}
La siguiente respuesta es la misma muestra que anteriormente, sin embargo, se devuelve una dirección URL hacia la imagen de muestra generada (configuración del parámetro inlineSwatch en falso).
{
"LegendResponse":[{"layerName":"UK REGNS",
rows":[{
"description":"Region","swatch":"http://<hostname>:<port>/rest/Spatial/MappingService/maps/
ae16d6e47ab63e2a840f8b1f205e12bb/legends/0/rows/0/swatch/50x50.png"}],
"title":"UK REGNS","type":"CARTOGRAPHIC"}]
}