Las tarjetas de mapas son simplemente la división del mundo en una cuadrícula indexada. Te permite acceder a datos de mapas y utilizarlos de forma eficiente y dinámica. a varias escalas cartográficas. La API de Map Tiles te brinda acceso a Varios conjuntos de datos geográficos temáticos, incluidos los seleccionados por Google:
Mosaicos de imágenes de rutas basadas en datos topográficos vectoriales con el diseño cartográfico de Google.
Ortofotografía capturada por cámaras satelitales y aéreas que proporcionan imágenes de la Tierra desde arriba (nadir).
Mapas de contorno de sombras.
Todos los mosaicos de mapas en 2D tienen referencias geográficas y están alineados entre sí. Están seleccionados. según la extensión geográfica del viewport y el nivel de zoom. Niveles de zoom varían de cero (para ver el mundo en su totalidad) a 22 (para ver las calles y bloques).
Temas de mapas
Puedes obtener mosaicos de mapas para los siguientes temas de mapas.
Tema del mapa | Descripción |
---|---|
Hoja de ruta | Rutas, edificios, lugares de interés y límites políticos |
Satélite | Imágenes fotográficas tomadas desde el espacio. |
Relieve | Mapa de contornos que muestra accidentes naturales, como vegetación |
Para solicitar mosaicos de mapas de la API de Map Tiles API, primero debes solicitar un
token de sesión. El token de sesión
realiza un seguimiento del estado actual del mapa y del viewport. Cuando configuras la sesión
debes establecer el valor mapType
para que coincida con el tema del mapa que deseas.
Luego, debes incluir el token de sesión en cada una de tus solicitudes para
API de Map Tiles.
Solicitudes de información a una vista del puerto
El viewport define el tamaño del cuadro que enmarca la escena mundial. Ventana gráfica las solicitudes de información devuelven detalles sobre los mosaicos de mapas que componen tu viewport actual. El motivo por el que solicitas información del viewport es para asegurarte de evitar solicitar imágenes en niveles de zoom que no existen.
Por ejemplo, la mayoría de las ciudades tienen imágenes con un nivel de zoom 22, pero no el océano, ya que solo mostraría cuadrados azules sin características.
La solicitud de viewport es una solicitud GET de HTTPS en la siguiente forma.
curl "https://tile.googleapis.com/tile/v1/viewport?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &zoom=zoom &north=north &south=south &east=east &west=west"
La solicitud contiene los siguientes campos:
zoom
- Es el nivel de zoom de la ventana de visualización.
north
,south
,east
,west
- Los puntos de norte, sur, este y oeste más lejanos del viewport, expresados en grados. Los puntos norte y sur deben encontrarse en el rango de -90 a 90; el este y el oeste deben encontrarse en rango (-180, 180). Para expresar límites que cruzan el antimeridiano, el oeste puede positivo (por ejemplo, 170) y el este puede ser negativo (por ejemplo, -170). Todas los parámetros son obligatorios.
Respuestas con información de la ventana de visualización
La respuesta del viewport te indica qué áreas tienen imágenes y en qué niveles de zoom. Una respuesta de información de viewport tiene la siguiente forma.
{
"copyright": "Map data ©2023",
"maxZoomRects": [
{
"maxZoom": 19,
"north": 90,
"south": -90,
"east": 180,
"west": -180
},
{
"maxZoom": 9,
"north": 90,
"south": -90,
"east": 180,
"west": -180
},
{
"maxZoom": 14,
"north": 84.375,
"south": -84.375,
"east": 180,
"west": -180
}, ...
]
}
El cuerpo de la respuesta contiene los siguientes campos.
copyright
- Contiene una cadena de atribución que debes mostrar en tu mapa cuando hoja de ruta de visualización y mosaicos satelitales. Para obtener más información, consulta las Políticas de la API de Map Tiles.
maxZoomRect
- Contiene un array de rectángulos delimitadores que se superponen con el valor actual. viewport. También contiene el nivel de zoom máximo disponible en cada rectángulo.
Funciones de las coordenadas de los mosaicos
Las herramientas (funciones simples) están disponibles en la mayoría de los lenguajes de programación para convertir
desde pares de latitud y longitud hasta coordenadas de mosaicos con un nivel de zoom específico.
Considera el siguiente ejemplo de código JavaScript que primero convierte de un latLng
a un punto y, luego, de un punto a coordenadas de mosaico.
var TILE_SIZE = 256;
function fromLatLngToPoint(latLng) {
var mercator = -Math.log(Math.tan((0.25 + latLng.lat() / 360) * Math.PI));
return {
x: TILE_SIZE * (latLng.lng() / 360 + 0.5),
y: TILE_SIZE / 2 * (1 + mercator / Math.PI)
};
}
function fromLatLngToTileCoord(latLng, zoom) {
var point = fromLatLngToPoint(latLng);
var scale = Math.pow(2, zoom);
return {
x: Math.floor(point.x * scale / TILE_SIZE),
y: Math.floor(point.y * scale / TILE_SIZE),
z: zoom
};
}