Method: buildingInsights.findClosest

Mencari bangunan terdekat dengan titik kueri. Menampilkan error dengan kode NOT_FOUND jika tidak ada bangunan dalam jarak sekitar 50 m dari titik kueri.

Permintaan HTTP

GET https://solar.googleapis.com/v1/buildingInsights:findClosest

URL menggunakan sintaksis gRPC Transcoding.

Parameter kueri

Parameter
location

object (LatLng)

Wajib. Bujur dan lintang tempat API mencari bangunan terdekat yang diketahui.

requiredQuality

enum (ImageryQuality)

Opsional. Tingkat kualitas minimum yang diizinkan dalam hasil. Tidak ada hasil dengan kualitas yang lebih rendah daripada yang akan ditampilkan. Tidak menentukan ini sama dengan membatasi ke kualitas TINGGI saja.

Isi permintaan

Isi permintaan harus kosong.

Isi respons

Pesan respons untuk Solar.FindClosestBuildingInsights. Informasi tentang lokasi, dimensi, dan potensi tenaga surya suatu bangunan.

Jika berhasil, isi respons memuat data dengan struktur berikut:

Representasi JSON
{
  "name": string,
  "center": {
    object (LatLng)
  },
  "boundingBox": {
    object (LatLngBox)
  },
  "imageryDate": {
    object (Date)
  },
  "imageryProcessedDate": {
    object (Date)
  },
  "postalCode": string,
  "administrativeArea": string,
  "statisticalArea": string,
  "regionCode": string,
  "solarPotential": {
    object (SolarPotential)
  },
  "imageryQuality": enum (ImageryQuality)
}
Kolom
name

string

Nama fasilitas untuk gedung, dengan format building/<place ID>.

center

object (LatLng)

Titik di dekat pusat bangunan.

boundingBox

object (LatLngBox)

Kotak pembatas bangunan.

imageryDate

object (Date)

Tanggal citra yang mendasari diperoleh. Ini hanya perkiraan.

imageryProcessedDate

object (Date)

Ketika pemrosesan selesai pada citra ini.

postalCode

string

Kode pos (misalnya, kode pos AS) tempat bangunan ini berada.

administrativeArea

string

Wilayah administratif 1 (misalnya, di AS, negara bagian) yang berisi bangunan ini. Misalnya, di US, singkatannya mungkin "MA" atau "CA".

statisticalArea

string

Area statistik (mis., jalur sensus AS) tempat ini berada.

regionCode

string

Kode wilayah untuk negara (atau wilayah) tempat bangunan ini berada.

solarPotential

object (SolarPotential)

Potensi tenaga surya pada bangunan.

imageryQuality

enum (ImageryQuality)

Kualitas gambar yang digunakan untuk menghitung data untuk bangunan ini.

Cakupan otorisasi

Memerlukan cakupan OAuth berikut ini:

  • https://www.googleapis.com/auth/cloud-platform

LatLngBox

Kotak pembatas dalam koordinat lat/lng.

Representasi JSON
{
  "sw": {
    object (LatLng)
  },
  "ne": {
    object (LatLng)
  }
}
Kolom
sw

object (LatLng)

Sudut barat daya kotak.

ne

object (LatLng)

Sudut timur laut kotak.

SolarPotential

Informasi tentang potensi tenaga surya suatu bangunan. Sejumlah kolom dalam hal ini didefinisikan dalam istilah "panel". Kolom panelCapacityWatts, panelHeightMeters, dan panelWidthMeters menjelaskan parameter model panel yang digunakan dalam penghitungan ini.

Representasi JSON
{
  "maxArrayPanelsCount": integer,
  "panelCapacityWatts": number,
  "panelHeightMeters": number,
  "panelWidthMeters": number,
  "panelLifetimeYears": integer,
  "maxArrayAreaMeters2": number,
  "maxSunshineHoursPerYear": number,
  "carbonOffsetFactorKgPerMwh": number,
  "wholeRoofStats": {
    object (SizeAndSunshineStats)
  },
  "buildingStats": {
    object (SizeAndSunshineStats)
  },
  "roofSegmentStats": [
    {
      object (RoofSegmentSizeAndSunshineStats)
    }
  ],
  "solarPanels": [
    {
      object (SolarPanel)
    }
  ],
  "solarPanelConfigs": [
    {
      object (SolarPanelConfig)
    }
  ],
  "financialAnalyses": [
    {
      object (FinancialAnalysis)
    }
  ]
}
Kolom
maxArrayPanelsCount

