Method: buildingInsights.findClosest

Menemukan bangunan yang sentroidnya paling dekat 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 ini menggunakan sintaksis gRPC Transcoding.

Parameter kueri

Parameter
location

object (LatLng)

Wajib. Bujur dan lintang dari tempat API mencari gedung terdekat yang diketahui.

requiredQuality

enum (ImageryQuality)

Opsional. Tingkat kualitas minimum yang diizinkan dalam hasil. Tidak ada hasil dengan kualitas yang lebih rendah dari ini yang akan ditampilkan. Tidak menentukannya sama dengan membatasi hanya pada kualitas TINGGI.

exactQualityRequired

boolean

Opsional. Apakah akan mewajibkan kualitas gambar yang tepat. Jika disetel ke false, kolom requiredQuality ditafsirkan sebagai kualitas minimum yang diperlukan, sehingga gambar berkualitas TINGGI dapat ditampilkan saat requiredQuality disetel ke SEDANG. Jika disetel ke benar (true), requiredQuality ditafsirkan sebagai kualitas yang diperlukan dan hanya gambar berkualitas MEDIUM yang ditampilkan jika requiredQuality disetel ke MEDIUM.

experiments[]

enum (Experiment)

Opsional. Menentukan fitur pra-GA yang akan diaktifkan.

Isi permintaan

Isi permintaan harus kosong.

Isi respons

Pesan respons untuk Solar.FindClosestBuildingInsights. Informasi tentang lokasi, dimensi, dan potensi tenaga surya sebuah 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 resource untuk gedung, dengan format buildings/{place_id}.

center

object (LatLng)

Titik di dekat tengah bangunan.

boundingBox

object (LatLngBox)

Kotak pembatas bangunan.

imageryDate

object (Date)

Tanggal saat gambar pokok diperoleh. Ini adalah perkiraan.

imageryProcessedDate

object (Date)

Saat pemrosesan selesai pada gambar ini.

postalCode

string

Kode pos (misalnya, Kode pos AS) yang berisi bangunan ini.

administrativeArea

string

Area administratif 1 (misalnya, di Amerika Serikat, negara bagian) yang berisi gedung ini. Misalnya, di Amerika Serikat, singkatan tersebut mungkin "MA" atau "CA".

statisticalArea

string

Area statistik (misalnya, Wilayah sensus AS) tempat bangunan ini berada.

regionCode

string

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

solarPotential

object (SolarPotential)

Potensi tenaga surya bangunan.

imageryQuality

enum (ImageryQuality)

Kualitas gambar yang digunakan untuk menghitung data untuk bangunan ini.

Cakupan otorisasi

Memerlukan cakupan OAuth berikut:

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

LatLngBox

Kotak pembatas dalam koordinat lintang/bujur.

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 di dalamnya ditentukan 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 array maksimum - yaitu, jumlah maksimum panel yang dapat dipasang di atap.

panelCapacityWatts

number

Kapasitas, dalam watt, panel yang digunakan dalam penghitungan.

panelHeightMeters

number

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

panelWidthMeters

number

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

panelLifetimeYears

integer

Perkiraan masa pakai panel surya, dalam tahun. Nilai ini digunakan dalam penghitungan keuangan.

maxArrayAreaMeters2

number

Ukuran, dalam meter persegi, array maksimum.

maxSunshineHoursPerYear

number

