Method: buildingInsights.findClosest

Ubica el edificio más cercano a un punto de consulta. Muestra un error con el código NOT_FOUND si no hay edificios a menos de 50 m del punto de consulta.

Solicitud HTTP

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

La URL usa la sintaxis de la transcodificación gRPC.

Parámetros de consulta

Parámetros
location

object (LatLng)

Obligatorio. La longitud y la latitud desde las que la API busca el edificio conocido más cercano.

requiredQuality

enum (ImageryQuality)

Opcional. El nivel de calidad mínimo permitido en los resultados. No se devolverá ningún resultado con una calidad inferior a esta. No especificar esto equivale a restringir solo a calidad ALTA.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Mensaje de respuesta para Solar.FindClosestBuildingInsights. Información sobre la ubicación, las dimensiones y el potencial solar de un edificio.

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

Representación 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)
}
Campos
name

string

El nombre del recurso para el edificio, en el formato building/<place ID>.

center

object (LatLng)

Es un punto cercano al centro del edificio.

boundingBox

object (LatLngBox)

El cuadro delimitador del edificio.

imageryDate

object (Date)

Fecha en la que se adquirió la imagen subyacente. Esto es aproximado.

imageryProcessedDate

object (Date)

Cuando se completó el procesamiento de estas imágenes.

postalCode

string

Código postal (p.ej., código postal estadounidense) de este edificio.

administrativeArea

string

Área administrativa 1 (p. ej., en el estado de EE.UU.) que contiene este edificio. Por ejemplo, en EE. UU., la abreviatura podría ser "MA" o "CA".

statisticalArea

string

Área estadística (p.ej., del censo de EE.UU.) en el que se encuentra este edificio.

regionCode

string

Es el código regional del país (o la región) en el que se encuentra este edificio.

solarPotential

object (SolarPotential)

Potencial solar del edificio.

imageryQuality

enum (ImageryQuality)

La calidad de las imágenes utilizadas para calcular los datos de este edificio.

Alcances de autorización

Requiere el siguiente alcance de OAuth:

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

LatLngBox

Es un cuadro delimitador en coordenadas de latitud y longitud.

Representación JSON
{
  "sw": {
    object (LatLng)
  },
  "ne": {
    object (LatLng)
  }
}
Campos
sw

object (LatLng)

La esquina suroeste del cuadro.

ne

object (LatLng)

Es la esquina noreste del cuadro.

SolarPotential

Información sobre el potencial solar de un edificio. Hay varios campos en esta sección que se definen en términos de “paneles”. Los campos panelCapacityWatts, panelHeightMeters y panelWidthMeters describen los parámetros del modelo de panel que se usa en estos cálculos.

Representación 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)
    }
  ]
}
Campos
maxArrayPanelsCount

integer

Es el tamaño del array máximo, es decir, la cantidad máxima de paneles que pueden caber en el techo.

panelCapacityWatts

number

Es la capacidad, en vatios, del panel usado en los cálculos.

panelHeightMeters

number

Es la altura, en metros de orientación vertical, del panel utilizado en los cálculos.

panelWidthMeters

number

Es el ancho, en metros en orientación vertical, del panel usado en los cálculos.

panelLifetimeYears

integer

La vida útil esperada, en años, de los paneles solares. Se utiliza en los cálculos financieros.

maxArrayAreaMeters2

number

Es el tamaño, en metros cuadrados, del array máximo.

maxSunshineHoursPerYear

number

Cantidad máxima de horas de luz solar recibidas por año por cualquier punto del techo. Las horas de luz solar son una medida de la cantidad total de aislamiento (energía) recibida por año. 1 hora de luz solar = 1 kWh por kW (donde kW se refiere a los kW de capacidad en las condiciones de pruebas estándares).

carbonOffsetFactorKgPerMwh

number

Cantidad equivalente de CO2 producido por MWh de electricidad de la red. Esta es una medida de la intensidad de carbono de la electricidad de la red que se desplaza por la electricidad solar.

wholeRoofStats

