L'API Solar sta lanciando una funzionalità sperimentale che estende la copertura a regioni precedentemente non supportate, in base a modelli di machine learning applicati a immagini satellitari. Per accedere ai dati solari sperimentali, imposta il parametro experiments
su EXPANDED_COVERAGE
e il parametro requiredQuality
su BASE
.
I dati sperimentali sono disponibili per le richieste
buildingInsights
e dataLayers
. Le sezioni seguenti descrivono richieste e risposte di esempio.
Approfondimenti sugli edifici
L'endpoint buildingInsights fornisce informazioni su posizione, dimensioni e potenziale solare di un edificio. Per richiedere approfondimenti sull'edificio, invia una richiesta HTTP GET a:
https://solar.googleapis.com/v1/buildingInsights:findClosest?key=YOUR_API_KEY
Includi i parametri dell'URL della richiesta che specificano le coordinate di latitudine e longitudine della posizione e il livello di qualità minimo richiesto consentito nei risultati.
Il seguente esempio richiede informazioni sugli approfondimenti sugli edifici per la posizione con coordinate di latitudine = 4,655719 e longitudine = -74,128971. Per richiedere dati sperimentali, imposta i seguenti parametri:
requiredQuality
=BASE
experiments
=EXPANDED_COVERAGE
curl -X GET "https://solar.googleapis.com/v1/buildingInsights:findClosest?location.latitude=4.655719& location.longitude=-74.128971& requiredQuality=BASE& experiments=EXPANDED_COVERAGE& key=YOUR_API_KEY"
Questa richiesta produce una risposta JSON nel formato:
{ "name": "buildings/ChIJW2GaKXecP44RaeGtGpQtk4Q", "center": { "latitude": 4.6557664, "longitude": -74.1289303 }, "imageryDate": { "year": 2024, "month": 2, "day": 19 }, "regionCode": "CO", "solarPotential": { "maxArrayPanelsCount": 351, "maxArrayAreaMeters2": 689.20776, "maxSunshineHoursPerYear": 1631.7008, "carbonOffsetFactorKgPerMwh": 122.99986, "wholeRoofStats": { "areaMeters2": 1078.406, "sunshineQuantiles": [ 562.9261, 930.9767, 1165.876, 1221.8761, 1333.0057, 1485.7363, 1563.2417, 1593.266, 1610.5652, 1621.5986, 1640.6102 ], "groundAreaMeters2": 1050.76 }, "roofSegmentStats": [ { "pitchDegrees": 38.58091, "azimuthDegrees": 41.91368, "stats": { "areaMeters2": 23.153826, "sunshineQuantiles": [ 582.9132, 612.5797, 673.3435, 762.14233, 899.41864, 1031.1329, 1103.8121, 1135.5204, 1150.2969, 1158.215, 1170.5475 ], "groundAreaMeters2": 18.1 }, "center": { "latitude": 4.6554996, "longitude": -74.128966699999992 }, "boundingBox": { "sw": { "latitude": 4.655472, "longitude": -74.1290005 }, "ne": { "latitude": 4.6555371999999995, "longitude": -74.1289328 } }, "planeHeightAtCenterMeters": 2552.031 }, /.../ ] "solarPanelConfigs": [ { "panelsCount": 4, "yearlyEnergyDcKwh": 2609.5698, "roofSegmentSummaries": [ { "pitchDegrees": 10.260736, "azimuthDegrees": 131.22626, "panelsCount": 1, "yearlyEnergyDcKwh": 652.84863, "segmentIndex": 6 }, { "pitchDegrees": 8.649131, "azimuthDegrees": 145.79407, "panelsCount": 1, "yearlyEnergyDcKwh": 652.3829, "segmentIndex": 11 }, { "pitchDegrees": 5.061984, "azimuthDegrees": 12.690001, "panelsCount": 2, "yearlyEnergyDcKwh": 1304.3383, "segmentIndex": 12 } ] }, /.../ ] "panelCapacityWatts": 400, "panelHeightMeters": 1.879, "panelWidthMeters": 1.045, "panelLifetimeYears": 20, "buildingStats": { "areaMeters2": 1143.155, "sunshineQuantiles": [ 557, 883.26263, 1146.4794, 1209.3063, 1278.1102, 1465.2921, 1557.7494, 1590.9565, 1609.4994, 1621.1909, 1640.6102 ], "groundAreaMeters2": 1089.35 }, "solarPanels": [ { "center": { "latitude": 4.6560077, "longitude": -74.12885 }, "orientation": "PORTRAIT", "yearlyEnergyDcKwh": 653.14404, "segmentIndex": 12 }, /.../ ] }, "boundingBox": { "sw": { "latitude": 4.6554716, "longitude": -74.129243899999992 }, "ne": { "latitude": 4.6560513, "longitude": -74.128623900000008 } }, "imageryQuality": "BASE", "imageryProcessedDate": { "year": 2024, "month": 7, "day": 21 } }
Livelli di dati
L'endpoint dataLayers fornisce informazioni solari dettagliate per una regione che circonda una località specificata. L'endpoint restituisce 17 file TIFF scaricabili, tra cui un modello digitale di superficie (DSM), un livello composito RGB (immagini aeree) e un livello maschera che identifica i confini dell'analisi, tra gli altri.
L'esempio seguente mostra l'URL di una richiesta REST al metodo dataLayers
:
https://solar.googleapis.com/v1/dataLayers:get?parameters
Includi i parametri dell'URL della richiesta che specificano quanto segue:
- Coordinate di latitudine e longitudine della posizione
- Il raggio (in metri) della regione che circonda la località
- La qualità minima consentita nei risultati
Per richiedere i dati sperimentali, imposta i seguenti parametri:
requiredQuality
=BASE
experiments
=EXPANDED_COVERAGE
curl -X GET "https://solar.googleapis.com/v1/dataLayers:get?location.latitude=4.655719& location.longitude=-74.128971& radiusMeters=100& requiredQuality=BASE &experiments=EXPANDED_COVERAGE &key=YOUR_API_KEY"
Questa richiesta produce una risposta JSON nel formato:
{ "imageryDate": { "year": 2024, "month": 2, "day": 19 }, "imageryProcessedDate": { "year": 2024, "month": 7, "day": 21 }, "dsmUrl": "https://solar.googleapis.com/v1/geoTiff:get?id=YTYwZDUzYTMxNjVmMjFlYWNjZmMyYzcxYTNhNWQ2OWItZTM0ZWRjZTQwNTZjZWUyYTNiNWE2ZjU5OTVkYWJjNTM6RFNNOkJBU0U", "rgbUrl": "https://solar.googleapis.com/v1/geoTiff:get?id=MWU2NmYxNmU3M2JlYmY5NDJkZmVmMjQ0NDViMjFjYTgtZWVhYjRiN2U0YWJlNzM2Nzk1MzUxZTQ4YTgxNjZiM2M6UkdCOkJBU0U", "maskUrl": "https://solar.googleapis.com/v1/geoTiff:get?id=ZGU4NzhmNDg0YjE2OGYwYTdjN2EyYmVlMDQxYTM5NDMtNDk2NGQwNzBhMzAwYzBkYTEwZDNmYjgzNTk4ODkyY2I6TUFTSzpCQVNF", "annualFluxUrl": "https://solar.googleapis.com/v1/geoTiff:get?id=NmRiZDQ0NDFkNWE5NDU2Nzc2ZTU1Mzg0MDY0YzFhMWMtMDg2ZDMyZjVkYTMzMDhiZmI5NzM1MzY0YmRjZmFiM2I6QU5OVUFMX0ZMVVg6QkFTRQ", "monthlyFluxUrl": "https://solar.googleapis.com/v1/geoTiff:get?id=NTAyMDJkMTVmMjJiZGYyOTNiMDFhMWEzNDJkZjAwNTctZDRjMjY3ZjU1YjQ2ZjE4ZTNkNjE1YmU5NTlmOThlZjM6TU9OVEhMWV9GTFVYOkJBU0U", "hourlyShadeUrls": [ "https://solar.googleapis.com/v1/geoTiff:get?id=NWNkZmM0NTcwYTE5ODQzMmI0MmQ1NDM4NzY4MTc5MzEtOWE0MTBjNDkwM2IxZjA0MmI1ZTNmNTg1NTY0MTNkZjI6SE9VUkxZX1NIQURFOkJBU0U", "https://solar.googleapis.com/v1/geoTiff:get?id=Y2YwNDY4MzQ1YzhkMjBlZjU5M2NiNDRmMmM0ODRiNTUtNjMwOWM2NDBjZmI5OTdkMDA3ZGQzOWY2YmI1ZTk2NWM6SE9VUkxZX1NIQURFOkJBU0U", /.../ ], "imageryQuality": "BASE" }
Per inviare una richiesta all'URL nella risposta, aggiungi la chiave API all'URL:
curl -X GET "https://solar.googleapis.com/v1/geoTiff:get?id=YTYwZDUzYTMxNjVmMjFlYWNjZmMyYzcxYTNhNWQ2OWItZTM0ZWRjZTQwNTZjZWUyYTNiNWE2ZjU5OTVkYWJjNTM6RFNNOkJBU0U&key=YOUR_API_KEY"
Ad eccezione del livello RGB, tutti i file TIFF verranno visualizzati come immagini vuote nelle applicazioni di visualizzazione delle immagini. Per visualizzare i file TIFF scaricati, importali in un software di applicazione di mappatura, come QGIS.
La specifica completa di questa richiesta e risposta è disponibile nella documentazione di riferimento.