Method: buildingInsights.findClosest

쿼리 지점에서 가장 가까운 건물을 찾습니다. 쿼리 지점에서 약 50m 이내에 건물이 없으면 NOT_FOUND 코드 오류를 반환합니다.

HTTP 요청

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

URL은 gRPC 트랜스코딩 구문을 사용합니다.

쿼리 매개변수

매개변수
location

object (LatLng)

필수 항목입니다. API가 가장 가까운 알려진 건물을 찾는 위도 및 경도입니다.

requiredQuality

enum (ImageryQuality)

선택사항입니다. 결과에서 허용되는 최소 품질 수준입니다. 이보다 품질이 낮은 결과는 반환되지 않습니다. 지정하지 않으면 고화질로만 제한하는 것과 같습니다.

요청 본문

요청 본문은 비어 있어야 합니다.

응답 본문

Solar.FindClosestBuildingInsights의 응답 메시지입니다. 건물의 위치, 크기, 태양광 발전량에 대한 정보입니다.

성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.

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)
}
필드
name

string

건물의 리소스 이름으로, building/<place ID> 형식입니다.

center

object (LatLng)

건물 중앙에서 가까운 지점입니다.

boundingBox

object (LatLngBox)

건물의 경계 상자입니다.

imageryDate

object (Date)

기본 이미지를 획득한 날짜입니다. 이는 대략적인 수치입니다.

imageryProcessedDate

object (Date)

이미지의 처리가 완료된 시점입니다.

postalCode

string

우편번호 (예: 미국 우편번호)입니다.

administrativeArea

string

이 건물이 포함된 행정 구역 1 (예: 미국의 경우 주)입니다. 예를 들어 미국의 경우 약어는 'MA'일 수 있습니다. 또는 'CA'라고 입력합니다.

statisticalArea

string

통계 영역 (예: 미국 인구 조사 표준 지역)입니다.

regionCode

string

이 건물이 위치한 국가 (또는 지역)의 지역 코드입니다.

solarPotential

object (SolarPotential)

건물의 태양광 발전량입니다.

imageryQuality

enum (ImageryQuality)

이 건물의 데이터를 계산하는 데 사용되는 이미지의 품질입니다.

승인 범위

다음 OAuth 범위가 필요합니다.

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

LatLngBox

위도/경도 좌표의 경계 상자입니다.

JSON 표현
{
  "sw": {
    object (LatLng)
  },
  "ne": {
    object (LatLng)
  }
}
필드
sw

object (LatLng)

상자의 남서쪽 모서리입니다.

ne

object (LatLng)

상자의 북동쪽 모서리입니다.

SolarPotential

건물의 태양광 발전량에 관한 정보입니다. 여기서 여러 필드는 '패널'로 정의됩니다. panelCapacityWatts, panelHeightMeters, panelWidthMeters 필드는 이러한 계산에 사용되는 패널 모델의 매개변수를 설명합니다.

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)
    }
  ]
}
필드
maxArrayPanelsCount

integer

최대 배열의 크기입니다. 즉, 지붕에 맞을 수 있는 최대 패널 수입니다.

panelCapacityWatts

number

계산에 사용되는 패널의 용량(와트 단위)입니다.

panelHeightMeters

number

계산에 사용된 패널의 높이로, 세로 방향의 미터 단위입니다.

panelWidthMeters

number

계산에 사용된 패널의 너비로, 세로 방향의 미터 단위입니다.

panelLifetimeYears

integer

태양 전지판의 예상 수명(년)입니다. 이는 재무 계산에 사용됩니다.

maxArrayAreaMeters2

number

최대 배열의 크기(제곱미터)입니다.

maxSunshineHoursPerYear

number

옥상 어느 지점에서나 연간 최대 일조량 시간 햇빛 시간은 매년 받는 총 일사량 (에너지)의 양을 측정한 값입니다. 1햇빛은 kW당 1kWh입니다 (여기서 kW는 표준 테스트 조건에서 용량의 kW를 나타냄).

carbonOffsetFactorKgPerMwh

number

전력망 전력 1MWh당 생산된 CO2의 양입니다. 태양광 발전에 의해 대체되는 그리드 전력의 탄소 집약도를 측정하는 수단입니다.

wholeRoofStats

object (SizeAndSunshineStats)