object (SizeAndSunshineStats)

Tamaño total y cuantiles de luz solar para la parte del techo que se asignó a algún segmento del techo. A pesar del nombre, es posible que no se incluya todo el edificio. Consulta los buildingStats.

buildingStats

object (SizeAndSunshineStats)

Cuantiles de tamaño y luz solar para todo el edificio, incluidas las partes del techo que no estaban asignadas a algún segmento del techo. Debido a que las orientaciones de estas partes no están bien caracterizadas, la estimación del área del techo no es confiable, pero la del área del suelo es confiable. Es posible que se pueda obtener un área de techo más confiable para todo el edificio si se escala el área de techo de wholeRoofStats según la proporción de las áreas del terreno de buildingStats y wholeRoofStats.

roofSegmentStats[]

object (RoofSegmentSizeAndSunshineStats)

Tamaño y cuantiles de luz solar para cada segmento del techo

solarPanels[]

object (SolarPanel)

Cada SolarPanel describe un único panel solar. Se enumeran en el orden en que el algoritmo de diseño de panel lo colocó. Por lo general, aunque no siempre, esto se hace en orden decreciente de la producción energética anual.

solarPanelConfigs[]

object (SolarPanelConfig)

Cada SolarPanelConfig describe una disposición diferente de paneles solares en el techo. Están en orden de aumento en la cantidad de paneles. El SolarPanelConfig con panelsCount=N se basa en los primeros N paneles de la lista solarPanels. Este campo solo se completa si caben al menos 4 paneles en un techo.

financialAnalyses[]

object (FinancialAnalysis)

Un FinancialAnalysis representa el ahorro por usar energía solar suponiendo que se cobra una factura mensual y un proveedor de electricidad determinados. Están ordenadas de forma ascendente por el importe de la factura mensual. Este campo estará vacío para los edificios de áreas en las que la API de Solar no tenga suficiente información para realizar cálculos financieros.

SizeAndSunshineStats

Cuantiles de tamaño y sol de un techo, o parte de él.

Representación JSON
{
  "areaMeters2": number,
  "sunshineQuantiles": [
    number
  ],
  "groundAreaMeters2": number
}
Campos
areaMeters2

number

El área del techo o del tramo, en m^2. Es el área del techo (considera la inclinación), no la superficie del suelo.

sunshineQuantiles[]

number

Cuantiles del sol puntual en el área. Si aquí hay valores N, representa los iles (N-1). Por ejemplo, si hay 5 valores, entonces serían los cuartiles (mín., 25%, 50%, 75%, máx.). Los valores están en kWh/kW anuales, como maxSunshineHoursPerYear.

groundAreaMeters2

number

Área de superficie terrestre cubierta por el techo, en m^2.

RoofSegmentSizeAndSunshineStats

Información sobre los cuantiles de tamaño y soledad de un segmento del techo.

Representación JSON
{
  "stats": {
    object (SizeAndSunshineStats)
  },
  "center": {
    object (LatLng)
  },
  "boundingBox": {
    object (LatLngBox)
  },
  "pitchDegrees": number,
  "azimuthDegrees": number,
  "planeHeightAtCenterMeters": number
}
Campos
stats

object (SizeAndSunshineStats)

Tamaño total y cuantiles de luz solar para el segmento del techo.

center

object (LatLng)

Es un punto cercano al centro del tramo del techo.

boundingBox

object (LatLngBox)

El cuadro delimitador del tramo del techo.

pitchDegrees

number

Ángulo del tramo del techo en relación con el plano terrestre teórico. 0 = paralelo al suelo, 90 = perpendicular al suelo.

azimuthDegrees

number

Dirección de la brújula hacia la que apunta el tramo del techo. 0 = norte, 90 = este, 180 = sur Para un plano "plano" segmento del techo (pitchDegrees muy cerca de 0), el azimuth no está bien definido, por lo que, para mantener la coherencia, lo definimos de manera arbitraria como 0 (norte).

planeHeightAtCenterMeters

number