integer

Ukuran susunan maksimum - yaitu, jumlah maksimum panel yang dapat diletakkan di atap.

panelCapacityWatts

number

Kapasitas, dalam watt, panel yang digunakan dalam penghitungan.

panelHeightMeters

number

Tinggi, dalam meter dalam orientasi potret, dari panel yang digunakan dalam penghitungan.

panelWidthMeters

number

Lebar panel yang digunakan dalam penghitungan, dalam meter dalam orientasi potret.

panelLifetimeYears

integer

Masa pakai yang diharapkan, dalam bertahun-tahun, panel surya. Ini digunakan dalam perhitungan keuangan.

maxArrayAreaMeters2

number

Ukuran array maksimum, dalam meter persegi.

maxSunshineHoursPerYear

number

Jumlah maksimum jam sinar matahari yang diterima per tahun, dari titik mana pun di atap. Jam sinar matahari adalah ukuran jumlah total insolasi (energi) yang diterima setiap tahun. 1 jam sinar matahari = 1 kWh per kW (di mana kW mengacu pada kW kapasitas dalam Kondisi Pengujian Standar).

carbonOffsetFactorKgPerMwh

number

Jumlah CO2 yang setara yang dihasilkan per MWh listrik jaringan. Ini adalah ukuran intensitas karbon jaringan listrik yang digantikan oleh listrik tenaga surya.

wholeRoofStats

object (SizeAndSunshineStats)

Ukuran total dan kuantil sinar matahari untuk bagian atap yang ditetapkan ke beberapa segmen atap. Meskipun dinamai demikian, ini mungkin tidak menyertakan seluruh bangunan. Lihat buildingStats.

buildingStats

object (SizeAndSunshineStats)

Kuantil ukuran dan sinar matahari untuk seluruh bangunan, termasuk bagian atap yang tidak ditetapkan ke beberapa segmen atap. Karena orientasi bagian-bagian tersebut tidak ditandai dengan baik, perkiraan luas atap tidak dapat diandalkan, tetapi perkiraan luas tanah dapat diandalkan. Mungkin seluruh area atap bangunan yang lebih andal dapat diperoleh dengan menskalakan area atap dari wholeRoofStats dengan rasio luas tanah buildingStats dan wholeRoofStats.

roofSegmentStats[]

object (RoofSegmentSizeAndSunshineStats)

Ukuran dan kuantil sinar matahari untuk setiap segmen atap.

solarPanels[]

object (SolarPanel)

Setiap SolarPanel mendeskripsikan satu panel surya. Daftar tersebut tercantum sesuai urutan penempatannya oleh algoritma tata letak panel. Hal ini biasanya, meskipun tidak selalu, menurunkan urutan produksi energi tahunan.

solarPanelConfigs[]

object (SolarPanelConfig)

Setiap SolarPanelConfig menjelaskan susunan panel surya yang berbeda di atap. Urutannya sesuai dengan jumlah panel. SolarPanelConfig dengan panelsCount=N didasarkan pada panel N pertama dalam daftar solarPanels. Kolom ini hanya diisi jika setidaknya 4 panel muat di atap.

financialAnalyses[]

object (FinancialAnalysis)

FinancialAnalysis memberikan penghematan tenaga surya dengan asumsi tagihan bulanan tertentu dan penyedia listrik tertentu. Mereka berada dalam urutan peningkatan jumlah tagihan bulanan. Kolom ini akan kosong untuk bangunan di area yang Solar API tidak memiliki cukup informasi untuk melakukan komputasi keuangan.

SizeAndSunshineStats

Kuantil ukuran dan sunyi atap, atau bagian dari atap.

