Method: buildingInsights.findClosest

Lokalizuje budynek, którego środek ciężkości znajduje się najbliżej punktu zapytania. Jeśli w promieniu około 50 m od punktu zapytania nie ma żadnych budynków, zwraca błąd z kodem NOT_FOUND.

Żądanie HTTP

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

Adres URL używa składni transkodowania gRPC.

Parametry zapytania

Parametry
location

object (LatLng)

Wymagane. Długość i szerokość geograficzna, na podstawie których interfejs API wyszukuje najbliższy znany budynek.

requiredQuality

enum (ImageryQuality)

Opcjonalnie: Minimalny poziom jakości dozwolony w wynikach. Nie zostaną zwrócone żadne wyniki o niższej jakości. Jeśli nie określisz tej wartości, będzie to równoznaczne z ograniczeniem tylko do WYSOKIEJ jakości.

exactQualityRequired

boolean

Opcjonalnie: Określa, czy wymagana jest dokładna jakość zdjęć. Jeśli ma wartość false, pole requiredQuality jest interpretowane jako minimalna wymagana jakość, co oznacza, że gdy pole requiredQuality ma wartość MEDIUM, mogą być zwracane zdjęcia o jakości HIGH. Jeśli ma wartość „true”, parametr requiredQuality jest interpretowany jako dokładna wymagana jakość, a jeśli parametr requiredQuality ma wartość MEDIUM, zwracane są tylko zdjęcia o jakości MEDIUM.

experiments[]

enum (Experiment)

Opcjonalnie: Określa eksperymenty przed GA, które mają zostać włączone. Żądania korzystające z tego pola są klasyfikowane jako oferta przed GA zgodnie ze szczegółowymi warunkami korzystania z usługi Google Maps Platform. Więcej informacji znajdziesz w opisach etapu uruchamiania.

additionalInsights[]

enum (AdditionalInsights)

Opcjonalnie: Lista additionalInsights, które mają być uwzględnione w odpowiedzi.

Treść żądania

Treść żądania musi być pusta.

Treść odpowiedzi

Wiadomość z odpowiedzią dla: Solar.FindClosestBuildingInsights. Informacje o lokalizacji, wymiarach i potencjale produkcji energii słonecznej budynku.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis 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),
  "detectedArrays": {
    object (DetectedArrays)
  }
}
Pola
name

string

Nazwa zasobu budynku w formacie buildings/{place_id}.

center

object (LatLng)

punkt w pobliżu środka budynku,

boundingBox

object (LatLngBox)

Ramka ograniczająca budynku.

imageryDate

object (Date)

Data pozyskania zdjęć. Jest to wartość przybliżona.

imageryProcessedDate

object (Date)

Kiedy zakończono przetwarzanie tych zdjęć.

postalCode

string

Kod pocztowy (np. kod pocztowy w USA), w którym znajduje się ten budynek.

administrativeArea

string

Region administracyjny 1 (np. w Stanach Zjednoczonych – stan), w którym znajduje się ten budynek. Na przykład w Stanach Zjednoczonych skrót może mieć postać „MA” lub „CA”.

statisticalArea

string

Obszar statystyczny (np. okręg spisowy w USA), w którym znajduje się ten budynek.

regionCode

string

Kod regionu kraju (lub regionu), w którym znajduje się ten budynek.

solarPotential

object (SolarPotential)

Potencjał paneli słonecznych na budynku.

imageryQuality

enum (ImageryQuality)

Jakość zdjęć użytych do obliczenia danych dotyczących tego budynku.

detectedArrays

object (DetectedArrays)

Panele słoneczne wykryte na budynku. To pole jest wypełniane tylko wtedy, gdy w parametrze FindClosestBuildingInsightsRequest.additional_insights żądania uwzględniono DETECTED_ARRAYS.

Zakresy autoryzacji

Wymaga następującego zakresu OAuth:

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

AdditionalInsights

Dodatkowe informacje o budynku, takie jak geometria dachu i panele słoneczne, które mogą być zwracane w BuildingInsights.

Wartości w polu enum
ADDITIONAL_INSIGHTS_UNSPECIFIED Wartość domyślna. Zostaną zwrócone domyślne dane BuildingInsights.
DETECTED_ARRAYS