Es la altura del plano del tramo del techo, en metros sobre el nivel del mar, en el punto designado por center. Junto con la inclinación, el azimut y la ubicación central, esto define completamente el plano del tramo del techo.

SolarPanel

SolarPanel describe la posición, la orientación y la producción de un solo panel solar. Consulta los campos panelHeightMeters, panelWidthMeters y panelCapacityWatts en SolarPotential para obtener información sobre los parámetros del panel.

Representación JSON
{
  "center": {
    object (LatLng)
  },
  "orientation": enum (SolarPanelOrientation),
  "yearlyEnergyDcKwh": number,
  "segmentIndex": integer
}
Campos
center

object (LatLng)

El centro del panel.

orientation

enum (SolarPanelOrientation)

La orientación del panel.

yearlyEnergyDcKwh

number

Cuánta energía solar capta este diseño en el transcurso de un año, en kWh de CC.

segmentIndex

integer

Índice en roofSegmentStats del RoofSegmentSizeAndSunshineStats que corresponde al segmento del techo en el que se colocó este panel.

SolarPanelOrientation

Es la orientación de un panel solar. Esto se debe interpretar en relación con el azimut del tramo del techo sobre el que se colocó el panel.

Enumeraciones
SOLAR_PANEL_ORIENTATION_UNSPECIFIED No se conoce la orientación del panel.
LANDSCAPE Un panel LANDSCAPE tiene su borde largo perpendicular a la dirección azimuth del tramo del techo sobre el que se colocó.
PORTRAIT Un panel PORTRAIT tiene su borde largo paralelo a la dirección azimuth del tramo del techo sobre el que se colocó.

SolarPanelConfig

SolarPanelConfig describe una ubicación particular de paneles solares en el techo.

Representación JSON
{
  "panelsCount": integer,
  "yearlyEnergyDcKwh": number,
  "roofSegmentSummaries": [
    {
      object (RoofSegmentSummary)
    }
  ]
}
Campos
panelsCount

integer

Cantidad total de paneles Ten en cuenta que esto es redundante (la suma de) los campos correspondientes en roofSegmentSummaries.

yearlyEnergyDcKwh

number

Cuánta energía solar capta este diseño en el transcurso de un año, en kWh de CC, suponiendo que se usan los paneles descritos anteriormente.

roofSegmentSummaries[]

object (RoofSegmentSummary)

Información sobre la producción de cada segmento de techo que tenga al menos un panel en este diseño. roofSegmentSummaries[i] describe el segmento de techo i-th, incluido su tamaño, la producción esperada y la orientación.

RoofSegmentSummary

Información sobre un tramo del techo del edificio, con algunos paneles colocados.

Representación JSON
{
  "panelsCount": integer,
  "yearlyEnergyDcKwh": number,
  "pitchDegrees": number,
  "azimuthDegrees": number,
  "segmentIndex": integer
}
Campos
panelsCount

integer

La cantidad total de paneles en este segmento.

yearlyEnergyDcKwh

number

Cuánta energía solar capta esta parte del diseño en el transcurso de un año, en kWh de CC, suponiendo que se usan los paneles descritos anteriormente.

pitchDegrees

number

Ángulo del tramo del techo en relación con el plano terrestre teórico. 0 = paralelo al suelo, 90 = perpendicular al suelo.

azimuthDegrees

number

Dirección de la brújula hacia la que apunta el tramo del techo. 0 = norte, 90 = este, 180 = sur Para un plano "plano" segmento del techo (pitchDegrees muy cerca de 0), el azimuth no está bien definido, por lo que, para mantener la coherencia, lo definimos de manera arbitraria como 0 (norte).

segmentIndex

integer

Índice en roofSegmentStats del RoofSegmentSizeAndSunshineStats correspondiente.

FinancialAnalysis

Análisis del costo y los beneficios del diseño solar óptimo para un tamaño de factura de electricidad en particular.

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

object (Money)

Es la factura mensual de electricidad que se asume en este análisis.

defaultBill

boolean