Representasi JSON
{
  "areaMeters2": number,
  "sunshineQuantiles": [
    number
  ],
  "groundAreaMeters2": number
}
Kolom
areaMeters2

number

Luas segmen atap, dalam m^2. Ini adalah area atap (yang memperhitungkan kemiringan), bukan area jejak tanah.

sunshineQuantiles[]

number

Kuantile cahaya matahari yang tajam di seluruh area. Jika ada nilai N di sini, ini mewakili (N-1)-iles. Misalnya, jika ada 5 nilai, maka nilainya adalah kuartil (min, 25%, 50%, 75%, maks). Nilai dalam kWh/kW tahunan seperti maxSunshineHoursPerYear.

groundAreaMeters2

number

Area jejak tanah yang ditutupi oleh segmen atap atau atap, dalam m^2.

RoofSegmentSizeAndSunshineStats

Informasi tentang kuantil ukuran dan kuantil kegelapan segmen atap.

Representasi JSON
{
  "stats": {
    object (SizeAndSunshineStats)
  },
  "center": {
    object (LatLng)
  },
  "boundingBox": {
    object (LatLngBox)
  },
  "pitchDegrees": number,
  "azimuthDegrees": number,
  "planeHeightAtCenterMeters": number
}
Kolom
stats

object (SizeAndSunshineStats)

Ukuran total dan kuantil sinar matahari untuk segmen atap.

center

object (LatLng)

Titik di dekat bagian tengah segmen atap.

boundingBox

object (LatLngBox)

Kotak pembatas segmen atap.

pitchDegrees

number

Sudut segmen atap relatif terhadap bidang tanah secara teoritis. 0 = sejajar dengan permukaan tanah, 90 = tegak lurus dengan permukaan tanah

azimuthDegrees

number

Arah kompas yang ditunjuk oleh segmen atap. 0 = Utara, 90 = Timur, 180 = Selatan. Untuk segmen atap yang "datar" (pitchDegrees sangat dekat dengan 0), azimuth tidak ditentukan dengan baik, jadi agar konsisten, kami mendefinisikannya secara arbitrer menjadi 0 (Utara).

planeHeightAtCenterMeters

number

Tinggi bidang segmen atap, dalam meter di atas permukaan laut, pada titik yang ditentukan oleh center. Bersama dengan pitch, azimut, dan lokasi tengah, elemen ini sepenuhnya mendefinisikan bidang segmen atap.

SolarPanel

SolarPanel menjelaskan posisi, orientasi, dan produksi satu panel surya. Lihat kolom panelHeightMeters, panelWidthMeters, dan panelCapacityWatts di SolarPotential untuk mengetahui informasi tentang parameter panel.

Representasi JSON
{
  "center": {
    object (LatLng)
  },
  "orientation": enum (SolarPanelOrientation),
  "yearlyEnergyDcKwh": number,
  "segmentIndex": integer
}
Kolom
center

object (LatLng)

Bagian tengah panel.

orientation

enum (SolarPanelOrientation)

Orientasi panel.

yearlyEnergyDcKwh

number

Berapa banyak energi sinar matahari yang ditangkap tata letak ini selama setahun, dalam DC kWh.

segmentIndex

integer

Indeks di roofSegmentStats pada RoofSegmentSizeAndSunshineStats yang sesuai dengan segmen atap tempat panel ini berada.

SolarPanelOrientation

Orientasi panel surya. Ini harus ditafsirkan secara relatif terhadap azimut segmen atap tempat panel ditempatkan.

Enum
SOLAR_PANEL_ORIENTATION_UNSPECIFIED Tidak ada orientasi panel yang diketahui.
LANDSCAPE Panel LANDSCAPE memiliki tepi panjangnya yang tegak lurus dengan arah azimut segmen atap tempat panel berada.
PORTRAIT Panel PORTRAIT memiliki tepi panjang yang sejajar dengan arah azimuth segmen atap tempat panel berada.

SolarPanelConfig

SolarPanelConfig menjelaskan penempatan tertentu dari panel surya di atap.

Representasi JSON
{
  "panelsCount": integer,
  "yearlyEnergyDcKwh": number,
  "roofSegmentSummaries": [
    {
      object (RoofSegmentSummary)
    }
  ]
}
Kolom
panelsCount