Określa, czy odpowiedź będzie zawierać wykryte tablice.

Jeśli określisz tę wartość, pole detectedArrays zostanie wypełnione w odpowiedzi.

LatLngBox

Ramka ograniczająca we współrzędnych szerokości i długości geograficznej.

Zapis JSON
{
  "sw": {
    object (LatLng)
  },
  "ne": {
    object (LatLng)
  }
}
Pola
sw

object (LatLng)

Południowo-zachodni róg pola.

ne

object (LatLng)

Północno-wschodni róg pola.

SolarPotential

Informacje o potencjale budynku związanym z energią słoneczną. Wiele pól w tym pliku jest zdefiniowanych w odniesieniu do „paneli”. Pola panelCapacityWatts, panelHeightMeters i panelWidthMeters opisują parametry modelu panelu użytego w tych obliczeniach.

Zapis 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)
    }
  ]
}
Pola
maxArrayPanelsCount

integer

Rozmiar maksymalnego układu, czyli maksymalna liczba paneli, które można zmieścić na dachu.

panelCapacityWatts

number

Moc panelu użytego w obliczeniach (w watach).

panelHeightMeters

number

Wysokość panelu użytego w obliczeniach w metrach w orientacji pionowej.

panelWidthMeters

number

Szerokość panelu użytego w obliczeniach w metrach w orientacji pionowej.

panelLifetimeYears

integer

Oczekiwany okres użytkowania paneli słonecznych w latach. Służy do obliczeń finansowych.

maxArrayAreaMeters2

number

Rozmiar maksymalnego układu w metrach kwadratowych.

maxSunshineHoursPerYear

number

Maksymalna liczba godzin nasłonecznienia w ciągu roku w dowolnym punkcie dachu. Liczba godzin słonecznych to miara łącznej ilości energii słonecznej otrzymywanej w ciągu roku. 1 godzina nasłonecznienia = 1 kWh na kW (gdzie kW oznacza kW mocy w standardowych warunkach testowych).

carbonOffsetFactorKgPerMwh

number

Równoważna ilość CO2 wytwarzana na MWh energii elektrycznej z sieci. Jest to miara wskaźnika emisji dwutlenku węgla dla energii elektrycznej z sieci zastąpionej energią słoneczną.

wholeRoofStats

object (SizeAndSunshineStats)

Łączny rozmiar i kwantyle światła słonecznego dla części dachu, która została przypisana do jakiegoś segmentu dachu. Pomimo nazwy może nie obejmować całego budynku. Zobacz buildingStats.

buildingStats

object (SizeAndSunshineStats)

Kwantyle rozmiaru i nasłonecznienia dla całego budynku, w tym części dachu, które nie zostały przypisane do żadnego segmentu dachu. Ponieważ orientacja tych części nie jest dobrze scharakteryzowana, szacunkowa powierzchnia dachu jest niewiarygodna, ale szacunkowa powierzchnia gruntu jest wiarygodna. Możliwe, że bardziej wiarygodną powierzchnię dachu całego budynku można uzyskać, skalując powierzchnię dachu z wholeRoofStats według stosunku powierzchni gruntu buildingStats i wholeRoofStats.

roofSegmentStats[]

object (RoofSegmentSizeAndSunshineStats)

Kwantyle rozmiaru i nasłonecznienia dla każdego segmentu dachu.

solarPanels[]

object (SolarPanel)

Każdy obiekt SolarPanel opisuje pojedynczy panel słoneczny. Są one wymienione w kolejności, w jakiej zostały umieszczone przez algorytm układu panelu. Zwykle, choć nie zawsze, są one uporządkowane według malejącej rocznej produkcji energii.

solarPanelConfigs[]

object (SolarPanelConfig)

Każdy SolarPanelConfig opisuje inny układ paneli słonecznych na dachu. Są one uporządkowane według rosnącej liczby paneli. SolarPanelConfig z panelsCount=N jest oparty na pierwszych N panelach na liście solarPanels. To pole jest wypełniane tylko wtedy, gdy na dachu można zmieścić co najmniej 4 panele.