Jumlah maksimum jam sinar matahari yang diterima per tahun, di titik mana pun di atap. Jam sinar matahari adalah ukuran jumlah total insolasi (energi) yang diterima per tahun. 1 jam sinar matahari = 1 kWh per kW (dengan 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 listrik jaringan yang digantikan oleh listrik tenaga surya.

wholeRoofStats

object (SizeAndSunshineStats)

Total ukuran dan kuantil sinar matahari untuk bagian atap yang ditetapkan ke beberapa segmen atap. Meskipun namanya demikian, ini mungkin tidak mencakup 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 ini tidak dikarakterisasi dengan baik, perkiraan area atap tidak dapat diandalkan, tetapi perkiraan area tanah dapat diandalkan. Mungkin area atap seluruh bangunan yang lebih andal dapat diperoleh dengan menskalakan area atap dari wholeRoofStats berdasarkan rasio area tanah buildingStats dan wholeRoofStats.

roofSegmentStats[]

object (RoofSegmentSizeAndSunshineStats)

Kuantil ukuran dan sinar matahari untuk setiap segmen atap.

solarPanels[]

object (SolarPanel)

Setiap SolarPanel menjelaskan satu panel surya. Item ini tercantum dalam urutan penempatannya oleh algoritma tata letak panel. Urutan ini biasanya, meskipun tidak selalu, dalam urutan menurun produksi energi tahunan.

solarPanelConfigs[]

object (SolarPanelConfig)

Setiap SolarPanelConfig menjelaskan susunan panel surya yang berbeda di atap. Panel diurutkan berdasarkan jumlah panel yang meningkat. SolarPanelConfig dengan panelsCount=N didasarkan pada N panel pertama dalam daftar solarPanels. Kolom ini hanya diisi jika setidaknya 4 panel dapat dipasang di atap.

financialAnalyses[]

object (FinancialAnalysis)

FinancialAnalysis memberikan penghematan dari penggunaan panel surya dengan asumsi tagihan bulanan dan penyedia listrik tertentu. Akun tersebut diurutkan berdasarkan jumlah tagihan bulanan yang meningkat. Kolom ini akan kosong untuk bangunan di area yang tidak memiliki cukup informasi bagi Solar API untuk melakukan perhitungan keuangan.

SizeAndSunshineStats

Kuantil ukuran dan kecerahan atap, atau bagian atap.

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

number

Luas atap atau segmen atap, dalam m^2. Ini adalah area atap (dengan mempertimbangkan kemiringan), bukan area jejak di tanah.

sunshineQuantiles[]

number

Kuantil kecerahan pointwise di seluruh area. Jika ada N nilai di sini, ini mewakili (N-1)-iles. Misalnya, jika ada 5 nilai, maka nilai tersebut adalah kuartil (min, 25%, 50%, 75%, maks). Nilai dalam kWh/kW tahunan seperti maxSunshineHoursPerYear.

groundAreaMeters2

number

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

RoofSegmentSizeAndSunshineStats

Informasi tentang kuantil ukuran dan kecerahan segmen atap.

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

object (SizeAndSunshineStats)

Total ukuran 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 teoretis. 0 = sejajar dengan tanah, 90 = tegak lurus dengan tanah.

azimuthDegrees

number

Arah kompas yang ditunjuk segmen atap. 0 = Utara, 90 = Timur, 180 = Selatan. Untuk segmen atap "datar" (pitchDegrees sangat dekat dengan 0), azimut 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 kemiringan, azimut, dan lokasi tengah, hal ini sepenuhnya menentukan 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)

Pusat panel.

orientation

enum (SolarPanelOrientation)

Orientasi panel.

yearlyEnergyDcKwh

number

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

segmentIndex

integer

Indeks dalam roofSegmentStats dari RoofSegmentSizeAndSunshineStats yang sesuai dengan segmen atap tempat panel ini ditempatkan.

SolarPanelOrientation

Orientasi panel surya. Nilai ini harus ditafsirkan relatif terhadap azimut segmen atap tempat panel diletakkan.

Enum
SOLAR_PANEL_ORIENTATION_UNSPECIFIED Orientasi panel tidak diketahui.
LANDSCAPE Panel LANDSCAPE memiliki tepi panjang yang tegak lurus dengan arah azimut segmen atap tempat panel tersebut diletakkan.
PORTRAIT Panel PORTRAIT memiliki tepi panjang yang sejajar dengan arah azimut segmen atap tempat panel tersebut diletakkan.

SolarPanelConfig

SolarPanelConfig menjelaskan penempatan panel surya tertentu di atap.

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

integer

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

yearlyEnergyDcKwh

number

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

roofSegmentSummaries[]

object (RoofSegmentSummary)

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

RoofSegmentSummary

Informasi tentang segmen atap di bangunan, dengan sejumlah panel yang ditempatkan di atasnya.

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

integer

Jumlah total panel pada segmen ini.

yearlyEnergyDcKwh

number

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

pitchDegrees

number

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

azimuthDegrees

number

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

segmentIndex

integer

Indeks di 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 diasumsikan dalam analisis ini.

defaultBill

boolean

Apakah ini adalah ukuran tagihan yang dipilih untuk menjadi tagihan default untuk area tempat gedung ini berada. Tepat satu FinancialAnalysis di BuildingSolarPotential yang harus ditetapkan defaultBill-nya.

averageKwhPerMonth

number

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

financialDetails

object (FinancialDetails)

Informasi keuangan yang berlaku terlepas dari metode pembiayaan yang digunakan.

leasingSavings

object (LeasingSavings)

Biaya dan manfaat menyewa panel surya.

cashPurchaseSavings

object (CashPurchaseSavings)

Biaya dan manfaat membeli panel surya dengan uang tunai.