integer

Jumlah total panel. Perhatikan bahwa ini redundan untuk (jumlah) kolom yang sesuai di roofSegmentSummaries.

yearlyEnergyDcKwh

number

Berapa banyak energi sinar matahari yang ditangkap tata letak ini selama setahun, dalam DC kWh, dengan asumsi panel yang dijelaskan di atas.

roofSegmentSummaries[]

object (RoofSegmentSummary)

Informasi tentang produksi setiap segmen atap yang memiliki setidaknya satu panel dalam tata letak ini. roofSegmentSummaries[i] menjelaskan segmen atap ke-i, termasuk ukuran, produksi yang diharapkan, dan orientasi.

RoofSegmentSummary

Informasi tentang segmen atap pada bangunan, dengan beberapa panel yang diletakkan di atasnya.

Representasi JSON
{
  "panelsCount": integer,
  "yearlyEnergyDcKwh": number,
  "pitchDegrees": number,
  "azimuthDegrees": number,
  "segmentIndex": integer
}
Kolom
panelsCount

integer

Jumlah total panel di segmen ini.

yearlyEnergyDcKwh

number

Berapa banyak energi sinar matahari yang ditangkap bagian tata letak ini selama setahun, dalam DC kWh, dengan asumsi panel yang dijelaskan di atas.

pitchDegrees

number

Sudut segmen atap relatif terhadap bidang tanah secara teoritis. 0 = sejajar dengan permukaan tanah, 90 = tegak lurus dengan permukaan tanah

azimuthDegrees

number

Arah kompas yang ditunjuk oleh segmen atap. 0 = Utara, 90 = Timur, 180 = Selatan. Untuk segmen atap yang "datar" (pitchDegrees sangat dekat dengan 0), azimuth tidak ditentukan dengan baik, jadi agar konsisten, kami mendefinisikannya secara arbitrer menjadi 0 (Utara).

segmentIndex

integer

Indeks dalam roofSegmentStats dari RoofSegmentSizeAndSunshineStats yang sesuai.

FinancialAnalysis

Analisis biaya dan manfaat tata letak panel surya yang optimal untuk ukuran tagihan listrik tertentu.

Representasi JSON
{
  "monthlyBill": {
    object (Money)
  },
  "defaultBill": boolean,
  "averageKwhPerMonth": number,
  "financialDetails": {
    object (FinancialDetails)
  },
  "leasingSavings": {
    object (LeasingSavings)
  },
  "cashPurchaseSavings": {
    object (CashPurchaseSavings)
  },
  "financedPurchaseSavings": {
    object (FinancedPurchaseSavings)
  },
  "panelConfigIndex": integer
}
Kolom
monthlyBill

object (Money)

Tagihan listrik bulanan yang mengasumsikan analisis ini.

defaultBill

boolean

Apakah ini adalah ukuran paruh yang dipilih sebagai tagihan default untuk area tempat bangunan ini berada. Tepat satu FinancialAnalysis di BuildingSolarPotential harus memiliki defaultBill yang ditetapkan.

averageKwhPerMonth

number

Jumlah listrik yang digunakan rumah dalam sebulan rata-rata, berdasarkan ukuran tagihan dan tarif listrik lokal.

financialDetails

object (FinancialDetails)

Informasi keuangan yang berlaku terlepas dari metode pendanaan yang digunakan.

leasingSavings

object (LeasingSavings)

Biaya dan manfaat sewa panel surya.

cashPurchaseSavings

object (CashPurchaseSavings)

Biaya dan manfaat pembelian panel surya dengan uang tunai.

financedPurchaseSavings

object (FinancedPurchaseSavings)

Biaya dan manfaat pembelian panel surya dengan membiayai pembelian.

panelConfigIndex

integer

Indeks dalam solarPanelConfigs dari tata letak panel surya optimal untuk ukuran paruh ini. Nilainya dapat berupa -1 yang menunjukkan bahwa tidak ada tata letak. Dalam hal ini, subpesan lainnya akan dihilangkan.