financialAnalyses[]

object (FinancialAnalysis)

FinancialAnalysis podaje oszczędności wynikające z przejścia na energię słoneczną przy założeniu danego miesięcznego rachunku i danego dostawcy energii elektrycznej. Są one uporządkowane według rosnącej kwoty miesięcznego rachunku. To pole będzie puste w przypadku budynków na obszarach, na których Solar API nie ma wystarczających informacji do przeprowadzenia obliczeń finansowych.

SizeAndSunshineStats

Kwantyle rozmiaru i nasłonecznienia dachu lub jego części.

Zapis JSON
{
  "areaMeters2": number,
  "sunshineQuantiles": [
    number
  ],
  "groundAreaMeters2": number
}
Pola
areaMeters2

number

Powierzchnia dachu lub jego segmentu w m^2. Jest to powierzchnia dachu (uwzględniająca nachylenie), a nie powierzchnia gruntu.

sunshineQuantiles[]

number

Kwantyle punktowego nasłonecznienia na danym obszarze. Jeśli jest tu N wartości, reprezentuje to (N-1)-yle. Jeśli na przykład jest 5 wartości, będą to kwartyle (min., 25%, 50%, 75%, maks.). Wartości są podawane w kWh/kW rocznie, np. maxSunshineHoursPerYear.

groundAreaMeters2

number

Powierzchnia gruntu pokryta dachem lub segmentem dachu w m².

RoofSegmentSizeAndSunshineStats

Informacje o rozmiarze i kwantylach nasłonecznienia segmentu dachu.

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

object (SizeAndSunshineStats)

Łączny rozmiar i kwantyle nasłonecznienia dla segmentu dachu.

center

object (LatLng)

Punkt w pobliżu środka segmentu dachu.

boundingBox

object (LatLngBox)

Ramka ograniczająca segmentu dachu.

pitchDegrees

number

Kąt segmentu dachu względem teoretycznej płaszczyzny podłoża. 0 = równolegle do podłoża, 90 = prostopadle do podłoża.

azimuthDegrees

number

Kierunek, w którym jest skierowany dany segment dachu. 0 = północ, 90 = wschód, 180 = południe. W przypadku „płaskiego” segmentu dachu (pitchDegrees bardzo blisko 0) azymut nie jest dobrze zdefiniowany, więc dla zachowania spójności definiujemy go arbitralnie jako 0 (północ).

planeHeightAtCenterMeters

number

Wysokość płaszczyzny segmentu dachu w metrach nad poziomem morza w punkcie wskazanym przez center. Wraz z nachyleniem, azymutem i lokalizacją środka w pełni definiuje płaszczyznę segmentu dachu.

SolarPanel

SolarPanel opisuje pozycję, orientację i produkcję pojedynczego panelu słonecznego. Informacje o parametrach panelu znajdziesz w polach panelHeightMeters, panelWidthMeters i panelCapacityWatts w SolarPotential.

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

object (LatLng)

Środek panelu.

orientation

enum (SolarPanelOrientation)

Orientacja panelu.

yearlyEnergyDcKwh

number

Ilość energii słonecznej, którą ten układ przechwytuje w ciągu roku, w kWh prądu stałego.

segmentIndex

integer

Indeks w roofSegmentStats z RoofSegmentSizeAndSunshineStats, który odpowiada segmentowi dachu, na którym znajduje się ten panel.

SolarPanelOrientation

Orientacja panelu słonecznego. Należy go interpretować względem azymutu segmentu dachu, na którym znajduje się panel.

Wartości w polu enum
SOLAR_PANEL_ORIENTATION_UNSPECIFIED Orientacja panelu jest nieznana.
LANDSCAPE Dłuższa krawędź panelu LANDSCAPE jest prostopadła do kierunku azymutu segmentu dachu, na którym jest umieszczony.
PORTRAIT Dłuższa krawędź panelu PORTRAIT jest równoległa do kierunku azymutu segmentu dachu, na którym jest umieszczony.

SolarPanelConfig

SolarPanelConfig opisuje konkretne rozmieszczenie paneli słonecznych na dachu.

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