Indica si el tamaño de la factura se seleccionó como la factura predeterminada para el área en la que se encuentra este edificio. Exactamente un FinancialAnalysis en BuildingSolarPotential debe tener defaultBill configurado.

averageKwhPerMonth

number

Cuánta electricidad consume la casa en un mes promedio, según el tamaño de la factura y las tarifas de electricidad locales.

financialDetails

object (FinancialDetails)

Información financiera que se aplica independientemente del método de financiación utilizado.

leasingSavings

object (LeasingSavings)

Costo y beneficio de alquilar los paneles solares

cashPurchaseSavings

object (CashPurchaseSavings)

Costo y beneficio de comprar los paneles solares en efectivo

financedPurchaseSavings

object (FinancedPurchaseSavings)

Costo y beneficio de comprar los paneles solares mediante la financiación de la compra

panelConfigIndex

integer

Índice en solarPanelConfigs del diseño solar óptimo para este tamaño de factura. Puede ser -1, lo que indica que no hay diseño. En este caso, los mensajes secundarios restantes se omitirán.

Dinero

Representa un importe de dinero con su tipo de moneda.

Representación JSON
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
Campos
currencyCode

string

Es el código de moneda de tres letras definido en la norma ISO 4217.

units

string (int64 format)

La unidad entera del importe. Por ejemplo, si currencyCode es "USD", entonces 1 unidad es 1 dólar estadounidense.

nanos

integer

Número de unidades nano (10^-9) del importe. Debe ser un valor entre -999,999,999 y +999,999,999. Si units es positivo, nanos debe ser positivo o cero. Si units es cero, nanos puede ser positivo, cero o negativo. Si units es negativo, nanos debe ser negativo o cero. Por ejemplo, $-1.75 se representa como units=-1 y nanos=-750,000,000.

FinancialDetails

Detalles de un análisis financiero. Algunos de estos detalles ya se almacenan en niveles superiores (p.ej., costo adicional). Los importes totales se extienden durante un período definido por el campo panelLifetimeYears en SolarPotential. Nota: El costo de compra de los paneles se proporciona en el campo outOfPocketCost de CashPurchaseSavings.

Representación 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
}
Campos
initialAcKwhPerYear

number

La cantidad de kWh de CA que creemos que generarán los paneles solares durante el primer año.

remainingLifetimeUtilityBill

object (Money)

Factura de electricidad por la electricidad no producida por energía solar, durante la vida útil de los paneles

federalIncentive

object (Money)

Cantidad de dinero disponible de los incentivos federales esto se aplica si el usuario compra (con o sin préstamo) los paneles.

stateIncentive

object (Money)

Cantidad de dinero disponible de los incentivos estatales esto se aplica si el usuario compra (con o sin préstamo) los paneles.

utilityIncentive

object (Money)

Cantidad de dinero disponible en incentivos de servicios públicos esto se aplica si el usuario compra (con o sin préstamo) los paneles.

lifetimeSrecTotal

object (Money)

Cantidad de dinero que el usuario recibirá de Créditos de energía renovable solar durante la vida útil del panel esto se aplica si el usuario compra (con o sin préstamo) los paneles.

costOfElectricityWithoutSolar

object (Money)

Es el costo total de electricidad que el usuario habría pagado durante el período de su vida útil si no hubiera instalado la energía solar.

netMeteringAllowed

boolean

Indica si se permite la medición neta.

solarPercentage

number

Porcentaje (0-100) de la energía del usuario que suministra energía solar. Válido durante el primer año, pero aproximadamente correcto para años futuros.

percentageExportedToGrid

number

El porcentaje (de 0 a 100) de producción de electricidad solar que asumimos se exportó a la red, en función del primer trimestre de producción. Esto afecta los cálculos si no se permite la medición neta.

LeasingSavings

Costo y beneficio de alquilar una configuración específica de paneles solares con un uso de electricidad específico.