Uang

Menyatakan jumlah uang dengan jenis mata uangnya.

Representasi JSON
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
Kolom
currencyCode

string

Tiga huruf kode mata uang yang ditentukan dalam ISO 4217.

units

string (int64 format)

Seluruh unit jumlahnya. Misalnya, jika currencyCode adalah "USD", maka 1 unit adalah satu dolar AS.

nanos

integer

Jumlah satuan nano (10^-9) dari jumlahnya. Nilai harus antara -999.999.999 dan +999.999.999 inklusif. Jika units positif, nanos harus positif atau nol. Jika units nol, nanos bisa positif, nol, atau negatif. Jika units negatif, nanos harus negatif atau nol. Misalnya,$-1,75 direpresentasikan sebagai units=-1 dan nanos=-750.000.000.

FinancialDetails

Detail analisis keuangan. Beberapa detail ini sudah disimpan di level yang lebih tinggi (misalnya, tanpa biaya). Jumlah total uang selama periode sepanjang waktu yang ditentukan oleh kolom panelLifetimeYears di SolarPotential. Catatan: Biaya langsung untuk membeli panel diberikan di kolom outOfPocketCost di CashPurchaseSavings.

Representasi JSON
{
  "initialAcKwhPerYear": number,
  "remainingLifetimeUtilityBill": {
    object (Money)
  },
  "federalIncentive": {
    object (Money)
  },
  "stateIncentive": {
    object (Money)
  },
  "utilityIncentive": {
    object (Money)
  },
  "lifetimeSrecTotal": {
    object (Money)
  },
  "costOfElectricityWithoutSolar": {
    object (Money)
  },
  "netMeteringAllowed": boolean,
  "solarPercentage": number,
  "percentageExportedToGrid": number
}
Kolom
initialAcKwhPerYear

number

Berapa kWh AC yang kami perkirakan akan dihasilkan panel surya pada tahun pertamanya.

remainingLifetimeUtilityBill

object (Money)

Tagihan utilitas untuk listrik yang tidak dihasilkan oleh tenaga surya, selama masa pakai panel.

federalIncentive

object (Money)

Jumlah uang yang tersedia dari insentif federal; ini berlaku jika pengguna membeli (dengan atau tanpa pinjaman) panel.

stateIncentive

object (Money)

Jumlah uang yang tersedia dari insentif negara; ini berlaku jika pengguna membeli (dengan atau tanpa pinjaman) panel.

utilityIncentive

object (Money)

Jumlah uang yang tersedia dari insentif utilitas; ini berlaku jika pengguna membeli (dengan atau tanpa pinjaman) panel.

lifetimeSrecTotal

object (Money)

Jumlah uang yang akan diterima pengguna dari Kredit Energi Terbarukan Tenaga Surya selama masa pakai panel; ini berlaku jika pengguna membeli (dengan atau tanpa pinjaman) panel.

costOfElectricityWithoutSolar

object (Money)

Total biaya listrik yang akan dibayar pengguna selama periode seumur hidup jika mereka tidak memasang tenaga surya.

netMeteringAllowed

boolean

Apakah pengukuran bersih diizinkan.

solarPercentage

number

Persentase (0-100) daya listrik pengguna yang disuplai oleh tenaga surya. Berlaku untuk tahun pertama, tetapi kurang lebih benar untuk tahun yang akan datang.

percentageExportedToGrid

number

Persentase (0-100) produksi listrik tenaga surya yang kami asumsikan diekspor ke jaringan listrik, berdasarkan produksi kuartal pertama. Hal ini memengaruhi penghitungan jika pengukuran bersih tidak diizinkan.

LeasingSavings

Biaya dan manfaat penyewaan konfigurasi panel surya tertentu dengan penggunaan listrik tertentu.

Representasi JSON
{
  "leasesAllowed": boolean,
  "leasesSupported": boolean,
  "annualLeasingCost": {
    object (Money)
  },
  "savings": {
    object (SavingsOverTime)
  }
}
Kolom
leasesAllowed

boolean