integer

Łączna liczba paneli. Pamiętaj, że jest to nadmiarowe w stosunku do (sumy) odpowiednich pól w obiekcie roofSegmentSummaries.

yearlyEnergyDcKwh

number

Ilość energii słonecznej, którą ten układ paneli może wygenerować w ciągu roku (w kWh prądu stałego), przy założeniu, że panele są takie jak opisane powyżej.

roofSegmentSummaries[]

object (RoofSegmentSummary)

Informacje o produkcji energii przez każdy segment dachu, na którym znajduje się co najmniej 1 panel w tym układzie. roofSegmentSummaries[i] opisuje i-ty segment dachu, w tym jego rozmiar, oczekiwaną produkcję i orientację.

RoofSegmentSummary

Informacje o segmencie dachu budynku z umieszczoną na nim liczbą paneli.

Zapis JSON
{
  "panelsCount": integer,
  "yearlyEnergyDcKwh": number,
  "pitchDegrees": number,
  "azimuthDegrees": number,
  "segmentIndex": integer
}
Pola
panelsCount

integer

Łączna liczba paneli w tym segmencie.

yearlyEnergyDcKwh

number

Ilość energii słonecznej, którą ta część układu przechwytuje w ciągu roku, w kWh (prąd stały), przy założeniu, że panele są takie jak opisane powyżej.

pitchDegrees

number

Kąt segmentu dachu względem teoretycznej płaszczyzny podłoża. 0 = równolegle do podłoża, 90 = prostopadle do podłoża.

azimuthDegrees

number

Kierunek, w którym jest skierowany segment dachu. 0 = północ, 90 = wschód, 180 = południe. W przypadku „płaskiego” segmentu dachu (pitchDegrees bardzo blisko 0) azymut nie jest dobrze zdefiniowany, więc dla zachowania spójności definiujemy go arbitralnie jako 0 (północ).

segmentIndex

integer

Indeks w roofSegmentStats odpowiadającego mu elementu RoofSegmentSizeAndSunshineStats.

FinancialAnalysis

Analiza kosztów i korzyści optymalnego układu paneli słonecznych w przypadku konkretnej wysokości rachunku za prąd.

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

object (Money)

Miesięczny rachunek za prąd, który jest podstawą tej analizy.

defaultBill

boolean

Czy jest to rozmiar rachunku wybrany jako domyślny dla obszaru, w którym znajduje się ten budynek. Dokładnie 1 FinancialAnalysis w BuildingSolarPotential powinien mieć ustawioną wartość defaultBill.

averageKwhPerMonth

number

ile energii elektrycznej zużywa dom w przeciętnym miesiącu (na podstawie wysokości rachunku i lokalnych stawek za energię elektryczną);

financialDetails

object (FinancialDetails)

Informacje finansowe, które mają zastosowanie niezależnie od używanej metody finansowania.

leasingSavings

object (LeasingSavings)

Koszt i korzyści związane z leasingiem paneli słonecznych.

cashPurchaseSavings

object (CashPurchaseSavings)

Koszty i korzyści związane z zakupem paneli słonecznych za gotówkę.

financedPurchaseSavings

object (FinancedPurchaseSavings)

Koszty i korzyści związane z zakupem paneli słonecznych dzięki finansowaniu.

panelConfigIndex

integer

Indeks w solarPanelConfigs optymalnego układu instalacji fotowoltaicznej dla tej wysokości rachunku. Może to być -1, co oznacza, że nie ma układu. W takim przypadku pozostałe wiadomości podrzędne zostaną pominięte.

Pieniądze

Reprezentuje kwotę pieniężną z rodzajem waluty.

Zapis JSON
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
Pola
currencyCode

string

Trzyliterowy kod waluty zdefiniowany w normie ISO 4217.

units

string (int64 format)

Całe jednostki kwoty. Jeśli na przykład currencyCode to "USD", 1 jednostka to 1 USD.

nanos

integer

