Os blocos do Street View são semelhantes aos blocos 2D, mas contêm imagens panorâmicas tiradas no nível da rua. Com o Street View, você pode conhecer pontos turísticos pelo mundo, ver maravilhas naturais e visitar museus, arenas, restaurantes ou até pequenas empresas. Esse endpoint da API dá acesso a:
- Blocos do Street View do Google Maps
- Metadados do Street View
- Miniaturas do Street View
É possível unir blocos de imagens tirados do nível da rua para criar um efeito panorâmico real. Você pode consultar até 100 IDs de panorama para um conjunto de locais (como uma rota) e receber metadados mais detalhados sobre a posição da câmera.
Um visualizador é necessário para unir os blocos do Street View. Por exemplo, o visualizador de panoramas personalizados do Street View.
Depois de ter uma chave de API, você pode acessar as imagens do Street View seguindo estas etapas.
Receba um token de sessão. Defina o valor de
mapType
comostreetview
.Use o token de sessão para pegar o identificador de panorama (panoId) de um ou mais locais geográficos.
Use os identificadores de panorama da resposta de pesquisa de panoId para receber:
Metadados do Street View. Também é possível receber metadados da Street View transmitindo um conjunto de coordenadas e um raio.
Métodos do Street View
É possível acessar as imagens e os metadados do Street View chamando um dos quatro métodos a seguir.
Método | Descrição |
---|---|
https://tile.googleapis.com/v1/streetview/tiles |
Retorna os blocos individuais do Street View. É possível recuperar blocos do Street View em seis níveis de zoom: de 512 a 13.312 pixels. |
https://tile.googleapis.com/v1/streetview/panoIds |
Permite pesquisar em massa até 100 locais. Retorna IDs de panoramas para todos os locais com imagens. |
https://tile.googleapis.com/v1/streetview/thumbnail |
Retorna uma imagem JPEG em miniatura de uma cena do Street View. Permite fornecer um título, inclinação, dimensões e campo de visão. As dimensões mínimas são 16 x 16 pixels. As dimensões máximas são 250 x 600 pixels. |
https://tile.googleapis.com/v1/streetview/metadata |
Fornece informações detalhadas sobre o panorama especificado. Os detalhes incluem o endereço relacionado e links para panoramas adjacentes. |
Pesquisa de panoIds do Street View
É possível encontrar o identificador de panorama de um ou mais locais geográficos
transmitindo as coordenadas (lat
, lng
) para o método panoIds
. O corpo da
solicitação é um objeto JSON que contém uma matriz locations
e, opcionalmente, um
radius
, conforme mostrado no exemplo de código JSON abaixo.
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
- A matriz
locations
precisa conter pelo menos um conjunto de valores de coordenadas, mas é possível incluir mais, até um máximo de 100. radius
- O valor
radius
(medido em metros) define o raio do círculo em torno do local especificado, no qual os panoramas serão pesquisados. O valor padrão é de 50 metros.
Resposta do panoId
A API Map Tiles tenta encontrar o panorama mais próximo de cada local e, em seguida, retorna os IDs dos panoramas. Uma solicitação panoIds
bem-sucedida retorna um
objeto JSON que contém uma matriz panoIds
. A matriz contém uma lista de IDs de panorama na ordem em que foram solicitados. Se a API Map Tiles não encontrar panoramas para os locais que você solicitou, uma string vazia será retornada nesse local na matriz. Confira o exemplo
do código JSON abaixo.
{
"panoIds": [
"ACfH-n2HcBvRry_3oc9grw",
"f5DJZatBAAAXHlooS2wKbw",
""
]
}
Você pode usar panoIds
para:
- Solicitar metadados do Street View
- Solicitar miniaturas do Street View
- Solicitar blocos do Street View
Metadados do Street View
As solicitações de metadados do Street View recuperam informações sobre panoramas. Uma solicitação de metadados do Street View é uma solicitação GET HTTPS. É possível recuperar informações sobre panoramas de duas maneiras:
Se você transmitir um
pano_id
, a API Map Tiles vai retornar os metadados desse panorama.No entanto, se você transmitir um
lat
e umlng
, a API Map Tiles vai retornar os metadados do panorama mais próximo dentro do raio de pesquisa especificado.
Transmitir um conjunto de coordenadas e um raio
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY &lat=lat &lng=lng &radius=meters"
Como os IDs de panorama são temporários, recomendamos transmitir um conjunto de coordenadas e um valor radius
na solicitação inicial de metadados do Street View.
Confira o snippet de código abaixo como exemplo.
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &lat=47.62066 &lng=-122.34923 &radius=50"
Transmitir o panoId de uma imagem do Street View
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
Resposta de metadados
O código JSON a seguir é um exemplo de resposta de metadados 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"
}
]
}
A lista a seguir contém definições dos campos no corpo da resposta.
panoId
- O ID exclusivo desse panorama. Não confie na validade dos IDs de panorama por mais de uma única sessão de usuário.
lat
,lng
- As coordenadas (latitude e longitude) do panorama. Esses valores podem ser diferentes das coordenadas transmitidas na solicitação, porque a localização é direcionada ao panorama mais próximo.
imageHeight
,imageWidth
- As dimensões da imagem panorâmica costurada.
tileHeight
,tileWidth
- As dimensões de um único bloco de panorama.
heading
- O rumo da bússola, medido em graus, no sentido horário a partir do Norte. Os rumos são retornados dentro do intervalo [0,360], com 0 representando o Norte.
tilt
- A inclinação do panorama, medida em graus do polo sul do panorama até o horizonte. Os valores retornados estão no intervalo [0, 180]. Um valor de 90 graus indica que o horizonte já está alinhado no equador do panorama.
roll
- A rotação em sentido horário em volta da linha de visão aplicada ao panorama para nivelar o horizonte. Os valores retornados estão no intervalo [0, 360].
imageryType
- Indica o tipo de imagem. Os valores válidos são
indoor
eoutdoor
. date
- A data em que a imagem foi tirada. Nem todas as imagens têm dados de data. Mas, quando disponível, esse campo contém uma combinação do ano (AAAA) e do mês (MM). Por exemplo: 2023-05 ou 2024.
copyright
- O texto de direitos autorais que você precisa mostrar como atribuição junto com a imagem do Street View.
reportProblemLink
- Um hiperlink que os usuários podem usar para informar problemas com esse bloco do Street View. Esse hiperlink precisa ser exibido no canto inferior direito da imagem e incluir um texto de link, como "Informar um problema com esta imagem".
addressComponent
- Um código geográfico estruturado que contém detalhes sobre o endereço do panorama. Para mais informações, consulte Solicitações e respostas de geocodificação na documentação da API Geocoding.
links
- Uma lista de IDs de panorama vinculados a este. Também contém o título em que o link é encontrado. Por exemplo, se o rumo for 180°, o panorama vinculado fica ao sul do panorama atual. Devido à natureza temporária dos IDs de panorama, não confie neles por mais de uma única sessão de usuário.
Miniaturas do Street View
Você pode solicitar imagens do Street View no formato thumbnail
. As miniaturas são
imagens não divididas em blocos com tamanho, rumo, inclinação e campo de visão definidos pelo usuário.
As imagens das miniaturas têm uma resolução mais baixa que os blocos e são menores em
tamanho de arquivo. Para fazer uma solicitação de miniatura, envie uma solicitação GET para o endpoint thumbnail
, conforme demonstrado no protótipo de código abaixo.
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"
Considere o exemplo de código abaixo, que faz o download de uma miniatura de imagens do Street View tiradas em 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 obrigatórios
panoId
- O ID exclusivo da miniatura que você quer. É possível receber valores de ID do panorama
do endpoint
panoIds
ou do endpointmetadata
. Ambos aceitam coordenadas geográficas e retornam opanoId
adequado. session
- Um token de sessão válido.
key
- Sua chave de API.
Parâmetros opcionais
height
- Especifica a altura da miniatura em pixels, variando de 16 a 250 pixels. Se você não especificar uma altura, ela vai assumir o valor máximo permitido de 250 pixels. Se você especificar um valor fora do intervalo, a miniatura será direcionada ao valor válido mais próximo.
width
- Especifica a largura da miniatura em pixels, variando de 16 a 600 pixels. Se você não especificar uma largura, ela vai assumir o valor máximo permitido de 600 pixels. Se você especificar um valor fora do intervalo, a miniatura será direcionada ao valor válido mais próximo.
pitch
- Especifica o ângulo da câmera ao longo do eixo vertical. Os valores válidos estão no
intervalo de
-90
a90
(inclusive). O valor padrão é 0. yaw
- Especifica a direção da câmera ao longo do eixo horizontal. Os valores válidos
estão no intervalo de
-360
a360
(inclusive). O valor padrão é 0. fov
- Especifica o campo de visão horizontal, expresso em graus, com um valor máximo de 120. Ao trabalhar com uma janela de visualização de tamanho fixo, assim como com uma imagem do Street View de tamanho definido, o campo de visão representa o zoom, em que valores menores especificam um nível maior de zoom. O valor padrão é 90.
Blocos de imagem do Street View
Depois que você tiver um panoId
, poderá solicitar um bloco de imagem do Street View. As solicitações de blocos
são solicitações HTTPS GET. Veja o exemplo a seguir.
curl "https://tile.googleapis.com/v1/streetview/tiles/z/x/y?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
Neste exemplo de código, z
é o nível de zoom, e x
e y
são as coordenadas do bloco do Street View que você quer. Os níveis de zoom em panoramas do Street View precisam
estar no intervalo [0,5], com 0 representando o campo de visão mais amplo.
Nível de zoom | Campo de visão aproximado |
---|---|
0 | 360° |
1 | 180° |
2 | 90° |
3 | 45° |
4 | 22,5° |
5 | 11,25° |
Respostas dos blocos do Street View
Uma solicitação de bloco do Street View bem-sucedida retorna uma imagem no formato e tamanho
especificados na resposta createSession
.
No nível de zoom zero, o panorama inteiro é redimensionado em um bloco com as dimensões
tileWidth
por tileHeight
. Como os panoramas são maiores na dimensão x,
o bloco vai conter espaço vazio na dimensão y:
No nível de zoom 5, o panorama em tamanho completo é usado e dividido em blocos.
Direitos autorais
Você precisa mostrar as informações de direitos autorais em todos os panoramas do Street View. A
string a ser exibida pode variar entre panoramas. Para receber as informações de direitos autorais,
solicite os metadados do Street View e consulte
o campo copyright
da resposta. Para mais informações, consulte Atribuições de dados.