일부 지붕 세그먼트에 할당된 지붕 부분의 총 크기 및 일광 분위수입니다. 이름과 달리 전체 건물이 포함되지 않을 수 있습니다. buildingStats를 참조하세요.

buildingStats

object (SizeAndSunshineStats)

일부 지붕 세그먼트에 할당되지 않은 지붕 일부를 포함하여 전체 건물의 크기 및 일광 분위수입니다. 이러한 부분의 방향은 잘 특성이 지정되지 않으므로 지붕 면적 추정치는 신뢰할 수 없지만 지면 면적 추정치는 신뢰할 수 있습니다. wholeRoofStats에서 지면 면적의 buildingStatswholeRoofStats 비율로 지붕 면적을 조정하여 보다 신뢰할 수 있는 전체 건물 지붕 면적을 얻을 수 있습니다.

roofSegmentStats[]

object (RoofSegmentSizeAndSunshineStats)

각 지붕 세그먼트의 크기 및 일광 분위수.

solarPanels[]

object (SolarPanel)

SolarPanel은 하나의 태양 전지판을 나타냅니다. 패널 레이아웃 알고리즘이 배치한 순서대로 나열됩니다. 항상 그런 것은 아니지만 일반적으로 연간 에너지 생산량이 내림차순으로 나타납니다.

solarPanelConfigs[]

object (SolarPanelConfig)

SolarPanelConfig은 지붕에 있는 다양한 태양광 패널 배열을 나타냅니다. 패널 수가 증가하는 순으로 표시됩니다. panelsCount=N인 SolarPanelConfigsolarPanels 목록의 처음 N개의 패널을 기반으로 합니다. 이 필드는 지붕에 패널을 4개 이상 맞출 수 있는 경우에만 채워집니다.

financialAnalyses[]

object (FinancialAnalysis)

FinancialAnalysis는 주어진 월별 청구서와 특정 전력 공급업체를 가정하여 태양광 발전으로 절감되는 비용을 제공합니다. 월별 청구 금액에서 내림차순으로 정렬되어 있습니다. Solar API에 재무 계산을 수행하는 데 필요한 정보가 충분하지 않은 지역의 건물은 이 입력란이 비어 있습니다.

SizeAndSunshineStats

지붕 또는 지붕의 일부에 대한 크기 및 선니션 분위수입니다.

JSON 표현
{
  "areaMeters2": number,
  "sunshineQuantiles": [
    number
  ],
  "groundAreaMeters2": number
}
필드
areaMeters2

number

지붕 또는 지붕 세그먼트의 면적(m^2)입니다. 이는 지면 접지면 영역이 아닌 지붕 면적 (기울기 반영)입니다.

sunshineQuantiles[]

number

영역 전체의 점별 썸니션의 분위수입니다. 여기에 N개의 값이 있으면 (N-1)일을 나타냅니다. 예를 들어 5개의 값이 있으면 사분위수 (최소, 25%, 50%, 75%, 최대)가 됩니다. 값은 maxSunshineHoursPerYear와 같이 연간 kWh/kW 단위입니다.

groundAreaMeters2

number

지붕 또는 지붕 세그먼트에 포함되는 지면 접지면 면적(m^2)입니다.

RoofSegmentSizeAndSunshineStats

지붕 세그먼트의 크기 및 햇빛 분위수에 대한 정보입니다.

JSON 표현
{
  "stats": {
    object (SizeAndSunshineStats)
  },
  "center": {
    object (LatLng)
  },
  "boundingBox": {
    object (LatLngBox)
  },
  "pitchDegrees": number,
  "azimuthDegrees": number,
  "planeHeightAtCenterMeters": number
}
필드
stats

object (SizeAndSunshineStats)

지붕 세그먼트의 총 크기 및 일광 분위수입니다.

center

object (LatLng)

지붕 부분 중심에 가까운 한 지점입니다.

boundingBox

object (LatLngBox)

지붕 세그먼트의 경계 상자입니다.

pitchDegrees

number

이론적 지면을 기준으로 한 지붕 세그먼트의 각도. 0 = 지면과 평행, 90 = 지면과 수직.

azimuthDegrees

number

지붕 세그먼트가 가리키는 나침반 방향입니다. 0 = 북쪽, 90 = 동쪽, 180 = 남쪽입니다. '평면' 지붕 세그먼트 (pitchDegrees가 매우 0에 매우 가까움)가 있는 경우 방위각은 잘 정의되지 않으므로 일관성을 위해 임의로 0 (북쪽)으로 정의합니다.