Representación JSON
{
  "leasesAllowed": boolean,
  "leasesSupported": boolean,
  "annualLeasingCost": {
    object (Money)
  },
  "savings": {
    object (SavingsOverTime)
  }
}
Campos
leasesAllowed

boolean

Si se permiten los arrendamientos en esta jurisdicción (no se permiten en algunos estados). Si este campo es falso, es probable que se deban ignorar los valores de este mensaje.

leasesSupported

boolean

Si el motor de cálculo financiero respalda los alquileres Si este campo es falso, es probable que se deban ignorar los valores de este mensaje. Esto es independiente de leasesAllowed: en algunas áreas, se permiten arrendamientos, pero en condiciones que los modelos financieros no controlan.

annualLeasingCost

object (Money)

Costo de alquiler anual estimado.

savings

object (SavingsOverTime)

Cuánto se ahorra (o no) a lo largo del período de vida.

SavingsOverTime

Información financiera que se comparte entre diferentes métodos de financiación.

Representación JSON
{
  "savingsYear1": {
    object (Money)
  },
  "savingsYear20": {
    object (Money)
  },
  "presentValueOfSavingsYear20": {
    object (Money)
  },
  "savingsLifetime": {
    object (Money)
  },
  "presentValueOfSavingsLifetime": {
    object (Money)
  },
  "financiallyViable": boolean
}
Campos
savingsYear1

object (Money)

Ahorros durante el primer año posterior a la instalación de los paneles.

savingsYear20

object (Money)

Ahorros en los primeros veinte años a partir de la instalación de los paneles.

presentValueOfSavingsYear20

object (Money)

Usando la tasa de descuento asumida, ¿cuál es el valor actual del ahorro acumulado en 20 años?

savingsLifetime

object (Money)

Ahorros en todo el ciclo de vida del panel.

presentValueOfSavingsLifetime

object (Money)

Usando la tasa de descuento asumida, ¿cuál es el valor actual del ahorro acumulado durante el ciclo de vida?

financiallyViable

boolean

Indica si esta situación es financieramente viable. Será falso en situaciones con una viabilidad financiera deficiente (p.ej., pérdida de dinero).

CashPurchaseSavings

Costo y beneficio de la compra directa de una configuración determinada de paneles solares con un uso particular de electricidad.

Representación JSON
{
  "outOfPocketCost": {
    object (Money)
  },
  "upfrontCost": {
    object (Money)
  },
  "rebateValue": {
    object (Money)
  },
  "savings": {
    object (SavingsOverTime)
  },
  "paybackYears": number
}
Campos
outOfPocketCost

object (Money)

Costo inicial antes de los incentivos fiscales: Es el importe que se debe pagar. Compara esto con upfrontCost, que viene después de los incentivos fiscales.

upfrontCost

object (Money)

Costo inicial después de los incentivos fiscales: Corresponde al importe que se debe pagar durante el primer año. Compara esto con outOfPocketCost, que es anterior a los incentivos fiscales.

rebateValue

object (Money)

El valor de todos los reembolsos de impuestos.

savings

object (SavingsOverTime)

Cuánto se ahorra (o no) a lo largo del período de vida.

paybackYears

number

Cantidad de años que faltan para la recuperación de la inversión. Un valor negativo significa que la recuperación nunca ocurre dentro del período de vigencia.

FinancedPurchaseSavings

Costo y beneficio de usar un préstamo para comprar una configuración específica de paneles solares con un uso de electricidad específico.

Representación JSON
{
  "annualLoanPayment": {
    object (Money)
  },
  "rebateValue": {
    object (Money)
  },
  "loanInterestRate": number,
  "savings": {
    object (SavingsOverTime)
  }
}
Campos
annualLoanPayment

object (Money)

Pagos anuales de préstamos

rebateValue

object (Money)

El valor de todos los reembolsos de impuestos (incluido el Crédito Fiscal a la Inversión Federal [ITC]).

loanInterestRate

number

Tasa de interés de los préstamos asumidos en este conjunto de cálculos.

savings

object (SavingsOverTime)

Cuánto se ahorra (o no) a lo largo del período de vida.