Liczba jednostek nano (10^-9) kwoty. Wartość musi się zawierać w przedziale od -999 999 999 do +999 999 999 (włącznie). Jeśli units jest dodatnia, nanos musi być dodatnia lub wynosić zero. Jeśli units wynosi zero, nanos może być liczbą dodatnią, ujemną lub zerem. Jeśli parametr units ma wartość ujemną, parametr nanos musi mieć wartość ujemną lub wynosić zero. Na przykład kwota -1,75 USD jest reprezentowana jako units=-1 i nanos=-750 000 000.

FinancialDetails

Szczegóły analizy finansowej. Niektóre z tych informacji są już przechowywane na wyższych poziomach (np. koszty własne). Łączne kwoty pieniężne dotyczą okresu od początku śledzenia zdefiniowanego przez pole panelLifetimeYears w tabeli SolarPotential. Uwaga: koszt zakupu paneli jest podany w polu outOfPocketCost w pliku CashPurchaseSavings.

Zapis 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
}
Pola
initialAcKwhPerYear

number

Ile kWh prądu przemiennego panele słoneczne wygenerują w pierwszym roku.

remainingLifetimeUtilityBill

object (Money)

Rachunek za media za energię elektryczną niewytworzoną przez panele słoneczne w okresie ich eksploatacji.

federalIncentive

object (Money)

Kwota dostępna w ramach zachęt federalnych; dotyczy to sytuacji, gdy użytkownik kupuje panele (z kredytem lub bez).

stateIncentive

object (Money)

Kwota dostępna w ramach zachęt stanowych; dotyczy to sytuacji, gdy użytkownik kupuje panele (z kredytem lub bez).

utilityIncentive

object (Money)

Kwota dostępna w ramach zachęt od dostawcy energii; dotyczy to sytuacji, gdy użytkownik kupuje panele (z kredytem lub bez).

lifetimeSrecTotal

object (Money)

Kwota, jaką użytkownik otrzyma z certyfikatów energii odnawialnej ze słońca w okresie eksploatacji paneli. Dotyczy to sytuacji, gdy użytkownik kupuje panele (z kredytem lub bez).

costOfElectricityWithoutSolar

object (Money)

Łączny koszt energii elektrycznej, jaki użytkownik zapłaciłby w okresie eksploatacji, gdyby nie zainstalował paneli słonecznych.

netMeteringAllowed

boolean

Czy rozliczenie net-metering jest dozwolone.

solarPercentage

number

Odsetek (0–100) energii użytkownika dostarczanej przez panele słoneczne. Wartość jest prawidłowa w pierwszym roku i w przybliżeniu prawidłowa w kolejnych latach.

percentageExportedToGrid

number

Odsetek (0–100) produkcji energii elektrycznej z fotowoltaiki, który według naszych założeń został wyeksportowany do sieci, na podstawie pierwszego kwartału produkcji. Jeśli rozliczenie net-metering nie jest dozwolone, ma to wpływ na obliczenia.

LeasingSavings

Koszt i korzyści związane z leasingiem konkretnej konfiguracji paneli słonecznych przy określonym zużyciu energii elektrycznej.

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

boolean

Czy leasing jest dozwolony w danej jurysdykcji (leasing nie jest dozwolony w niektórych stanach). Jeśli to pole ma wartość false, wartości w tym komunikacie powinny być ignorowane.

leasesSupported

boolean

Określa, czy leasing jest obsługiwany w tej jurysdykcji przez mechanizm obliczeń finansowych. Jeśli to pole ma wartość false, wartości w tym komunikacie powinny być ignorowane. Jest to niezależne od leasesAllowed: w niektórych regionach leasing jest dozwolony, ale na warunkach, które nie są obsługiwane przez modele finansowe.

annualLeasingCost

object (Money)

Szacowany roczny koszt leasingu.

savings

object (SavingsOverTime)

kwotę zaoszczędzoną (lub nie) w całym okresie.

SavingsOverTime

informacje finansowe, które są udostępniane między różnymi metodami finansowania;

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

object (Money)

Oszczędności w pierwszym roku po instalacji paneli.

savingsYear20

object (Money)

Oszczędności w ciągu pierwszych 20 lat po instalacji paneli.

presentValueOfSavingsYear20

object (Money)

Jaka jest obecna wartość skumulowanych oszczędności w ciągu 20 lat przy założonej obniżonej cenie?