planeHeightAtCenterMeters

number

center으로 지정된 지점에서 지붕 구간 평면의 높이(해발 미터)입니다. 피치, 방위각, 중심 위치와 함께 지붕 세그먼트 평면을 완전히 정의합니다.

SolarPanel

SolarPanel은 단일 태양 전지판의 위치, 방향, 생산을 설명합니다. 패널의 매개변수에 관한 자세한 내용은 SolarPotentialpanelHeightMeters, panelWidthMeters, panelCapacityWatts 필드를 참고하세요.

JSON 표현
{
  "center": {
    object (LatLng)
  },
  "orientation": enum (SolarPanelOrientation),
  "yearlyEnergyDcKwh": number,
  "segmentIndex": integer
}
필드
center

object (LatLng)

패널의 중앙입니다.

orientation

enum (SolarPanelOrientation)

패널의 방향입니다.

yearlyEnergyDcKwh

number

이 레이아웃에서 1년 동안 캡처하는 태양 에너지의 양(DC kWh)입니다.

segmentIndex

integer

이 패널이 배치되는 지붕 세그먼트에 해당하는 RoofSegmentSizeAndSunshineStatsroofSegmentStats 색인입니다.

SolarPanelOrientation

태양 전지 패널의 방향입니다. 이는 패널이 배치되는 지붕 세그먼트의 방위각을 기준으로 해석되어야 합니다.

열거형
SOLAR_PANEL_ORIENTATION_UNSPECIFIED 알 수 있는 패널 방향이 없습니다.
LANDSCAPE LANDSCAPE 패널은 패널이 배치되는 지붕 세그먼트의 방위각 방향과 직각을 이루는 긴 가장자리를 갖습니다.
PORTRAIT PORTRAIT 패널은 긴 가장자리가 배치되는 지붕 세그먼트의 방위각 방향과 평행을 이룹니다.

SolarPanelConfig

SolarPanelConfig는 지붕에 태양광 패널의 특정 배치를 설명합니다.

JSON 표현
{
  "panelsCount": integer,
  "yearlyEnergyDcKwh": number,
  "roofSegmentSummaries": [
    {
      object (RoofSegmentSummary)
    }
  ]
}
필드
panelsCount

integer

총 패널 수입니다. 이는 roofSegmentSummaries에 있는 해당 필드의 합계와 중복됩니다.

yearlyEnergyDcKwh

number

위에 설명된 패널을 기준으로 이 레이아웃에서 1년 동안 캡처하는 태양 에너지의 양(DC kWh)입니다.

roofSegmentSummaries[]

object (RoofSegmentSummary)

이 레이아웃에서 패널을 하나 이상 포함하는 각 지붕 세그먼트의 생성에 대한 정보입니다. roofSegmentSummaries[i]은 크기, 예상 생산 및 방향을 포함하여 i번째 지붕 세그먼트를 설명합니다.

RoofSegmentSummary

몇 개의 패널이 설치된 건물의 지붕 구획에 관한 정보입니다.

JSON 표현
{
  "panelsCount": integer,
  "yearlyEnergyDcKwh": number,
  "pitchDegrees": number,
  "azimuthDegrees": number,
  "segmentIndex": integer
}
필드
panelsCount

integer

이 세그먼트의 총 패널 수입니다.

yearlyEnergyDcKwh

number

위에 설명된 패널을 가정할 때 레이아웃의 이 부분이 1년 동안 캡처한 태양 에너지(DCkWh)입니다.

pitchDegrees

number

이론적 지면을 기준으로 한 지붕 세그먼트의 각도. 0 = 지면과 평행, 90 = 지면과 직각.

azimuthDegrees

number

지붕 세그먼트가 가리키는 나침반 방향입니다. 0 = 북쪽, 90 = 동쪽, 180 = 남쪽입니다. '평면' 지붕 세그먼트 (pitchDegrees가 매우 0에 매우 가까움)가 있는 경우 방위각은 잘 정의되지 않으므로 일관성을 위해 임의로 0 (북쪽)으로 정의합니다.

segmentIndex

integer

상응하는 RoofSegmentSizeAndSunshineStatsroofSegmentStats에 있는 색인입니다.

FinancialAnalysis

특정 전기 요금 청구서에 맞는 최적의 태양광 레이아웃의 비용과 이점 분석

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