financedPurchaseSavings

object (FinancedPurchaseSavings)

Biaya dan manfaat membeli panel surya dengan membiayai pembelian.

panelConfigIndex

integer

Indeks dalam solarPanelConfigs tata letak panel surya yang optimal untuk ukuran tagihan ini. Nilai ini bisa berupa -1 yang menunjukkan bahwa tidak ada tata letak. Dalam hal ini, subpesan yang tersisa akan dihilangkan.

Uang

Mewakili jumlah uang dengan jenis mata uangnya.

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

string

Kode mata uang tiga huruf 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 unit nano (10^-9) dari jumlah. Nilainya harus antara -999.999.999 dan +999.999.999 inklusif. Jika units positif, nanos harus positif atau nol. Jika units nol, nanos dapat 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 tingkat yang lebih tinggi (misalnya, biaya di luar saku). Jumlah total uang adalah selama periode masa aktif yang ditentukan oleh kolom panelLifetimeYears di SolarPotential. Catatan: Biaya yang harus dibayar untuk membeli panel diberikan di kolom outOfPocketCost dalam 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

Perkiraan jumlah kWh AC yang akan dihasilkan panel surya pada tahun pertama.

remainingLifetimeUtilityBill

object (Money)

Tagihan listrik 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 panel (dengan atau tanpa pinjaman).

stateIncentive

object (Money)

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

utilityIncentive

object (Money)

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

lifetimeSrecTotal

object (Money)

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

costOfElectricityWithoutSolar

object (Money)

Total biaya listrik yang akan dibayarkan pengguna selama periode masa aktif jika mereka tidak memasang panel surya.

netMeteringAllowed

boolean

Apakah pengukuran bersih diizinkan atau tidak.

solarPercentage

number

Persentase (0-100) daya pengguna yang disuplai oleh tenaga surya. Valid untuk tahun pertama, tetapi kira-kira benar untuk tahun-tahun berikutnya.

percentageExportedToGrid

number

Persentase (0-100) produksi listrik energi 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 menyewa 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 di wilayah hukum ini (sewa tidak diizinkan di beberapa negara bagian). Jika kolom ini salah, nilai dalam pesan ini sebaiknya diabaikan.

leasesSupported

boolean

Apakah sewa didukung di wilayah hukum ini oleh mesin penghitung keuangan. Jika kolom ini salah, nilai dalam pesan ini sebaiknya diabaikan. Hal ini terlepas dari leasesAllowed: di beberapa area, sewa diizinkan, tetapi dengan persyaratan yang tidak ditangani oleh model keuangan.

annualLeasingCost

object (Money)

Perkiraan biaya sewa tahunan.

savings

object (SavingsOverTime)

Jumlah yang dihemat (atau tidak) selama periode masa aktif.

SavingsOverTime

Informasi keuangan yang dibagikan di antara berbagai metode pembiayaan.

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

object (Money)

Penghematan pada tahun pertama setelah pemasangan panel.

savingsYear20

object (Money)

Penghematan dalam dua puluh tahun pertama setelah pemasangan panel.

presentValueOfSavingsYear20

object (Money)

Dengan menggunakan tingkat diskonto yang diasumsikan, berapakah nilai kini penghematan kumulatif selama 20 tahun?

savingsLifetime

object (Money)

Penghematan selama masa pakai panel.

presentValueOfSavingsLifetime

object (Money)

Dengan menggunakan tingkat diskonto yang diasumsikan, berapakah nilai kini dari penghematan kumulatif selama masa pakai?

financiallyViable

boolean

Menunjukkan apakah skenario ini layak secara finansial. Akan bernilai salah (false) untuk skenario dengan kelayakan finansial yang buruk (misalnya, merugi).

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 dari dana pribadi. Berbeda dengan upfrontCost, yang merupakan insentif setelah pajak.

upfrontCost

object (Money)

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

rebateValue

object (Money)

Nilai semua potongan pajak.

savings

object (SavingsOverTime)

Jumlah yang dihemat (atau tidak) selama periode masa aktif.

paybackYears

number

Jumlah tahun hingga pengembalian investasi terjadi. Nilai negatif berarti pengembalian dana tidak pernah terjadi dalam periode masa berlaku.

FinancedPurchaseSavings

Biaya dan manfaat menggunakan 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 Federal Investment Tax Credit (ITC)).

loanInterestRate

number

Suku bunga pinjaman yang diasumsikan dalam serangkaian penghitungan ini.

savings

object (SavingsOverTime)

Jumlah yang dihemat (atau tidak) selama periode masa aktif.