Los mosaicos de Street View son similares a los mosaicos 2D, excepto que contienen imágenes panorámicas que se tomaron a nivel de la calle. Con Street View, puedes explorar puntos de referencia en todo el mundo, ver maravillas naturales y recorrer el interior de lugares como museos, estadios, restaurantes o pequeños negocios.
Este extremo de API te brinda acceso a lo siguiente:
- Mosaicos de Street View de Google Maps
- Metadatos de Street View
- Miniaturas de Street View
Puedes unir mosaicos de imágenes tomados desde el nivel de la calle para crear un efecto panorámico real. Además, puedes consultar hasta 100 IDs de panorámica para un conjunto de ubicaciones (como una ruta) y obtener metadatos más detallados sobre la posición de la cámara.
Es necesario contar con un usuario para unir mosaicos de Street View. Por ejemplo, el visor de panorámicas personalizadas de Street View.
Una vez que tengas una clave de API, podrás acceder a las imágenes de Street View; para ello, sigue estos pasos.
Obtén un token de sesión. Asegúrate de establecer el valor de
mapType
enstreetview
.Usa el token de sesión para obtener el identificador de panorámica (panoId) de una o más ubicaciones geográficas.
Usa los identificadores de panorámicas de la respuesta de búsqueda de panoId para obtener lo siguiente:
Metadatos de Street View. Para obtener metadatos de Street View, también puedes pasar un conjunto de coordenadas y un radio.
Métodos de Street View
Puedes acceder a las imágenes y los metadatos de Street View llamando a uno de los siguientes cuatro métodos.
Método | Descripción |
---|---|
https://tile.googleapis.com/v1/streetview/tiles |
Muestra los mosaicos individuales de Street View. Puedes recuperar mosaicos de Street View en seis niveles de zoom: desde 512 píxeles hasta 13 312 píxeles. |
https://tile.googleapis.com/v1/streetview/panoIds |
Te permite buscar de forma masiva en hasta 100 ubicaciones. Muestra los IDs de panorámica de todas las ubicaciones con imágenes. |
https://tile.googleapis.com/v1/streetview/thumbnail |
Muestra una imagen JPEG en miniatura de una escena de Street View. Te permite proporcionar un encabezado, una presentación, las dimensiones y un campo visual. Las dimensiones mínimas son de 16 x 16 píxeles. Las dimensiones máximas son 250 x 600 píxeles. |
https://tile.googleapis.com/v1/streetview/metadata |
Proporciona información detallada sobre la panorámica especificada. Los detalles incluyen la dirección relacionada y vínculos a panorámicas adyacentes. |
Búsqueda de panoIds de Street View
Para encontrar el identificador de panorámica de una o más ubicaciones geográficas, puedes pasar sus coordenadas (lat
, lng
) al método panoIds
. El cuerpo de la solicitud es un objeto JSON que contiene un array locations
y, opcionalmente, un radius
, como se muestra en el siguiente ejemplo de código JSON.
curl -X POST -d '{ "locations": [ {"lat": -33.883837, "lng": 151.209307}, {"lat": -33.883700, "lng": 151.210307}, {"lat": 0, "lng": 0} ], "radius": 50 }' \ -H 'Content-Type: application/json' \ "https://tile.googleapis.com/v1/streetview/panoIds?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY"
locations
- El array
locations
debe contener al menos un conjunto de valores de coordenadas, pero puedes incluir más, hasta un máximo de 100. radius
- El valor
radius
(medido en metros) define el radio del círculo alrededor de la ubicación determinada en el que se buscarán las panorámicas. El valor predeterminado es 50 metros.
Respuesta PanoId
La API de Map Tiles intenta encontrar la panorámica más cercana a cada ubicación y, luego, muestra sus IDs de panorámica. Una solicitud panoIds
correcta muestra un objeto JSON que contiene un array panoIds
. El array contiene una lista de los IDs de panorámica, en el orden en que los solicitaste. Si la API de Map Tiles no puede encontrar ninguna panorámica de las ubicaciones que solicitaste, se mostrará una string vacía en esa ubicación en el array. Para ver un ejemplo, consulta el siguiente código JSON.
{
"panoIds": [
"ACfH-n2HcBvRry_3oc9grw",
"f5DJZatBAAAXHlooS2wKbw",
""
]
}
Puedes usar panoIds
para lo siguiente:
- Cómo solicitar metadatos de Street View
- Cómo solicitar miniaturas de Street View
- Cómo solicitar mosaicos de Street View
Metadatos de Street View
Las solicitudes de metadatos de Street View recuperan información sobre panorámicas. Una solicitud de metadatos de Street View es una solicitud HTTPS GET. Puedes recuperar información sobre las panorámicas de dos maneras:
Si pasas una
pano_id
, la API de Map Tiles mostrará los metadatos de esa panorámica.Sin embargo, si pasas un objeto
lat
ylng
, la API de Map Tiles mostrará los metadatos de la panorámica más cercana dentro del radio de búsqueda especificado.
Cómo pasar un conjunto de coordenadas y un radio
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY &lat=lat &lng=lng &radius=meters"
Dado que los IDs de panorámica son transitorios, te recomendamos que pases un conjunto de coordenadas y un valor radius
en tu solicitud inicial de metadatos de Street View.
Para ver un ejemplo, consulta el siguiente fragmento de código.
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &lat=47.62066 &lng=-122.34923 &radius=50"
Pasa el panoId de una imagen de Street View
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
Respuesta de metadatos
El siguiente código JSON es un ejemplo de una respuesta de metadatos típica.
{
"panoId": "rZ9KeTyhA11i0VppYNzsSg",
"lat": 37.420864219339165,
"lng": -122.08446528377291,
"imageHeight": 6656,
"imageWidth": 13312,
"tileHeight": 512,
"tileWidth": 512,
"heading": 94.35,
"tilt": 88.39652,
"roll": 1.7181772,
"imageryType": "outdoor",
"date": "2023-01",
"copyright": "© 2023 Google",
"reportProblemLink": "https://cbks0.googleapis.com/cbk?output=report&panoid=rZ9KeTyhA11i0VppYNzsSg&cb_client=api&cbp=1,0,,0,0&hl=en-US&gl=us",
"addressComponents": [
{
"longName": "United States",
"shortName": "United States",
"types": [
"country"
]
},
{
"longName": "Mountain View, California",
"shortName": "Mountain View, California",
"types": [
"locality"
]
},
{
"longName": "Charleston Rd",
"shortName": "Charleston Rd",
"types": [
"route"
]
},
{
"longName": "1635",
"shortName": "1635",
"types": [
"street_number"
]
}
],
"links": [
{
"panoId": "Yw4pqzA4FEq1qs-BwZSvSQ",
"heading": 274.47998046875,
"text": "Charleston Rd"
},
{
"panoId": "1cODYwFRw1aZ45IignDIMw",
"heading": 94.47999572753906,
"text": "Charleston Rd"
}
]
}
La siguiente lista contiene definiciones de los campos del cuerpo de la respuesta.
panoId
- El ID único de esta panorámica. No debes confiar en que los IDs de panorámica sean válidos durante más de una sola sesión de usuario.
lat
,lng
- Las coordenadas (latitud y longitud) de la panorámica. Esos valores pueden ser diferentes de las coordenadas que pasaste en la solicitud porque la ubicación se ajusta a la panorámica más cercana.
imageHeight
,imageWidth
- Las dimensiones de la imagen panorámica unida.
tileHeight
,tileWidth
- Dimensiones de un mosaico de una panorámica única.
heading
- La orientación con la brújula, medida en grados, en sentido horario partiendo del norte. Los encabezados se muestran dentro del rango [0,360], donde 0 representa el norte final.
tilt
- Es la inclinación de la panorámica, medida en grados desde el polo sur de la panorámica hasta el horizonte. Los valores mostrados están dentro del rango [0, 180]. Un valor de 90 grados indica que el horizonte ya está alineado en el ecuador de la panorámica.
roll
- Es la rotación en el sentido de las manecillas del reloj alrededor de la línea de visión que se aplicó a la panorámica para nivelar el horizonte. Los valores que se muestran están dentro del rango [0, 360].
imageryType
- Indica el tipo de imagen. Los valores válidos son
indoor
youtdoor
. date
- La fecha en la que se tomó la imagen. No todas las imágenes tienen datos de fechas. Pero cuando está disponible, este campo contiene una combinación del año (AAAA) y el mes (MM). Por ejemplo: 2023-05 o 2024.
copyright
- El texto con derechos de autor que debes mostrar como atribución junto con la imagen de Street View.
reportProblemLink
- Es un hipervínculo que los usuarios pueden usar para informar problemas relacionados con esta tarjeta de Street View. Debes mostrar este hipervínculo en la esquina inferior derecha de la imagen y también incluir texto que diga algo como "Informar un problema con esta imagen".
addressComponent
- Es una geocodificación estructurada que contiene detalles sobre la dirección de la panorámica. Para obtener más información, consulta Solicitudes y respuestas de Geocoding en la documentación de la API de Geocoding.
links
- Una lista de los IDs de panorámica que vinculan a esta panorámica. También contiene el encabezado en el cual se encuentra el enlace. Por ejemplo, si la orientación es de 180°, la panorámica vinculada se orienta al sur de la panorámica actual. Ten en cuenta que, debido a la naturaleza transitoria de los IDs de panorámica, no debes confiar en ellos durante más de una sesión de usuario.
Miniaturas de Street View
Puedes solicitar imágenes de Street View en formato thumbnail
. Las miniaturas son imágenes sin mosaicos con tamaño, encabezado, tono y campo visual definidos por el usuario.
Las imágenes en miniatura tienen una resolución inferior a la de los mosaicos y el tamaño de archivo es más pequeño. Para enviar una solicitud de miniatura, envía una solicitud GET al extremo thumbnail
, como se muestra en el siguiente prototipo de código.
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId &height=FROM_16_TO_250 &width=FROM_16_TO_600 &pitch=FROM-90_TO_90 &yaw=FROM-360_TO_360 &fov=FROM_30_TO_120"
Considera el siguiente ejemplo de código que descarga una miniatura de imágenes de Street View tomadas en Whistler, Canadá.
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=Zzl28rqGJgaL2IdkUleP8A &height=200 &width=200 &pitch=0 &yaw=250 &fov=80" --output /tmp/example_thumbnail.png
Parámetros obligatorios
panoId
- El ID único de la miniatura que quieres Puedes obtener los valores de ID de panorámica del extremo
panoIds
o del extremometadata
, que aceptan coordenadas geográficas y muestran elpanoId
correspondiente. session
- Un token de sesión válido.
key
- Tu clave de API.
Parámetros opcionales
height
- Especifica la altura de la miniatura en píxeles, que puede ser de entre 16 y 250 píxeles. Si no especificas una altura, se utilizará, de forma predeterminada, el valor máximo permitido de 250 píxeles. Si especificas un valor que está fuera del rango, la miniatura se ajusta al valor válido más cercano.
width
- Especifica el ancho de la miniatura en píxeles, que puede ser de entre 16 y 600 píxeles. Si no especificas un ancho, se utilizará de forma predeterminada el valor máximo permitido de 600 píxeles. Si especificas un valor que está fuera del rango, la miniatura se ajusta al valor válido más cercano.
pitch
- Especifica el ángulo de la cámara a lo largo del eje vertical. Los valores válidos se encuentran en el rango de
-90
a90
(inclusive). El valor predeterminado es 0. yaw
- Especifica la dirección de la cámara a lo largo del eje horizontal. Los valores válidos se encuentran en el rango de
-360
a360
(inclusive). El valor predeterminado es 0. fov
- Especifica el campo visual horizontal, expresado en grados, con un valor máximo de 120. Cuando se trabaja con un viewport de tamaño fijo, como en el caso de una imagen de Street View de un tamaño determinado, el campo visual representa el zoom; cuando los valores más bajos especifican un nivel de zoom más alto. El valor predeterminado es 90.
Mosaicos de imágenes de Street View
Una vez que tengas una panoId
, podrás solicitar un mosaico de imagen de Street View. Las solicitudes de mosaicos son solicitudes HTTPS GET. Considera el siguiente ejemplo:
curl "https://tile.googleapis.com/v1/streetview/tiles/z/x/y?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
En este ejemplo de código, z
es el nivel de zoom, y x
y y
son las coordenadas del mosaico del mosaico de Street View que deseas. Los niveles de zoom de las panorámicas de Street View deben estar dentro del rango [0,5], donde 0 representa el campo visual más amplio.
Nivel de zoom | Campo visual aproximado |
---|---|
0 | 360° |
1 | 180° |
2 | 90° |
3 | 45° |
4 | 22.5° |
5 | 11.25° |
Respuestas de los mosaicos de Street View
Una solicitud de mosaico de Street View correcta muestra una imagen con el formato y el tamaño que especificaste en la respuesta de createSession
.
En el nivel de zoom cero, se cambia el tamaño de toda la panorámica a un mosaico de dimensiones tileWidth
por tileHeight
. Como las panorámicas son más grandes en la dimensión x, el mosaico contendrá un espacio vacío en la dimensión y:
En el nivel de zoom cinco, el panorama en tamaño original se usa y se divide en mosaicos.
Tener información sobre derechos de autor
Debes mostrar información de derechos de autor con todas las panorámicas de Street View. La cadena que se mostrará puede variar de una panorámica. Para obtener la información sobre derechos de autor, debes solicitar los metadatos de Street View y, luego, podrás consultar el campo copyright
de la respuesta. Para obtener más información, consulta Atribuciones de datos.