object (Money)

이 분석에서 추정한 월별 전기 요금입니다.

defaultBill

boolean

이 건물이 위치한 지역의 기본 청구서로 선택된 결제 크기인지 여부입니다. BuildingSolarPotential의 정확히 하나의 FinancialAnalysis에는 defaultBill가 설정되어야 합니다.

averageKwhPerMonth

number

청구서 금액과 현지 전기 요금을 기준으로 한 한 달간 가정에서 사용하는 전기량입니다.

financialDetails

object (FinancialDetails)

사용된 파이낸싱 방법과 관계없이 적용되는 재무 정보입니다.

leasingSavings

object (LeasingSavings)

태양 전지판 임대 비용 및 이점

cashPurchaseSavings

object (CashPurchaseSavings)

현금으로 태양 전지판을 구매할 때의 비용과 이점

financedPurchaseSavings

object (FinancedPurchaseSavings)

태양 전지판을 구매할 때의 비용 및 이익.

panelConfigIndex

integer

이 청구서 크기에 가장 적합한 태양광 레이아웃의 solarPanelConfigs 색인입니다. 레이아웃이 없음을 나타내는 -1일 수 있습니다. 이 경우 나머지 하위 메시지는 생략됩니다.

Money

해당 통화 유형과 함께 금액을 나타냅니다.

JSON 표현
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
필드
currencyCode

string

ISO 4217에 정의된 3자리 통화 코드입니다.

units

string (int64 format)

금액의 전체 단위입니다. 예를 들어 currencyCode"USD"이면 단위 1개는 1달러(USD)입니다.

nanos

integer

금액의 나노 (10^-9) 단위 숫자입니다. 값은 -999,999,999 ~ +999,999,999(포함) 사이여야 합니다. units가 양수이면 nanos는 양수 또는 0이어야 합니다. units가 0이면 nanos은 양수, 0 또는 음수일 수 있습니다. units가 음수이면 nanos는 음수 또는 0이어야 합니다. 예를 들어 $-1.75는 units=-1, nanos=-750,000,000으로 나타냅니다.

FinancialDetails

재무 분석의 세부정보입니다. 이러한 세부정보 중 일부는 이미 더 높은 수준 (예: 본인 부담 비용)에 저장되어 있습니다. 총 금액은 SolarPotentialpanelLifetimeYears 필드에서 정의한 전체 기간 동안 측정됩니다. 참고: 패널을 구매하는 데 드는 본인 부담 비용은 CashPurchaseSavingsoutOfPocketCost 필드에 나와 있습니다.

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
}
필드
initialAcKwhPerYear

number

첫해에 태양광 패널에서 생산할 것으로 예상되는 AC kWh입니다.

remainingLifetimeUtilityBill

object (Money)

태양광 발전으로 인한 것이 아닌 패널 수명 기간의 공공요금 청구서입니다.

federalIncentive

object (Money)

연방 인센티브로 지급 가능한 금액 이는 사용자가 패널을 구매하는 경우 (대출 여부와 관계없이) 적용됩니다.

stateIncentive

object (Money)

주 정부 인센티브로부터 받을 수 있는 금액 이는 사용자가 패널을 구매하는 경우 (대출 여부와 관계없이) 적용됩니다.

utilityIncentive

object (Money)

공공 기간 산업 인센티브에서 제공되는 금액 이는 사용자가 패널을 구매하는 경우 (대출 여부와 관계없이) 적용됩니다.

lifetimeSrecTotal

object (Money)

패널 수명 동안 사용자가 태양광 재생 에너지 크레딧으로 받는 금액 이는 사용자가 패널을 구매하는 경우 (대출 여부와 관계없이) 적용됩니다.

costOfElectricityWithoutSolar

object (Money)

태양광을 설치하지 않았다면 사용자가 전체 기간 동안 지불했을 총 전기 비용입니다.

netMeteringAllowed

boolean

네트워크 측정 허용 여부입니다.

solarPercentage

number

사용자 전력의 태양광 공급량 (0~100)입니다. 처음 1년 동안 유효하지만 미래 연도에는 거의 정확합니다.

percentageExportedToGrid

number

생산량의 1/4을 기준으로 추정한 태양광 발전 비율 (0~100)을 전력망으로 수출했습니다. 이는 네트워크 측정이 허용되지 않는 경우 계산에 영향을 미칩니다.