savingsLifetime

object (Money)

Oszczędności w ciągu całego okresu użytkowania panelu.

presentValueOfSavingsLifetime

object (Money)

Jaka jest obecna wartość skumulowanych oszczędności w ciągu całego okresu przy założonej obniżonej cenie?

financiallyViable

boolean

Wskazuje, czy ten scenariusz jest opłacalny finansowo. W przypadku scenariuszy o niskiej rentowności (np. przynoszących straty) będzie mieć wartość false.

CashPurchaseSavings

Koszt i korzyści związane z zakupem konkretnej konfiguracji paneli słonecznych przy określonym zużyciu energii elektrycznej.

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

object (Money)

Koszt początkowy przed ulgami podatkowymi: kwota, którą trzeba zapłacić z własnej kieszeni. Porównaj z kwotą upfrontCost, która uwzględnia ulgi podatkowe.

upfrontCost

object (Money)

Koszt początkowy po uwzględnieniu ulg podatkowych: kwota, którą należy zapłacić w pierwszym roku. Porównaj z outOfPocketCost, czyli ceną przed uwzględnieniem zachęt podatkowych.

rebateValue

object (Money)

Wartość wszystkich rabatów podatkowych.

savings

object (SavingsOverTime)

kwotę zaoszczędzoną (lub nie) w całym okresie.

paybackYears

number

Liczba lat do zwrotu z inwestycji. Wartość ujemna oznacza, że zwrot kosztów nigdy nie nastąpi w okresie od początku śledzenia.

FinancedPurchaseSavings

Koszt i korzyści wynikające z wykorzystania kredytu na zakup konkretnej konfiguracji paneli słonecznych przy określonym zużyciu energii elektrycznej.

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

object (Money)

Roczne spłaty kredytu.

rebateValue

object (Money)

Wartość wszystkich ulg podatkowych (w tym federalnej ulgi podatkowej na inwestycje, ITC).

loanInterestRate

number

Stopa procentowa kredytów przyjęta w tym zestawie obliczeń.

savings

object (SavingsOverTime)

kwotę zaoszczędzoną (lub nie) w całym okresie.

DetectedArrays

Informacje o panelach słonecznych wykrytych na budynku.

Zapis JSON
{
  "detectionStatus": enum (DetectionStatus),
  "arrays": [
    {
      object (SolarArray)
    }
  ],
  "latestCaptureDate": {
    object (Date)
  }
}
Pola
detectionStatus

enum (DetectionStatus)

Wskazuje stan wykrywania paneli słonecznych w przypadku tego budynku.

arrays[]

object (SolarArray)

Lista modułów słonecznych wykrytych na budynku.

latestCaptureDate

object (Date)

Data wskazująca, kiedy zostały zarejestrowane najnowsze dane dotyczące paneli fotowoltaicznych.

DetectionStatus

Wskazuje stan wykrywania paneli słonecznych w przypadku tego budynku.

Wartości w polu enum
DETECTION_STATUS_UNSPECIFIED Stan nieokreślony.
DETECTION_STATUS_DATA_UNAVAILABLE Dane o wykrytych panelach słonecznych są niedostępne dla tego budynku.
DETECTION_STATUS_ARRAYS_DETECTED W przypadku tego budynku wykryto co najmniej 1 panel słoneczny.
DETECTION_STATUS_NO_ARRAYS_DETECTED Nie wykryto paneli słonecznych dla tego budynku.

SolarArray

Szczegóły pojedynczego wykrytego panelu słonecznego.

Zapis JSON
{
  "polygonGeojson": {
    object
  }
}
Pola
polygonGeojson

object (Struct format)

Reprezentacja GeoJSON obszaru budynku, na którym wykryto panele słoneczne.

Dane GeoJSON muszą być w formacie RFC 7946 i reprezentować wielokąt dla pojedynczego ciągłego obszaru.

Jeśli wielokąt zawiera otwory, będzie reprezentowany przez kilka pętli.

Przykład:

{ "type": "Polygon", "coordinates": [ [ [-1, -1], [-1, 0], [0, 0], [-1, -1] ] ] }