Apakah sewa diizinkan dalam hukum ini (sewa tidak diizinkan di beberapa negara bagian). Jika kolom ini disetel ke salah (false), nilai dalam pesan ini mungkin harus diabaikan.

leasesSupported

boolean

Apakah sewa didukung dalam hukum ini oleh mesin hitung keuangan. Jika kolom ini disetel ke salah (false), nilai dalam pesan ini mungkin harus diabaikan. Hal ini tidak bergantung pada leasesAllowed: di beberapa area, sewa diizinkan, tetapi dalam kondisi yang tidak ditangani oleh model keuangan.

annualLeasingCost

object (Money)

Perkiraan biaya sewa tahunan.

savings

object (SavingsOverTime)

Berapa banyak yang dihemat (atau tidak) selama periode seumur hidup.

SavingsOverTime

Informasi keuangan yang dibagikan di antara berbagai metode pendanaan.

Representasi JSON
{
  "savingsYear1": {
    object (Money)
  },
  "savingsYear20": {
    object (Money)
  },
  "presentValueOfSavingsYear20": {
    object (Money)
  },
  "savingsLifetime": {
    object (Money)
  },
  "presentValueOfSavingsLifetime": {
    object (Money)
  },
  "financiallyViable": boolean
}
Kolom
savingsYear1

object (Money)

Penghematan dalam tahun pertama setelah pemasangan panel.

savingsYear20

object (Money)

Penghematan dalam dua puluh tahun pertama setelah pemasangan panel.

presentValueOfSavingsYear20

object (Money)

Dengan menggunakan asumsi tarif diskon, berapa nilai sekarang dari penghematan kumulatif 20 tahun?

savingsLifetime

object (Money)

Penghematan sepanjang waktu panel.

presentValueOfSavingsLifetime

object (Money)

Dengan menggunakan asumsi tarif diskon, berapa nilai sekarang dari penghematan seumur hidup kumulatif?

financiallyViable

boolean

Menunjukkan apakah skenario ini layak secara finansial. Akan salah untuk skenario dengan kelayakan finansial yang buruk (misalnya, kehilangan uang).

CashPurchaseSavings

Biaya dan manfaat pembelian langsung konfigurasi panel surya tertentu dengan penggunaan listrik tertentu.

Representasi JSON
{
  "outOfPocketCost": {
    object (Money)
  },
  "upfrontCost": {
    object (Money)
  },
  "rebateValue": {
    object (Money)
  },
  "savings": {
    object (SavingsOverTime)
  },
  "paybackYears": number
}
Kolom
outOfPocketCost

object (Money)

Biaya awal sebelum insentif pajak: jumlah yang harus dibayar sendiri. Berbeda dengan upfrontCost, yang setelah program insentif pajak.

upfrontCost

object (Money)

Biaya awal setelah insentif pajak: ini adalah jumlah yang harus dibayarkan selama tahun pertama. Berbeda dengan outOfPocketCost, sebelum insentif pajak.

rebateValue

object (Money)

Nilai semua potongan pajak.

savings

object (SavingsOverTime)

Berapa banyak yang dihemat (atau tidak) selama periode seumur hidup.

paybackYears

number

Jumlah tahun hingga pengembalian dilakukan. Nilai negatif berarti pengembalian tidak pernah terjadi dalam periode seumur hidup.

FinancedPurchaseSavings

Biaya dan manfaat penggunaan pinjaman untuk membeli konfigurasi panel surya tertentu dengan penggunaan listrik tertentu.

Representasi JSON
{
  "annualLoanPayment": {
    object (Money)
  },
  "rebateValue": {
    object (Money)
  },
  "loanInterestRate": number,
  "savings": {
    object (SavingsOverTime)
  }
}
Kolom
annualLoanPayment

object (Money)

Pembayaran pinjaman tahunan.

rebateValue

object (Money)

Nilai semua potongan pajak (termasuk Kredit Pajak Investasi Federal (ITC)).

loanInterestRate

number

Suku bunga pinjaman yang diasumsikan dalam rangkaian penghitungan ini.

savings

object (SavingsOverTime)

Berapa banyak yang dihemat (atau tidak) selama periode seumur hidup.