LeasingSavings

특정 전기를 사용하는 태양 전지판의 특정 구성을 임대하는 비용과 이익.

JSON 표현
{
  "leasesAllowed": boolean,
  "leasesSupported": boolean,
  "annualLeasingCost": {
    object (Money)
  },
  "savings": {
    object (SavingsOverTime)
  }
}
필드
leasesAllowed

boolean

이 관할권에서 임대가 허용되는지 여부입니다 (일부 주에서는 임대가 허용되지 않음). 이 필드가 false인 경우 이 메시지의 값은 무시해야 합니다.

leasesSupported

boolean

이 관할권에서 금융 계산 엔진이 임대를 지원하는지 여부입니다. 이 필드가 false인 경우 이 메시지의 값은 무시해야 합니다. 이는 leasesAllowed과는 별개입니다. 일부 지역에서는 임대가 허용되지만 재무 모델에서 처리하지 않는 조건에서 허용됩니다.

annualLeasingCost

object (Money)

예상 연간 임대 비용입니다.

savings

object (SavingsOverTime)

전체 기간 동안 저장되거나 저장되지 않은 금액입니다.

SavingsOverTime

여러 파이낸싱 방법 간에 공유되는 금융 정보입니다.

JSON 표현
{
  "savingsYear1": {
    object (Money)
  },
  "savingsYear20": {
    object (Money)
  },
  "presentValueOfSavingsYear20": {
    object (Money)
  },
  "savingsLifetime": {
    object (Money)
  },
  "presentValueOfSavingsLifetime": {
    object (Money)
  },
  "financiallyViable": boolean
}
필드
savingsYear1

object (Money)

패널 설치 후 첫해 절감액

savingsYear20

object (Money)

패널 설치 후 처음 20년 동안의 절감액

presentValueOfSavingsYear20

object (Money)

추정된 할인율을 적용했을 때 20년 누적 절감액의 현재 가치는 얼마입니까?

savingsLifetime

object (Money)

전체 패널 수명 동안 절감한 시간입니다.

presentValueOfSavingsLifetime

object (Money)

추정된 할인율을 사용할 때 누적 기간 절감액의 현재 가치는 얼마인가요?

financiallyViable

boolean

이 시나리오가 재정적으로 사업이 가능한지 여부를 나타냅니다. 재무적 실현 가능성이 낮은 시나리오 (예: 금전적 손실)의 경우 거짓입니다.

CashPurchaseSavings

특정 전력을 사용하는 태양 전지판의 특정 구성을 즉시 구매할 때의 비용 및 이익.

JSON 표현
{
  "outOfPocketCost": {
    object (Money)
  },
  "upfrontCost": {
    object (Money)
  },
  "rebateValue": {
    object (Money)
  },
  "savings": {
    object (SavingsOverTime)
  },
  "paybackYears": number
}
필드
outOfPocketCost

object (Money)

세액 인센티브 적용 전 초기 비용: 직접 지불해야 하는 금액입니다. 세금 인센티브 적용 대상인 upfrontCost와 대비되는 개념입니다.

upfrontCost

object (Money)

세액 인센티브 적용 후 초기 비용: 첫해에 지불해야 하는 금액입니다. outOfPocketCost는 세액 인센티브 적용 전과 대비됩니다.

rebateValue

object (Money)

모든 세금 환급 금액입니다.

savings

object (SavingsOverTime)

전체 기간 동안 저장되거나 저장되지 않은 금액입니다.

paybackYears

number

회수까지 남은 년입니다. 값이 음수이면 전체 기간 내에 투자금이 회수되지 않습니다.

FinancedPurchaseSavings

특정 전기를 사용하는 태양 전지판의 특정 구성을 구매하기 위한 대출을 통해 얻을 수 있는 비용과 이점.

JSON 표현
{
  "annualLoanPayment": {
    object (Money)
  },
  "rebateValue": {
    object (Money)
  },
  "loanInterestRate": number,
  "savings": {
    object (SavingsOverTime)
  }
}
필드
annualLoanPayment

object (Money)

연간 대출 상환

rebateValue

object (Money)

모든 세금 환급 금액 (연방 투자세 공제 (ITC) 포함)

loanInterestRate

number

이 계산에서 가정한 대출 이자율입니다.

savings

object (SavingsOverTime)

전체 기간 동안 저장되거나 저장되지 않은 금액입니다.