Les tuiles Street View sont semblables aux tuiles 2D, à la différence qu'elles contiennent des images panoramiques prises au niveau de la rue. Grâce à Street View, vous pouvez explorer des sites célèbres du monde entier, découvrir des merveilles naturelles, et visiter des lieux aussi variés que des musées, des stades, des restaurants et des petites entreprises. Ce point de terminaison d'API vous permet d'accéder aux éléments suivants:
- Tuiles Street View Google Maps
- Métadonnées Street View
- Miniatures Street View
Vous pouvez assembler des tuiles d'images prises au niveau de la rue pour créer un effet panoramique réel. Vous pouvez également interroger jusqu'à 100 ID de panorama pour un ensemble d'emplacements (par exemple, un itinéraire) et obtenir des métadonnées plus détaillées sur la position de la caméra.
Un lecteur est nécessaire pour assembler les cartes Street View. Par exemple, le visualiseur de panoramas personnalisé Street View.
Une fois que vous disposez d'une clé API, vous pouvez accéder aux images Street View en procédant comme suit.
Obtenez un jeton de session. Veillez à définir la valeur de
mapType
surstreetview
.Utilisez le jeton de session pour obtenir l'identifiant du panorama (panoId) d'un ou de plusieurs emplacements géographiques.
Utilisez les identifiants de panorama de la réponse de recherche panoId pour obtenir:
Métadonnées Street View Vous pouvez également obtenir des métadonnées Street View en transmettant un ensemble de coordonnées et un rayon.
Méthodes Street View
Vous pouvez accéder aux images et aux métadonnées Street View en appelant l'une des quatre méthodes suivantes.
Méthode | Description |
---|---|
https://tile.googleapis.com/v1/streetview/tiles |
Renvoie les tuiles Street View individuelles. Vous pouvez récupérer des tuiles Street View à six niveaux de zoom: de 512 pixels à 13 312 pixels. |
https://tile.googleapis.com/v1/streetview/panoIds |
Vous permet de rechercher jusqu'à 100 établissements de manière groupée. Renvoie les ID de panorama pour tous les lieux avec des images. |
https://tile.googleapis.com/v1/streetview/thumbnail |
Renvoie une image JPEG miniature d'une scène Street View. Vous permet de spécifier un cap, une inclinaison, des dimensions et un champ de vision. Les dimensions minimales sont de 16 x 16 pixels. Les dimensions maximales sont de 250 x 600 pixels. |
https://tile.googleapis.com/v1/streetview/metadata |
Fournit des informations détaillées sur le panorama spécifié. Les informations incluent l'adresse associée et des liens vers les panoramas adjacents. |
Recherche de panoIds Street View
Vous pouvez trouver l'identifiant du panorama d'un ou de plusieurs emplacements géographiques en transmettant leurs coordonnées (lat
, lng
) à la méthode panoIds
. Le corps de la requête est un objet JSON contenant un tableau locations
et éventuellement un radius
, comme illustré dans l'exemple de code JSON suivant.
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
- Le tableau
locations
doit contenir au moins un ensemble de valeurs de coordonnées, mais vous pouvez en inclure davantage (jusqu'à 100). radius
- La valeur
radius
(mesurée en mètres) définit le rayon du cercle autour du lieu donné dans lequel rechercher des panoramas. La valeur par défaut est de 50 mètres.
Réponse PanoId
L'API Map Tiles tente de trouver le panorama le plus proche de chaque emplacement, puis renvoie leurs ID de panorama. Une requête panoIds
réussie renvoie un objet JSON contenant un tableau panoIds
. Le tableau contient une liste d'ID de panorama, dans l'ordre dans lequel vous les avez demandés. Si l'API Map Tiles ne trouve aucun panorama pour les emplacements que vous avez demandés, une chaîne vide est renvoyée à cet emplacement dans le tableau. Pour obtenir un exemple, consultez le code JSON suivant.
{
"panoIds": [
"ACfH-n2HcBvRry_3oc9grw",
"f5DJZatBAAAXHlooS2wKbw",
""
]
}
Vous pouvez utiliser panoIds
pour:
- Demander des métadonnées Street View
- Demander des miniatures Street View
- Demander des tuiles Street View
Métadonnées Street View
Les requêtes de métadonnées Street View récupèrent des informations sur les panoramas. Une requête de métadonnées Street View est une requête HTTPS GET. Vous pouvez récupérer des informations sur les panoramas de deux manières:
Si vous transmettez un
pano_id
, l'API Map Tiles renvoie les métadonnées de ce panorama.Toutefois, si vous transmettez un
lat
et unlng
, l'API Map Tiles renvoie les métadonnées du panorama le plus proche dans le rayon de recherche donné.
Transmettre un ensemble de coordonnées et un rayon
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY &lat=lat &lng=lng &radius=meters"
Étant donné que les ID de panorama sont temporaires, nous vous recommandons de transmettre un ensemble de coordonnées et une valeur radius
dans votre requête de métadonnées Street View initiale.
Pour obtenir un exemple, consultez l'extrait de code suivant.
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &lat=47.62066 &lng=-122.34923 &radius=50"
Transmettre le panoId d'une image Street View
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
Réponse des métadonnées
Le code JSON suivant est un exemple de réponse de métadonnées type.
{
"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 liste suivante contient les définitions des champs du corps de la réponse.
panoId
- Identifiant unique de ce panorama. Ne vous fiez pas à la validité des ID Panorama au-delà d'une session utilisateur.
lat
,lng
- Coordonnées (latitude et longitude) du panorama. Ces valeurs peuvent être différentes des coordonnées que vous avez transmises dans la requête, car l'emplacement s'ajuste au panorama le plus proche.
imageHeight
,imageWidth
- Dimensions de l'image panoramique assemblée.
tileHeight
,tileWidth
- Dimensions d'une seule tuile de panorama.
heading
- Azimut de la boussole, mesuré en degrés, dans le sens des aiguilles d'une montre à partir du nord. Les angles sont renvoyés dans la plage [0,360], où 0 représente le nord.
tilt
- Inclinaison du panorama, mesurée en degrés du pôle sud du panorama à l'horizon. Les valeurs renvoyées sont comprises dans la plage [0, 180]. Une valeur de 90 degrés indique que l'horizon est déjà aligné sur l'équateur du panorama.
roll
- Rotation dans le sens des aiguilles d'une montre autour de la ligne de visée appliquée au panorama pour niveler l'horizon. Les valeurs renvoyées sont comprises dans la plage [0, 360].
imageryType
- Indique le type d'image. Les valeurs valides sont
indoor
etoutdoor
. date
- Date à laquelle l'image a été prise. Toutes les images ne comportent pas de données de date. Toutefois, lorsqu'il est disponible, ce champ contient une combinaison de l'année (AAAA) et du mois (MM). Par exemple: 2023-05 ou 2024.
copyright
- Texte des droits d'auteur que vous devez afficher en tant qu'attribution avec l'image Street View.
reportProblemLink
- Lien hypertexte que vos utilisateurs peuvent utiliser pour signaler les problèmes liés à cette carte Street View. Vous devez afficher ce lien hypertexte en bas à droite de l'image. Il doit inclure un texte de lien tel que "Signaler un problème avec cette image".
addressComponent
- Geocode structuré contenant des informations sur l'adresse du panorama. Pour en savoir plus, consultez la section Requêtes et réponses de géocodage dans la documentation de l'API Geocoding.
links
- Liste des ID de panoramas associés à celui-ci. Inclut également l'en-tête dans lequel se trouve le lien. Par exemple, si l'orientation est de 180 degrés, le panorama associé est situé au sud du panorama actuel. Notez qu'en raison de la nature éphémère des ID de panorama, vous ne devez pas vous y fier pour plus d'une session utilisateur.
Miniatures Street View
Vous pouvez demander des images Street View au format thumbnail
. Les miniatures sont des images non imbriquées dont la taille, l'orientation, l'inclinaison et le champ de vision sont définis par l'utilisateur.
Les images miniatures ont une résolution inférieure à celle des cartes et sont de taille de fichier plus petite. Pour envoyer une requête de vignette, envoyez une requête GET au point de terminaison thumbnail
, comme illustré dans le prototype de code suivant.
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"
Prenons l'exemple de code suivant, qui télécharge une vignette d'image Street View prise à Whistler, au Canada.
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
Paramètres obligatoires
panoId
- Identifiant unique de la vignette souhaitée. Vous pouvez obtenir des valeurs d'ID de panorama à partir du point de terminaison
panoIds
ou du point de terminaisonmetadata
, qui acceptent tous deux des coordonnées géographiques et renvoient lepanoId
approprié. session
- Un jeton de session valide.
key
- Votre clé API.
Paramètres facultatifs
height
- Spécifie la hauteur de la vignette en pixels, comprise entre 16 pixels et 250 pixels. Si vous ne spécifiez pas de hauteur, la valeur par défaut est la valeur maximale autorisée, soit 250 pixels. Si vous spécifiez une valeur hors plage, la vignette s'ajuste à la valeur valide la plus proche.
width
- Spécifie la largeur de la vignette en pixels, comprise entre 16 pixels et 600 pixels. Si vous ne spécifiez pas de largeur, la valeur par défaut est de 600 pixels, la valeur maximale autorisée. Si vous spécifiez une valeur hors plage, la vignette s'ajuste à la valeur valide la plus proche.
pitch
- Spécifie l'angle de la caméra sur l'axe vertical. Les valeurs valides sont comprises entre
-90
et90
(inclus). La valeur par défaut est 0. yaw
- Spécifie la direction de la caméra sur l'axe horizontal. Les valeurs valides sont comprises entre
-360
et360
(inclus). La valeur par défaut est 0. fov
- Spécifie le champ de vision horizontal, exprimé en degrés, avec une valeur maximale de 120. Lorsque vous travaillez avec une fenêtre d'affichage de taille fixe, comme pour une image Street View de taille définie, le champ de vision représente le zoom, où les valeurs plus faibles spécifient un niveau de zoom plus élevé. La valeur par défaut est 90.
Tuiles d'images Street View
Une fois que vous disposez d'un panoId
, vous pouvez demander une tuile d'image Street View. Les requêtes de carte sont des requêtes HTTPS GET. Voici un exemple.
curl "https://tile.googleapis.com/v1/streetview/tiles/z/x/y?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
Dans cet exemple de code, z
correspond au niveau de zoom, et x
et y
aux coordonnées de la tuile de Street View souhaitée. Les niveaux de zoom des panoramas Street View doivent se situer dans la plage [0,5], 0 représentant le champ de vision le plus large.
Niveau de zoom | Champ de vision approximatif |
---|---|
0 | 360° |
1 | 180° |
2 | 90° |
3 | 7 ° |
4 | 22,5 ° |
5 | 11,25 ° |
Réponses des tuiles Street View
Une requête de carte Street View réussie renvoie une image au format et à la taille que vous avez spécifiés dans votre réponse createSession
.
Au niveau de zoom 0, le panorama entier est redimensionné en une tuile de dimensions tileWidth
x tileHeight
. Étant donné que les panoramas sont plus grands dans la dimension X, la carte contient de l'espace vide dans la dimension Y:
Au niveau de zoom 5, le panorama en taille réelle est utilisé et divisé en tuiles.
Informations sur les droits d'auteur
Vous devez afficher des informations sur les droits d'auteur avec chaque panorama Street View. La chaîne à afficher peut varier d'un panorama à l'autre. Pour obtenir les informations sur les droits d'auteur, vous devez demander des métadonnées Street View, puis vous pouvez vous reporter au champ copyright
de la réponse. Pour en savoir plus, consultez la section Attributions de données.