Variables
DataLayerView_name, DataLayerView_value
var
(
DataLayerView_name
=
map
[
int32
]
string
{
0
:
"DATA_LAYER_VIEW_UNSPECIFIED"
,
1
:
"DSM_LAYER"
,
2
:
"IMAGERY_LAYERS"
,
3
:
"IMAGERY_AND_ANNUAL_FLUX_LAYERS"
,
4
:
"IMAGERY_AND_ALL_FLUX_LAYERS"
,
5
:
"FULL_LAYERS"
,
}
DataLayerView_value
=
map
[
string
]
int32
{
"DATA_LAYER_VIEW_UNSPECIFIED"
:
0
,
"DSM_LAYER"
:
1
,
"IMAGERY_LAYERS"
:
2
,
"IMAGERY_AND_ANNUAL_FLUX_LAYERS"
:
3
,
"IMAGERY_AND_ALL_FLUX_LAYERS"
:
4
,
"FULL_LAYERS"
:
5
,
}
)
Enum value maps for DataLayerView.
ImageryQuality_name, ImageryQuality_value
var
(
ImageryQuality_name
=
map
[
int32
]
string
{
0
:
"IMAGERY_QUALITY_UNSPECIFIED"
,
1
:
"HIGH"
,
2
:
"MEDIUM"
,
3
:
"LOW"
,
}
ImageryQuality_value
=
map
[
string
]
int32
{
"IMAGERY_QUALITY_UNSPECIFIED"
:
0
,
"HIGH"
:
1
,
"MEDIUM"
:
2
,
"LOW"
:
3
,
}
)
Enum value maps for ImageryQuality.
SolarPanelOrientation_name, SolarPanelOrientation_value
var
(
SolarPanelOrientation_name
=
map
[
int32
]
string
{
0
:
"SOLAR_PANEL_ORIENTATION_UNSPECIFIED"
,
1
:
"LANDSCAPE"
,
2
:
"PORTRAIT"
,
}
SolarPanelOrientation_value
=
map
[
string
]
int32
{
"SOLAR_PANEL_ORIENTATION_UNSPECIFIED"
:
0
,
"LANDSCAPE"
:
1
,
"PORTRAIT"
:
2
,
}
)
Enum value maps for SolarPanelOrientation.
File_google_maps_solar_v1_solar_service_proto
var
File_google_maps_solar_v1_solar_service_proto
protoreflect
.
FileDescriptor
Functions
func RegisterSolarServer
func
RegisterSolarServer
(
s
*
grpc
.
Server
,
srv
SolarServer
)
BuildingInsights
type
BuildingInsights
struct
{
Name
string
`protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Center
*
latlng
.
LatLng
`protobuf:"bytes,2,opt,name=center,proto3" json:"center,omitempty"`
BoundingBox
*
LatLngBox
`protobuf:"bytes,9,opt,name=bounding_box,json=boundingBox,proto3" json:"bounding_box,omitempty"`
ImageryDate
*
date
.
Date
`protobuf:"bytes,3,opt,name=imagery_date,json=imageryDate,proto3" json:"imagery_date,omitempty"`
ImageryProcessedDate
*
date
.
Date
`protobuf:"bytes,11,opt,name=imagery_processed_date,json=imageryProcessedDate,proto3" json:"imagery_processed_date,omitempty"`
PostalCode
string
`protobuf:"bytes,4,opt,name=postal_code,json=postalCode,proto3" json:"postal_code,omitempty"`
AdministrativeArea
string
`protobuf:"bytes,5,opt,name=administrative_area,json=administrativeArea,proto3" json:"administrative_area,omitempty"`
StatisticalArea
string
`protobuf:"bytes,6,opt,name=statistical_area,json=statisticalArea,proto3" json:"statistical_area,omitempty"`
RegionCode
string
`protobuf:"bytes,7,opt,name=region_code,json=regionCode,proto3" json:"region_code,omitempty"`
SolarPotential
*
SolarPotential
`protobuf:"bytes,8,opt,name=solar_potential,json=solarPotential,proto3" json:"solar_potential,omitempty"`
ImageryQuality
ImageryQuality
""
/* 146 byte string literal not displayed */
}
Response message for Solar.FindClosestBuildingInsights
.
Information about the location, dimensions, and solar potential of a
building.
func (*BuildingInsights) Descriptor
func
(
*
BuildingInsights
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use BuildingInsights.ProtoReflect.Descriptor instead.
func (*BuildingInsights) GetAdministrativeArea
func
(
x
*
BuildingInsights
)
GetAdministrativeArea
()
string
func (*BuildingInsights) GetBoundingBox
func
(
x
*
BuildingInsights
)
GetBoundingBox
()
*
LatLngBox
func (*BuildingInsights) GetCenter
func
(
x
*
BuildingInsights
)
GetCenter
()
*
latlng
.
LatLng
func (*BuildingInsights) GetImageryDate
func
(
x
*
BuildingInsights
)
GetImageryDate
()
*
date
.
Date
func (*BuildingInsights) GetImageryProcessedDate
func
(
x
*
BuildingInsights
)
GetImageryProcessedDate
()
*
date
.
Date
func (*BuildingInsights) GetImageryQuality
func
(
x
*
BuildingInsights
)
GetImageryQuality
()
ImageryQuality
func (*BuildingInsights) GetName
func
(
x
*
BuildingInsights
)
GetName
()
string
func (*BuildingInsights) GetPostalCode
func
(
x
*
BuildingInsights
)
GetPostalCode
()
string
func (*BuildingInsights) GetRegionCode
func
(
x
*
BuildingInsights
)
GetRegionCode
()
string
func (*BuildingInsights) GetSolarPotential
func
(
x
*
BuildingInsights
)
GetSolarPotential
()
*
SolarPotential
func (*BuildingInsights) GetStatisticalArea
func
(
x
*
BuildingInsights
)
GetStatisticalArea
()
string
func (*BuildingInsights) ProtoMessage
func
(
*
BuildingInsights
)
ProtoMessage
()
func (*BuildingInsights) ProtoReflect
func
(
x
*
BuildingInsights
)
ProtoReflect
()
protoreflect
.
Message
func (*BuildingInsights) Reset
func
(
x
*
BuildingInsights
)
Reset
()
func (*BuildingInsights) String
func
(
x
*
BuildingInsights
)
String
()
string
CashPurchaseSavings
type
CashPurchaseSavings
struct
{
// Initial cost before tax incentives: the amount that must be paid
// out-of-pocket. Contrast with `upfront_cost`, which is after tax incentives.
OutOfPocketCost
*
money
.
Money
`protobuf:"bytes,1,opt,name=out_of_pocket_cost,json=outOfPocketCost,proto3" json:"out_of_pocket_cost,omitempty"`
// Initial cost after tax incentives: it's the amount that must be paid
// during first year. Contrast with `out_of_pocket_cost`, which is before tax
// incentives.
UpfrontCost
*
money
.
Money
`protobuf:"bytes,2,opt,name=upfront_cost,json=upfrontCost,proto3" json:"upfront_cost,omitempty"`
// The value of all tax rebates.
RebateValue
*
money
.
Money
`protobuf:"bytes,3,opt,name=rebate_value,json=rebateValue,proto3" json:"rebate_value,omitempty"`
// Number of years until payback occurs. A negative value means payback
// never occurs within the lifetime period.
PaybackYears
*
float32
`protobuf:"fixed32,4,opt,name=payback_years,json=paybackYears,proto3,oneof" json:"payback_years,omitempty"`
// How much is saved (or not) over the lifetime period.
Savings
*
SavingsOverTime
`protobuf:"bytes,5,opt,name=savings,proto3" json:"savings,omitempty"`
// contains filtered or unexported fields
}
Cost and benefit of an outright purchase of a particular configuration of solar panels with a particular electricity usage.
func (*CashPurchaseSavings) Descriptor
func
(
*
CashPurchaseSavings
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use CashPurchaseSavings.ProtoReflect.Descriptor instead.
func (*CashPurchaseSavings) GetOutOfPocketCost
func
(
x
*
CashPurchaseSavings
)
GetOutOfPocketCost
()
*
money
.
Money
func (*CashPurchaseSavings) GetPaybackYears
func
(
x
*
CashPurchaseSavings
)
GetPaybackYears
()
float32
func (*CashPurchaseSavings) GetRebateValue
func
(
x
*
CashPurchaseSavings
)
GetRebateValue
()
*
money
.
Money
func (*CashPurchaseSavings) GetSavings
func
(
x
*
CashPurchaseSavings
)
GetSavings
()
*
SavingsOverTime
func (*CashPurchaseSavings) GetUpfrontCost
func
(
x
*
CashPurchaseSavings
)
GetUpfrontCost
()
*
money
.
Money
func (*CashPurchaseSavings) ProtoMessage
func
(
*
CashPurchaseSavings
)
ProtoMessage
()
func (*CashPurchaseSavings) ProtoReflect
func
(
x
*
CashPurchaseSavings
)
ProtoReflect
()
protoreflect
.
Message
func (*CashPurchaseSavings) Reset
func
(
x
*
CashPurchaseSavings
)
Reset
()
func (*CashPurchaseSavings) String
func
(
x
*
CashPurchaseSavings
)
String
()
string
DataLayerView
type
DataLayerView
int32
What subset of the solar information to return.
DataLayerView_DATA_LAYER_VIEW_UNSPECIFIED, DataLayerView_DSM_LAYER, DataLayerView_IMAGERY_LAYERS, DataLayerView_IMAGERY_AND_ANNUAL_FLUX_LAYERS, DataLayerView_IMAGERY_AND_ALL_FLUX_LAYERS, DataLayerView_FULL_LAYERS
const
(
// Equivalent to FULL.
DataLayerView_DATA_LAYER_VIEW_UNSPECIFIED
DataLayerView
=
0
// Get the DSM only.
DataLayerView_DSM_LAYER
DataLayerView
=
1
// Get the DSM, RGB, and mask.
DataLayerView_IMAGERY_LAYERS
DataLayerView
=
2
// Get the DSM, RGB, mask, and annual flux.
DataLayerView_IMAGERY_AND_ANNUAL_FLUX_LAYERS
DataLayerView
=
3
// Get the DSM, RGB, mask, annual flux, and monthly flux.
DataLayerView_IMAGERY_AND_ALL_FLUX_LAYERS
DataLayerView
=
4
// Get all data.
DataLayerView_FULL_LAYERS
DataLayerView
=
5
)
func (DataLayerView) Descriptor
func
(
DataLayerView
)
Descriptor
()
protoreflect
.
EnumDescriptor
func (DataLayerView) Enum
func
(
x
DataLayerView
)
Enum
()
*
DataLayerView
func (DataLayerView) EnumDescriptor
func
(
DataLayerView
)
EnumDescriptor
()
([]
byte
,
[]
int
)
Deprecated: Use DataLayerView.Descriptor instead.
func (DataLayerView) Number
func
(
x
DataLayerView
)
Number
()
protoreflect
.
EnumNumber
func (DataLayerView) String
func
(
x
DataLayerView
)
String
()
string
func (DataLayerView) Type
func
(
DataLayerView
)
Type
()
protoreflect
.
EnumType
DataLayers
type
DataLayers
struct
{
ImageryDate
*
date
.
Date
`protobuf:"bytes,1,opt,name=imagery_date,json=imageryDate,proto3" json:"imagery_date,omitempty"`
ImageryProcessedDate
*
date
.
Date
`protobuf:"bytes,2,opt,name=imagery_processed_date,json=imageryProcessedDate,proto3" json:"imagery_processed_date,omitempty"`
DsmUrl
string
`protobuf:"bytes,3,opt,name=dsm_url,json=dsmUrl,proto3" json:"dsm_url,omitempty"`
RgbUrl
string
`protobuf:"bytes,4,opt,name=rgb_url,json=rgbUrl,proto3" json:"rgb_url,omitempty"`
MaskUrl
string
`protobuf:"bytes,5,opt,name=mask_url,json=maskUrl,proto3" json:"mask_url,omitempty"`
AnnualFluxUrl
string
`protobuf:"bytes,6,opt,name=annual_flux_url,json=annualFluxUrl,proto3" json:"annual_flux_url,omitempty"`
MonthlyFluxUrl
string
`protobuf:"bytes,7,opt,name=monthly_flux_url,json=monthlyFluxUrl,proto3" json:"monthly_flux_url,omitempty"`
HourlyShadeUrls
[]
string
`protobuf:"bytes,8,rep,name=hourly_shade_urls,json=hourlyShadeUrls,proto3" json:"hourly_shade_urls,omitempty"`
ImageryQuality
ImageryQuality
""
/* 145 byte string literal not displayed */
}
Information about the solar potential of a region. The actual data
are contained in a number of GeoTIFF files covering the requested
region, for which this message contains URLs: Each string in the DataLayers
message contains a URL from which the
corresponding GeoTIFF can be fetched. These URLs are valid for a
few hours after they've been generated. Most of the GeoTIFF files
are at a resolution of 0.1m/pixel, but the monthly flux file is at
0.5m/pixel, and the hourly shade files are at 1m/pixel. If a pixel_size_meters
value was specified in the GetDataLayersRequest
, then the minimum resolution in the GeoTIFF
files will be that value.
func (*DataLayers) Descriptor
func
(
*
DataLayers
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use DataLayers.ProtoReflect.Descriptor instead.
func (*DataLayers) GetAnnualFluxUrl
func
(
x
*
DataLayers
)
GetAnnualFluxUrl
()
string
func (*DataLayers) GetDsmUrl
func
(
x
*
DataLayers
)
GetDsmUrl
()
string
func (*DataLayers) GetHourlyShadeUrls
func
(
x
*
DataLayers
)
GetHourlyShadeUrls
()
[]
string
func (*DataLayers) GetImageryDate
func
(
x
*
DataLayers
)
GetImageryDate
()
*
date
.
Date
func (*DataLayers) GetImageryProcessedDate
func
(
x
*
DataLayers
)
GetImageryProcessedDate
()
*
date
.
Date
func (*DataLayers) GetImageryQuality
func
(
x
*
DataLayers
)
GetImageryQuality
()
ImageryQuality
func (*DataLayers) GetMaskUrl
func
(
x
*
DataLayers
)
GetMaskUrl
()
string
func (*DataLayers) GetMonthlyFluxUrl
func
(
x
*
DataLayers
)
GetMonthlyFluxUrl
()
string
func (*DataLayers) GetRgbUrl
func
(
x
*
DataLayers
)
GetRgbUrl
()
string
func (*DataLayers) ProtoMessage
func
(
*
DataLayers
)
ProtoMessage
()
func (*DataLayers) ProtoReflect
func
(
x
*
DataLayers
)
ProtoReflect
()
protoreflect
.
Message
func (*DataLayers) Reset
func
(
x
*
DataLayers
)
Reset
()
func (*DataLayers) String
func
(
x
*
DataLayers
)
String
()
string
FinancedPurchaseSavings
type
FinancedPurchaseSavings
struct
{
// Annual loan payments.
AnnualLoanPayment
*
money
.
Money
`protobuf:"bytes,1,opt,name=annual_loan_payment,json=annualLoanPayment,proto3" json:"annual_loan_payment,omitempty"`
// The value of all tax rebates (including Federal Investment Tax Credit
// (ITC)).
RebateValue
*
money
.
Money
`protobuf:"bytes,2,opt,name=rebate_value,json=rebateValue,proto3" json:"rebate_value,omitempty"`
// The interest rate on loans assumed in this set of calculations.
LoanInterestRate
float32
`protobuf:"fixed32,3,opt,name=loan_interest_rate,json=loanInterestRate,proto3" json:"loan_interest_rate,omitempty"`
// How much is saved (or not) over the lifetime period.
Savings
*
SavingsOverTime
`protobuf:"bytes,4,opt,name=savings,proto3" json:"savings,omitempty"`
// contains filtered or unexported fields
}
Cost and benefit of using a loan to buy a particular configuration of solar panels with a particular electricity usage.
func (*FinancedPurchaseSavings) Descriptor
func
(
*
FinancedPurchaseSavings
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use FinancedPurchaseSavings.ProtoReflect.Descriptor instead.
func (*FinancedPurchaseSavings) GetAnnualLoanPayment
func
(
x
*
FinancedPurchaseSavings
)
GetAnnualLoanPayment
()
*
money
.
Money
func (*FinancedPurchaseSavings) GetLoanInterestRate
func
(
x
*
FinancedPurchaseSavings
)
GetLoanInterestRate
()
float32
func (*FinancedPurchaseSavings) GetRebateValue
func
(
x
*
FinancedPurchaseSavings
)
GetRebateValue
()
*
money
.
Money
func (*FinancedPurchaseSavings) GetSavings
func
(
x
*
FinancedPurchaseSavings
)
GetSavings
()
*
SavingsOverTime
func (*FinancedPurchaseSavings) ProtoMessage
func
(
*
FinancedPurchaseSavings
)
ProtoMessage
()
func (*FinancedPurchaseSavings) ProtoReflect
func
(
x
*
FinancedPurchaseSavings
)
ProtoReflect
()
protoreflect
.
Message
func (*FinancedPurchaseSavings) Reset
func
(
x
*
FinancedPurchaseSavings
)
Reset
()
func (*FinancedPurchaseSavings) String
func
(
x
*
FinancedPurchaseSavings
)
String
()
string
FinancialAnalysis
type
FinancialAnalysis
struct
{
MonthlyBill
*
money
.
Money
`protobuf:"bytes,3,opt,name=monthly_bill,json=monthlyBill,proto3" json:"monthly_bill,omitempty"`
DefaultBill
bool
`protobuf:"varint,4,opt,name=default_bill,json=defaultBill,proto3" json:"default_bill,omitempty"`
AverageKwhPerMonth
float32
`protobuf:"fixed32,5,opt,name=average_kwh_per_month,json=averageKwhPerMonth,proto3" json:"average_kwh_per_month,omitempty"`
PanelConfigIndex
*
int32
`protobuf:"varint,6,opt,name=panel_config_index,json=panelConfigIndex,proto3,oneof" json:"panel_config_index,omitempty"`
FinancialDetails
*
FinancialDetails
`protobuf:"bytes,7,opt,name=financial_details,json=financialDetails,proto3" json:"financial_details,omitempty"`
LeasingSavings
*
LeasingSavings
`protobuf:"bytes,8,opt,name=leasing_savings,json=leasingSavings,proto3" json:"leasing_savings,omitempty"`
CashPurchaseSavings
*
CashPurchaseSavings
`protobuf:"bytes,9,opt,name=cash_purchase_savings,json=cashPurchaseSavings,proto3" json:"cash_purchase_savings,omitempty"`
FinancedPurchaseSavings
*
FinancedPurchaseSavings
""
/* 133 byte string literal not displayed */
}
Analysis of the cost and benefits of the optimum solar layout for a particular electric bill size.
func (*FinancialAnalysis) Descriptor
func
(
*
FinancialAnalysis
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use FinancialAnalysis.ProtoReflect.Descriptor instead.
func (*FinancialAnalysis) GetAverageKwhPerMonth
func
(
x
*
FinancialAnalysis
)
GetAverageKwhPerMonth
()
float32
func (*FinancialAnalysis) GetCashPurchaseSavings
func
(
x
*
FinancialAnalysis
)
GetCashPurchaseSavings
()
*
CashPurchaseSavings
func (*FinancialAnalysis) GetDefaultBill
func
(
x
*
FinancialAnalysis
)
GetDefaultBill
()
bool
func (*FinancialAnalysis) GetFinancedPurchaseSavings
func
(
x
*
FinancialAnalysis
)
GetFinancedPurchaseSavings
()
*
FinancedPurchaseSavings
func (*FinancialAnalysis) GetFinancialDetails
func
(
x
*
FinancialAnalysis
)
GetFinancialDetails
()
*
FinancialDetails
func (*FinancialAnalysis) GetLeasingSavings
func
(
x
*
FinancialAnalysis
)
GetLeasingSavings
()
*
LeasingSavings
func (*FinancialAnalysis) GetMonthlyBill
func
(
x
*
FinancialAnalysis
)
GetMonthlyBill
()
*
money
.
Money
func (*FinancialAnalysis) GetPanelConfigIndex
func
(
x
*
FinancialAnalysis
)
GetPanelConfigIndex
()
int32
func (*FinancialAnalysis) ProtoMessage
func
(
*
FinancialAnalysis
)
ProtoMessage
()
func (*FinancialAnalysis) ProtoReflect
func
(
x
*
FinancialAnalysis
)
ProtoReflect
()
protoreflect
.
Message
func (*FinancialAnalysis) Reset
func
(
x
*
FinancialAnalysis
)
Reset
()
func (*FinancialAnalysis) String
func
(
x
*
FinancialAnalysis
)
String
()
string
FinancialDetails
type
FinancialDetails
struct
{
InitialAcKwhPerYear
float32
`protobuf:"fixed32,1,opt,name=initial_ac_kwh_per_year,json=initialAcKwhPerYear,proto3" json:"initial_ac_kwh_per_year,omitempty"`
RemainingLifetimeUtilityBill
*
money
.
Money
""
/* 149 byte string literal not displayed */
FederalIncentive
*
money
.
Money
`protobuf:"bytes,3,opt,name=federal_incentive,json=federalIncentive,proto3" json:"federal_incentive,omitempty"`
StateIncentive
*
money
.
Money
`protobuf:"bytes,4,opt,name=state_incentive,json=stateIncentive,proto3" json:"state_incentive,omitempty"`
UtilityIncentive
*
money
.
Money
`protobuf:"bytes,5,opt,name=utility_incentive,json=utilityIncentive,proto3" json:"utility_incentive,omitempty"`
LifetimeSrecTotal
*
money
.
Money
`protobuf:"bytes,6,opt,name=lifetime_srec_total,json=lifetimeSrecTotal,proto3" json:"lifetime_srec_total,omitempty"`
CostOfElectricityWithoutSolar
*
money
.
Money
""
/* 154 byte string literal not displayed */
NetMeteringAllowed
bool
`protobuf:"varint,8,opt,name=net_metering_allowed,json=netMeteringAllowed,proto3" json:"net_metering_allowed,omitempty"`
SolarPercentage
*
float32
`protobuf:"fixed32,9,opt,name=solar_percentage,json=solarPercentage,proto3,oneof" json:"solar_percentage,omitempty"`
PercentageExportedToGrid
*
float32
""
/* 146 byte string literal not displayed */
}
Details of a financial analysis. Some of these details are already stored at higher levels (e.g., out of pocket cost). Total money amounts are over a lifetime period defined by the [panel_lifetime_years] [google.maps.solar.v1.SolarPotential.panel_lifetime_years] field in [SolarPotential] [google.maps.solar.v1.SolarPotential]. Note: The out of pocket cost of purchasing the panels is given in the [out_of_pocket_cost] [google.maps.solar.v1.CashPurchaseSavings.out_of_pocket_cost] field in [CashPurchaseSavings] [google.maps.solar.v1.CashPurchaseSavings].
func (*FinancialDetails) Descriptor
func
(
*
FinancialDetails
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use FinancialDetails.ProtoReflect.Descriptor instead.
func (*FinancialDetails) GetCostOfElectricityWithoutSolar
func
(
x
*
FinancialDetails
)
GetCostOfElectricityWithoutSolar
()
*
money
.
Money
func (*FinancialDetails) GetFederalIncentive
func
(
x
*
FinancialDetails
)
GetFederalIncentive
()
*
money
.
Money
func (*FinancialDetails) GetInitialAcKwhPerYear
func
(
x
*
FinancialDetails
)
GetInitialAcKwhPerYear
()
float32
func (*FinancialDetails) GetLifetimeSrecTotal
func
(
x
*
FinancialDetails
)
GetLifetimeSrecTotal
()
*
money
.
Money
func (*FinancialDetails) GetNetMeteringAllowed
func
(
x
*
FinancialDetails
)
GetNetMeteringAllowed
()
bool
func (*FinancialDetails) GetPercentageExportedToGrid
func
(
x
*
FinancialDetails
)
GetPercentageExportedToGrid
()
float32
func (*FinancialDetails) GetRemainingLifetimeUtilityBill
func
(
x
*
FinancialDetails
)
GetRemainingLifetimeUtilityBill
()
*
money
.
Money
func (*FinancialDetails) GetSolarPercentage
func
(
x
*
FinancialDetails
)
GetSolarPercentage
()
float32
func (*FinancialDetails) GetStateIncentive
func
(
x
*
FinancialDetails
)
GetStateIncentive
()
*
money
.
Money
func (*FinancialDetails) GetUtilityIncentive
func
(
x
*
FinancialDetails
)
GetUtilityIncentive
()
*
money
.
Money
func (*FinancialDetails) ProtoMessage
func
(
*
FinancialDetails
)
ProtoMessage
()
func (*FinancialDetails) ProtoReflect
func
(
x
*
FinancialDetails
)
ProtoReflect
()
protoreflect
.
Message
func (*FinancialDetails) Reset
func
(
x
*
FinancialDetails
)
Reset
()
func (*FinancialDetails) String
func
(
x
*
FinancialDetails
)
String
()
string
FindClosestBuildingInsightsRequest
type
FindClosestBuildingInsightsRequest
struct
{
Location
*
latlng
.
LatLng
`protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"`
RequiredQuality
ImageryQuality
""
/* 148 byte string literal not displayed */
ExactQualityRequired
bool
`protobuf:"varint,4,opt,name=exact_quality_required,json=exactQualityRequired,proto3" json:"exact_quality_required,omitempty"`
}
Request message for Solar.FindClosestBuildingInsights
.
func (*FindClosestBuildingInsightsRequest) Descriptor
func
(
*
FindClosestBuildingInsightsRequest
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use FindClosestBuildingInsightsRequest.ProtoReflect.Descriptor instead.
func (*FindClosestBuildingInsightsRequest) GetExactQualityRequired
func
(
x
*
FindClosestBuildingInsightsRequest
)
GetExactQualityRequired
()
bool
func (*FindClosestBuildingInsightsRequest) GetLocation
func
(
x
*
FindClosestBuildingInsightsRequest
)
GetLocation
()
*
latlng
.
LatLng
func (*FindClosestBuildingInsightsRequest) GetRequiredQuality
func
(
x
*
FindClosestBuildingInsightsRequest
)
GetRequiredQuality
()
ImageryQuality
func (*FindClosestBuildingInsightsRequest) ProtoMessage
func
(
*
FindClosestBuildingInsightsRequest
)
ProtoMessage
()
func (*FindClosestBuildingInsightsRequest) ProtoReflect
func
(
x
*
FindClosestBuildingInsightsRequest
)
ProtoReflect
()
protoreflect
.
Message
func (*FindClosestBuildingInsightsRequest) Reset
func
(
x
*
FindClosestBuildingInsightsRequest
)
Reset
()
func (*FindClosestBuildingInsightsRequest) String
func
(
x
*
FindClosestBuildingInsightsRequest
)
String
()
string
GetDataLayersRequest
type
GetDataLayersRequest
struct
{
Location
*
latlng
.
LatLng
`protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"`
RadiusMeters
float32
`protobuf:"fixed32,2,opt,name=radius_meters,json=radiusMeters,proto3" json:"radius_meters,omitempty"`
View
DataLayerView
`protobuf:"varint,3,opt,name=view,proto3,enum=google.maps.solar.v1.DataLayerView" json:"view,omitempty"`
RequiredQuality
ImageryQuality
""
/* 148 byte string literal not displayed */
PixelSizeMeters
float32
`protobuf:"fixed32,6,opt,name=pixel_size_meters,json=pixelSizeMeters,proto3" json:"pixel_size_meters,omitempty"`
ExactQualityRequired
bool
`protobuf:"varint,7,opt,name=exact_quality_required,json=exactQualityRequired,proto3" json:"exact_quality_required,omitempty"`
}
Request message for Solar.GetDataLayers
.
func (*GetDataLayersRequest) Descriptor
func
(
*
GetDataLayersRequest
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use GetDataLayersRequest.ProtoReflect.Descriptor instead.
func (*GetDataLayersRequest) GetExactQualityRequired
func
(
x
*
GetDataLayersRequest
)
GetExactQualityRequired
()
bool
func (*GetDataLayersRequest) GetLocation
func
(
x
*
GetDataLayersRequest
)
GetLocation
()
*
latlng
.
LatLng
func (*GetDataLayersRequest) GetPixelSizeMeters
func
(
x
*
GetDataLayersRequest
)
GetPixelSizeMeters
()
float32
func (*GetDataLayersRequest) GetRadiusMeters
func
(
x
*
GetDataLayersRequest
)
GetRadiusMeters
()
float32
func (*GetDataLayersRequest) GetRequiredQuality
func
(
x
*
GetDataLayersRequest
)
GetRequiredQuality
()
ImageryQuality
func (*GetDataLayersRequest) GetView
func
(
x
*
GetDataLayersRequest
)
GetView
()
DataLayerView
func (*GetDataLayersRequest) ProtoMessage
func
(
*
GetDataLayersRequest
)
ProtoMessage
()
func (*GetDataLayersRequest) ProtoReflect
func
(
x
*
GetDataLayersRequest
)
ProtoReflect
()
protoreflect
.
Message
func (*GetDataLayersRequest) Reset
func
(
x
*
GetDataLayersRequest
)
Reset
()
func (*GetDataLayersRequest) String
func
(
x
*
GetDataLayersRequest
)
String
()
string
GetGeoTiffRequest
type
GetGeoTiffRequest
struct
{
// Required. The ID of the asset being requested.
Id
string
`protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
// contains filtered or unexported fields
}
Request message for Solar.GetGeoTiff
.
func (*GetGeoTiffRequest) Descriptor
func
(
*
GetGeoTiffRequest
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use GetGeoTiffRequest.ProtoReflect.Descriptor instead.
func (*GetGeoTiffRequest) GetId
func
(
x
*
GetGeoTiffRequest
)
GetId
()
string
func (*GetGeoTiffRequest) ProtoMessage
func
(
*
GetGeoTiffRequest
)
ProtoMessage
()
func (*GetGeoTiffRequest) ProtoReflect
func
(
x
*
GetGeoTiffRequest
)
ProtoReflect
()
protoreflect
.
Message
func (*GetGeoTiffRequest) Reset
func
(
x
*
GetGeoTiffRequest
)
Reset
()
func (*GetGeoTiffRequest) String
func
(
x
*
GetGeoTiffRequest
)
String
()
string
ImageryQuality
type
ImageryQuality
int32
The quality of the imagery used to compute some API result.
Note: Regardless of imagery quality level, DSM outputs always have a resolution of 0.1 m/pixel, monthly flux outputs always have a resolution of 0.5 m/pixel, and hourly shade outputs always have a resolution of 1 m/pixel.
ImageryQuality_IMAGERY_QUALITY_UNSPECIFIED, ImageryQuality_HIGH, ImageryQuality_MEDIUM, ImageryQuality_LOW
const
(
// No quality is known.
ImageryQuality_IMAGERY_QUALITY_UNSPECIFIED
ImageryQuality
=
0
// The underlying imagery and DSM data were processed at 0.1 m/pixel.
ImageryQuality_HIGH
ImageryQuality
=
1
// The underlying imagery and DSM data were processed at 0.25 m/pixel.
ImageryQuality_MEDIUM
ImageryQuality
=
2
// The underlying imagery and DSM data were processed at 0.5 m/pixel.
ImageryQuality_LOW
ImageryQuality
=
3
)
func (ImageryQuality) Descriptor
func
(
ImageryQuality
)
Descriptor
()
protoreflect
.
EnumDescriptor
func (ImageryQuality) Enum
func
(
x
ImageryQuality
)
Enum
()
*
ImageryQuality
func (ImageryQuality) EnumDescriptor
func
(
ImageryQuality
)
EnumDescriptor
()
([]
byte
,
[]
int
)
Deprecated: Use ImageryQuality.Descriptor instead.
func (ImageryQuality) Number
func
(
x
ImageryQuality
)
Number
()
protoreflect
.
EnumNumber
func (ImageryQuality) String
func
(
x
ImageryQuality
)
String
()
string
func (ImageryQuality) Type
func
(
ImageryQuality
)
Type
()
protoreflect
.
EnumType
LatLngBox
type
LatLngBox
struct
{
// The southwest corner of the box.
Sw
*
latlng
.
LatLng
`protobuf:"bytes,1,opt,name=sw,proto3" json:"sw,omitempty"`
// The northeast corner of the box.
Ne
*
latlng
.
LatLng
`protobuf:"bytes,2,opt,name=ne,proto3" json:"ne,omitempty"`
// contains filtered or unexported fields
}
A bounding box in lat/lng coordinates.
func (*LatLngBox) Descriptor
Deprecated: Use LatLngBox.ProtoReflect.Descriptor instead.
func (*LatLngBox) GetNe
func (*LatLngBox) GetSw
func (*LatLngBox) ProtoMessage
func
(
*
LatLngBox
)
ProtoMessage
()
func (*LatLngBox) ProtoReflect
func
(
x
*
LatLngBox
)
ProtoReflect
()
protoreflect
.
Message
func (*LatLngBox) Reset
func
(
x
*
LatLngBox
)
Reset
()
func (*LatLngBox) String
LeasingSavings
type
LeasingSavings
struct
{
// Whether leases are allowed in this juristiction (leases are not
// allowed in some states). If this field is false, then the values in
// this message should probably be ignored.
LeasesAllowed
bool
`protobuf:"varint,1,opt,name=leases_allowed,json=leasesAllowed,proto3" json:"leases_allowed,omitempty"`
// Whether leases are supported in this juristiction by the financial
// calculation engine. If this field is false, then the values in this
// message should probably be ignored. This is independent of
// `leases_allowed`: in some areas leases are allowed, but under conditions
// that aren't handled by the financial models.
LeasesSupported
bool
`protobuf:"varint,2,opt,name=leases_supported,json=leasesSupported,proto3" json:"leases_supported,omitempty"`
// Estimated annual leasing cost.
AnnualLeasingCost
*
money
.
Money
`protobuf:"bytes,3,opt,name=annual_leasing_cost,json=annualLeasingCost,proto3" json:"annual_leasing_cost,omitempty"`
// How much is saved (or not) over the lifetime period.
Savings
*
SavingsOverTime
`protobuf:"bytes,4,opt,name=savings,proto3" json:"savings,omitempty"`
// contains filtered or unexported fields
}
Cost and benefit of leasing a particular configuration of solar panels with a particular electricity usage.
func (*LeasingSavings) Descriptor
func
(
*
LeasingSavings
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use LeasingSavings.ProtoReflect.Descriptor instead.
func (*LeasingSavings) GetAnnualLeasingCost
func
(
x
*
LeasingSavings
)
GetAnnualLeasingCost
()
*
money
.
Money
func (*LeasingSavings) GetLeasesAllowed
func
(
x
*
LeasingSavings
)
GetLeasesAllowed
()
bool
func (*LeasingSavings) GetLeasesSupported
func
(
x
*
LeasingSavings
)
GetLeasesSupported
()
bool
func (*LeasingSavings) GetSavings
func
(
x
*
LeasingSavings
)
GetSavings
()
*
SavingsOverTime
func (*LeasingSavings) ProtoMessage
func
(
*
LeasingSavings
)
ProtoMessage
()
func (*LeasingSavings) ProtoReflect
func
(
x
*
LeasingSavings
)
ProtoReflect
()
protoreflect
.
Message
func (*LeasingSavings) Reset
func
(
x
*
LeasingSavings
)
Reset
()
func (*LeasingSavings) String
func
(
x
*
LeasingSavings
)
String
()
string
RoofSegmentSizeAndSunshineStats
type
RoofSegmentSizeAndSunshineStats
struct
{
PitchDegrees
*
float32
`protobuf:"fixed32,1,opt,name=pitch_degrees,json=pitchDegrees,proto3,oneof" json:"pitch_degrees,omitempty"`
AzimuthDegrees
*
float32
`protobuf:"fixed32,2,opt,name=azimuth_degrees,json=azimuthDegrees,proto3,oneof" json:"azimuth_degrees,omitempty"`
Stats
*
SizeAndSunshineStats
`protobuf:"bytes,3,opt,name=stats,proto3" json:"stats,omitempty"`
Center
*
latlng
.
LatLng
`protobuf:"bytes,4,opt,name=center,proto3" json:"center,omitempty"`
BoundingBox
*
LatLngBox
`protobuf:"bytes,5,opt,name=bounding_box,json=boundingBox,proto3" json:"bounding_box,omitempty"`
PlaneHeightAtCenterMeters
*
float32
""
/* 150 byte string literal not displayed */
}
Information about the size and sunniness quantiles of a roof segment.
func (*RoofSegmentSizeAndSunshineStats) Descriptor
func
(
*
RoofSegmentSizeAndSunshineStats
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use RoofSegmentSizeAndSunshineStats.ProtoReflect.Descriptor instead.
func (*RoofSegmentSizeAndSunshineStats) GetAzimuthDegrees
func
(
x
*
RoofSegmentSizeAndSunshineStats
)
GetAzimuthDegrees
()
float32
func (*RoofSegmentSizeAndSunshineStats) GetBoundingBox
func
(
x
*
RoofSegmentSizeAndSunshineStats
)
GetBoundingBox
()
*
LatLngBox
func (*RoofSegmentSizeAndSunshineStats) GetCenter
func
(
x
*
RoofSegmentSizeAndSunshineStats
)
GetCenter
()
*
latlng
.
LatLng
func (*RoofSegmentSizeAndSunshineStats) GetPitchDegrees
func
(
x
*
RoofSegmentSizeAndSunshineStats
)
GetPitchDegrees
()
float32
func (*RoofSegmentSizeAndSunshineStats) GetPlaneHeightAtCenterMeters
func
(
x
*
RoofSegmentSizeAndSunshineStats
)
GetPlaneHeightAtCenterMeters
()
float32
func (*RoofSegmentSizeAndSunshineStats) GetStats
func
(
x
*
RoofSegmentSizeAndSunshineStats
)
GetStats
()
*
SizeAndSunshineStats
func (*RoofSegmentSizeAndSunshineStats) ProtoMessage
func
(
*
RoofSegmentSizeAndSunshineStats
)
ProtoMessage
()
func (*RoofSegmentSizeAndSunshineStats) ProtoReflect
func
(
x
*
RoofSegmentSizeAndSunshineStats
)
ProtoReflect
()
protoreflect
.
Message
func (*RoofSegmentSizeAndSunshineStats) Reset
func
(
x
*
RoofSegmentSizeAndSunshineStats
)
Reset
()
func (*RoofSegmentSizeAndSunshineStats) String
func
(
x
*
RoofSegmentSizeAndSunshineStats
)
String
()
string
RoofSegmentSummary
type
RoofSegmentSummary
struct
{
// Angle of the roof segment relative to the theoretical ground plane.
// 0 = parallel to the ground, 90 = perpendicular to the ground.
PitchDegrees
*
float32
`protobuf:"fixed32,2,opt,name=pitch_degrees,json=pitchDegrees,proto3,oneof" json:"pitch_degrees,omitempty"`
// Compass direction the roof segment is pointing in. 0 = North, 90 =
// East, 180 = South. For a "flat" roof segment (`pitch_degrees` very
// near 0), azimuth is not well defined, so for consistency, we define it
// arbitrarily to be 0 (North).
AzimuthDegrees
*
float32
`protobuf:"fixed32,3,opt,name=azimuth_degrees,json=azimuthDegrees,proto3,oneof" json:"azimuth_degrees,omitempty"`
// The total number of panels on this segment.
PanelsCount
int32
`protobuf:"varint,7,opt,name=panels_count,json=panelsCount,proto3" json:"panels_count,omitempty"`
// How much sunlight energy this part of the layout captures over the
// course of a year, in DC kWh, assuming the panels described above.
YearlyEnergyDcKwh
float32
`protobuf:"fixed32,8,opt,name=yearly_energy_dc_kwh,json=yearlyEnergyDcKwh,proto3" json:"yearly_energy_dc_kwh,omitempty"`
// Index in [roof_segment_stats]
// [google.maps.solar.v1.SolarPotential.roof_segment_stats]
// of the corresponding `RoofSegmentSizeAndSunshineStats`.
SegmentIndex
*
int32
`protobuf:"varint,9,opt,name=segment_index,json=segmentIndex,proto3,oneof" json:"segment_index,omitempty"`
// contains filtered or unexported fields
}
Information about a roof segment on the building, with some number of panels placed on it.
func (*RoofSegmentSummary) Descriptor
func
(
*
RoofSegmentSummary
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use RoofSegmentSummary.ProtoReflect.Descriptor instead.
func (*RoofSegmentSummary) GetAzimuthDegrees
func
(
x
*
RoofSegmentSummary
)
GetAzimuthDegrees
()
float32
func (*RoofSegmentSummary) GetPanelsCount
func
(
x
*
RoofSegmentSummary
)
GetPanelsCount
()
int32
func (*RoofSegmentSummary) GetPitchDegrees
func
(
x
*
RoofSegmentSummary
)
GetPitchDegrees
()
float32
func (*RoofSegmentSummary) GetSegmentIndex
func
(
x
*
RoofSegmentSummary
)
GetSegmentIndex
()
int32
func (*RoofSegmentSummary) GetYearlyEnergyDcKwh
func
(
x
*
RoofSegmentSummary
)
GetYearlyEnergyDcKwh
()
float32
func (*RoofSegmentSummary) ProtoMessage
func
(
*
RoofSegmentSummary
)
ProtoMessage
()
func (*RoofSegmentSummary) ProtoReflect
func
(
x
*
RoofSegmentSummary
)
ProtoReflect
()
protoreflect
.
Message
func (*RoofSegmentSummary) Reset
func
(
x
*
RoofSegmentSummary
)
Reset
()
func (*RoofSegmentSummary) String
func
(
x
*
RoofSegmentSummary
)
String
()
string
SavingsOverTime
type
SavingsOverTime
struct
{
SavingsYear1
*
money
.
Money
`protobuf:"bytes,1,opt,name=savings_year1,json=savingsYear1,proto3" json:"savings_year1,omitempty"`
SavingsYear20
*
money
.
Money
`protobuf:"bytes,2,opt,name=savings_year20,json=savingsYear20,proto3" json:"savings_year20,omitempty"`
PresentValueOfSavingsYear20
*
money
.
Money
""
/* 148 byte string literal not displayed */
SavingsLifetime
*
money
.
Money
`protobuf:"bytes,5,opt,name=savings_lifetime,json=savingsLifetime,proto3" json:"savings_lifetime,omitempty"`
PresentValueOfSavingsLifetime
*
money
.
Money
""
/* 154 byte string literal not displayed */
FinanciallyViable
bool
`protobuf:"varint,4,opt,name=financially_viable,json=financiallyViable,proto3" json:"financially_viable,omitempty"`
}
Financial information that's shared between different financing methods.
func (*SavingsOverTime) Descriptor
func
(
*
SavingsOverTime
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use SavingsOverTime.ProtoReflect.Descriptor instead.
func (*SavingsOverTime) GetFinanciallyViable
func
(
x
*
SavingsOverTime
)
GetFinanciallyViable
()
bool
func (*SavingsOverTime) GetPresentValueOfSavingsLifetime
func
(
x
*
SavingsOverTime
)
GetPresentValueOfSavingsLifetime
()
*
money
.
Money
func (*SavingsOverTime) GetPresentValueOfSavingsYear20
func
(
x
*
SavingsOverTime
)
GetPresentValueOfSavingsYear20
()
*
money
.
Money
func (*SavingsOverTime) GetSavingsLifetime
func
(
x
*
SavingsOverTime
)
GetSavingsLifetime
()
*
money
.
Money
func (*SavingsOverTime) GetSavingsYear1
func
(
x
*
SavingsOverTime
)
GetSavingsYear1
()
*
money
.
Money
func (*SavingsOverTime) GetSavingsYear20
func
(
x
*
SavingsOverTime
)
GetSavingsYear20
()
*
money
.
Money
func (*SavingsOverTime) ProtoMessage
func
(
*
SavingsOverTime
)
ProtoMessage
()
func (*SavingsOverTime) ProtoReflect
func
(
x
*
SavingsOverTime
)
ProtoReflect
()
protoreflect
.
Message
func (*SavingsOverTime) Reset
func
(
x
*
SavingsOverTime
)
Reset
()
func (*SavingsOverTime) String
func
(
x
*
SavingsOverTime
)
String
()
string
SizeAndSunshineStats
type
SizeAndSunshineStats
struct
{
// The area of the roof or roof segment, in m^2. This is the roof area
// (accounting for tilt), not the ground footprint area.
AreaMeters2
float32
`protobuf:"fixed32,1,opt,name=area_meters2,json=areaMeters2,proto3" json:"area_meters2,omitempty"`
// Quantiles of the pointwise sunniness across the area. If there
// are N values here, this represents the (N-1)-iles. For example,
// if there are 5 values, then they would be the quartiles (min,
// 25%, 50%, 75%, max). Values are in annual kWh/kW like
// [max_sunshine_hours_per_year]
// [google.maps.solar.v1.SolarPotential.max_sunshine_hours_per_year].
SunshineQuantiles
[]
float32
`protobuf:"fixed32,2,rep,packed,name=sunshine_quantiles,json=sunshineQuantiles,proto3" json:"sunshine_quantiles,omitempty"`
// The ground footprint area covered by the roof or roof segment, in m^2.
GroundAreaMeters2
float32
`protobuf:"fixed32,3,opt,name=ground_area_meters2,json=groundAreaMeters2,proto3" json:"ground_area_meters2,omitempty"`
// contains filtered or unexported fields
}
Size and sunniness quantiles of a roof, or part of a roof.
func (*SizeAndSunshineStats) Descriptor
func
(
*
SizeAndSunshineStats
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use SizeAndSunshineStats.ProtoReflect.Descriptor instead.
func (*SizeAndSunshineStats) GetAreaMeters2
func
(
x
*
SizeAndSunshineStats
)
GetAreaMeters2
()
float32
func (*SizeAndSunshineStats) GetGroundAreaMeters2
func
(
x
*
SizeAndSunshineStats
)
GetGroundAreaMeters2
()
float32
func (*SizeAndSunshineStats) GetSunshineQuantiles
func
(
x
*
SizeAndSunshineStats
)
GetSunshineQuantiles
()
[]
float32
func (*SizeAndSunshineStats) ProtoMessage
func
(
*
SizeAndSunshineStats
)
ProtoMessage
()
func (*SizeAndSunshineStats) ProtoReflect
func
(
x
*
SizeAndSunshineStats
)
ProtoReflect
()
protoreflect
.
Message
func (*SizeAndSunshineStats) Reset
func
(
x
*
SizeAndSunshineStats
)
Reset
()
func (*SizeAndSunshineStats) String
func
(
x
*
SizeAndSunshineStats
)
String
()
string
SolarClient
type
SolarClient
interface
{
// Locates the closest building to a query point. Returns an error with
// code `NOT_FOUND` if there are no buildings within approximately 50m of the
// query point.
FindClosestBuildingInsights
(
ctx
context
.
Context
,
in
*
FindClosestBuildingInsightsRequest
,
opts
...
grpc
.
CallOption
)
(
*
BuildingInsights
,
error
)
// Gets solar information for a region surrounding a location.
// Returns an error with code `NOT_FOUND` if the location is outside
// the coverage area.
GetDataLayers
(
ctx
context
.
Context
,
in
*
GetDataLayersRequest
,
opts
...
grpc
.
CallOption
)
(
*
DataLayers
,
error
)
// Returns an image by its ID.
GetGeoTiff
(
ctx
context
.
Context
,
in
*
GetGeoTiffRequest
,
opts
...
grpc
.
CallOption
)
(
*
httpbody
.
HttpBody
,
error
)
}
SolarClient is the client API for Solar service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream .
func NewSolarClient
func
NewSolarClient
(
cc
grpc
.
ClientConnInterface
)
SolarClient
SolarPanel
type
SolarPanel
struct
{
// The centre of the panel.
Center
*
latlng
.
LatLng
`protobuf:"bytes,1,opt,name=center,proto3" json:"center,omitempty"`
// The orientation of the panel.
Orientation
SolarPanelOrientation
`protobuf:"varint,2,opt,name=orientation,proto3,enum=google.maps.solar.v1.SolarPanelOrientation" json:"orientation,omitempty"`
// How much sunlight energy this layout captures over the course of a
// year, in DC kWh.
YearlyEnergyDcKwh
float32
`protobuf:"fixed32,3,opt,name=yearly_energy_dc_kwh,json=yearlyEnergyDcKwh,proto3" json:"yearly_energy_dc_kwh,omitempty"`
// Index in [roof_segment_stats]
// [google.maps.solar.v1.SolarPotential.roof_segment_stats]
// of the `RoofSegmentSizeAndSunshineStats` which corresponds to the
// roof segment that this panel is placed on.
SegmentIndex
*
int32
`protobuf:"varint,4,opt,name=segment_index,json=segmentIndex,proto3,oneof" json:"segment_index,omitempty"`
// contains filtered or unexported fields
}
SolarPanel describes the position, orientation, and production of a single solar panel. See the [panel_height_meters] [google.maps.solar.v1.SolarPotential.panel_height_meters], [panel_width_meters] [google.maps.solar.v1.SolarPotential.panel_width_meters], and [panel_capacity_watts] [google.maps.solar.v1.SolarPotential.panel_capacity_watts] fields in [SolarPotential] [google.maps.solar.v1.SolarPotential] for information on the parameters of the panel.
func (*SolarPanel) Descriptor
func
(
*
SolarPanel
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use SolarPanel.ProtoReflect.Descriptor instead.
func (*SolarPanel) GetCenter
func
(
x
*
SolarPanel
)
GetCenter
()
*
latlng
.
LatLng
func (*SolarPanel) GetOrientation
func
(
x
*
SolarPanel
)
GetOrientation
()
SolarPanelOrientation
func (*SolarPanel) GetSegmentIndex
func
(
x
*
SolarPanel
)
GetSegmentIndex
()
int32
func (*SolarPanel) GetYearlyEnergyDcKwh
func
(
x
*
SolarPanel
)
GetYearlyEnergyDcKwh
()
float32
func (*SolarPanel) ProtoMessage
func
(
*
SolarPanel
)
ProtoMessage
()
func (*SolarPanel) ProtoReflect
func
(
x
*
SolarPanel
)
ProtoReflect
()
protoreflect
.
Message
func (*SolarPanel) Reset
func
(
x
*
SolarPanel
)
Reset
()
func (*SolarPanel) String
func
(
x
*
SolarPanel
)
String
()
string
SolarPanelConfig
type
SolarPanelConfig
struct
{
// Total number of panels. Note that this is redundant to (the sum
// of) the corresponding fields in [roof_segment_summaries]
// [google.maps.solar.v1.SolarPanelConfig.roof_segment_summaries].
PanelsCount
int32
`protobuf:"varint,1,opt,name=panels_count,json=panelsCount,proto3" json:"panels_count,omitempty"`
// How much sunlight energy this layout captures over the course of a
// year, in DC kWh, assuming the panels described above.
YearlyEnergyDcKwh
float32
`protobuf:"fixed32,2,opt,name=yearly_energy_dc_kwh,json=yearlyEnergyDcKwh,proto3" json:"yearly_energy_dc_kwh,omitempty"`
// Information about the production of each roof segment that is carrying
// at least one panel in this layout. `roof_segment_summaries[i]` describes
// the i-th roof segment, including its size, expected production and
// orientation.
RoofSegmentSummaries
[]
*
RoofSegmentSummary
`protobuf:"bytes,4,rep,name=roof_segment_summaries,json=roofSegmentSummaries,proto3" json:"roof_segment_summaries,omitempty"`
// contains filtered or unexported fields
}
SolarPanelConfig describes a particular placement of solar panels on the roof.
func (*SolarPanelConfig) Descriptor
func
(
*
SolarPanelConfig
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use SolarPanelConfig.ProtoReflect.Descriptor instead.
func (*SolarPanelConfig) GetPanelsCount
func
(
x
*
SolarPanelConfig
)
GetPanelsCount
()
int32
func (*SolarPanelConfig) GetRoofSegmentSummaries
func
(
x
*
SolarPanelConfig
)
GetRoofSegmentSummaries
()
[]
*
RoofSegmentSummary
func (*SolarPanelConfig) GetYearlyEnergyDcKwh
func
(
x
*
SolarPanelConfig
)
GetYearlyEnergyDcKwh
()
float32
func (*SolarPanelConfig) ProtoMessage
func
(
*
SolarPanelConfig
)
ProtoMessage
()
func (*SolarPanelConfig) ProtoReflect
func
(
x
*
SolarPanelConfig
)
ProtoReflect
()
protoreflect
.
Message
func (*SolarPanelConfig) Reset
func
(
x
*
SolarPanelConfig
)
Reset
()
func (*SolarPanelConfig) String
func
(
x
*
SolarPanelConfig
)
String
()
string
SolarPanelOrientation
type
SolarPanelOrientation
int32
The orientation of a solar panel. This must be interpreted relative to the azimuth of the roof segment that the panel is placed on.
SolarPanelOrientation_SOLAR_PANEL_ORIENTATION_UNSPECIFIED, SolarPanelOrientation_LANDSCAPE, SolarPanelOrientation_PORTRAIT
const
(
// No panel orientation is known.
SolarPanelOrientation_SOLAR_PANEL_ORIENTATION_UNSPECIFIED
SolarPanelOrientation
=
0
// A `LANDSCAPE` panel has its long edge perpendicular to the
// azimuth direction of the roof segment that it is placed on.
SolarPanelOrientation_LANDSCAPE
SolarPanelOrientation
=
1
// A `PORTRAIT` panel has its long edge parallel to the azimuth
// direction of the roof segment that it is placed on.
SolarPanelOrientation_PORTRAIT
SolarPanelOrientation
=
2
)
func (SolarPanelOrientation) Descriptor
func
(
SolarPanelOrientation
)
Descriptor
()
protoreflect
.
EnumDescriptor
func (SolarPanelOrientation) Enum
func
(
x
SolarPanelOrientation
)
Enum
()
*
SolarPanelOrientation
func (SolarPanelOrientation) EnumDescriptor
func
(
SolarPanelOrientation
)
EnumDescriptor
()
([]
byte
,
[]
int
)
Deprecated: Use SolarPanelOrientation.Descriptor instead.
func (SolarPanelOrientation) Number
func
(
x
SolarPanelOrientation
)
Number
()
protoreflect
.
EnumNumber
func (SolarPanelOrientation) String
func
(
x
SolarPanelOrientation
)
String
()
string
func (SolarPanelOrientation) Type
func
(
SolarPanelOrientation
)
Type
()
protoreflect
.
EnumType
SolarPotential
type
SolarPotential
struct
{
MaxArrayPanelsCount
int32
`protobuf:"varint,1,opt,name=max_array_panels_count,json=maxArrayPanelsCount,proto3" json:"max_array_panels_count,omitempty"`
PanelCapacityWatts
float32
`protobuf:"fixed32,9,opt,name=panel_capacity_watts,json=panelCapacityWatts,proto3" json:"panel_capacity_watts,omitempty"`
PanelHeightMeters
float32
`protobuf:"fixed32,10,opt,name=panel_height_meters,json=panelHeightMeters,proto3" json:"panel_height_meters,omitempty"`
PanelWidthMeters
float32
`protobuf:"fixed32,11,opt,name=panel_width_meters,json=panelWidthMeters,proto3" json:"panel_width_meters,omitempty"`
PanelLifetimeYears
int32
`protobuf:"varint,12,opt,name=panel_lifetime_years,json=panelLifetimeYears,proto3" json:"panel_lifetime_years,omitempty"`
MaxArrayAreaMeters2
float32
`protobuf:"fixed32,2,opt,name=max_array_area_meters2,json=maxArrayAreaMeters2,proto3" json:"max_array_area_meters2,omitempty"`
MaxSunshineHoursPerYear
float32
""
/* 138 byte string literal not displayed */
CarbonOffsetFactorKgPerMwh
float32
""
/* 149 byte string literal not displayed */
WholeRoofStats
*
SizeAndSunshineStats
`protobuf:"bytes,5,opt,name=whole_roof_stats,json=wholeRoofStats,proto3" json:"whole_roof_stats,omitempty"`
BuildingStats
*
SizeAndSunshineStats
`protobuf:"bytes,13,opt,name=building_stats,json=buildingStats,proto3" json:"building_stats,omitempty"`
RoofSegmentStats
[]
*
RoofSegmentSizeAndSunshineStats
`protobuf:"bytes,6,rep,name=roof_segment_stats,json=roofSegmentStats,proto3" json:"roof_segment_stats,omitempty"`
SolarPanels
[]
*
SolarPanel
`protobuf:"bytes,14,rep,name=solar_panels,json=solarPanels,proto3" json:"solar_panels,omitempty"`
SolarPanelConfigs
[]
*
SolarPanelConfig
`protobuf:"bytes,7,rep,name=solar_panel_configs,json=solarPanelConfigs,proto3" json:"solar_panel_configs,omitempty"`
FinancialAnalyses
[]
*
FinancialAnalysis
`protobuf:"bytes,8,rep,name=financial_analyses,json=financialAnalyses,proto3" json:"financial_analyses,omitempty"`
}
Information about the solar potential of a building. A number of fields in this are defined in terms of "panels". The fields [panel_capacity_watts] [google.maps.solar.v1.SolarPotential.panel_capacity_watts], [panel_height_meters] [google.maps.solar.v1.SolarPotential.panel_height_meters], and [panel_width_meters] [google.maps.solar.v1.SolarPotential.panel_width_meters] describe the parameters of the model of panel used in these calculations.
func (*SolarPotential) Descriptor
func
(
*
SolarPotential
)
Descriptor
()
([]
byte
,
[]
int
)
Deprecated: Use SolarPotential.ProtoReflect.Descriptor instead.
func (*SolarPotential) GetBuildingStats
func
(
x
*
SolarPotential
)
GetBuildingStats
()
*
SizeAndSunshineStats
func (*SolarPotential) GetCarbonOffsetFactorKgPerMwh
func
(
x
*
SolarPotential
)
GetCarbonOffsetFactorKgPerMwh
()
float32
func (*SolarPotential) GetFinancialAnalyses
func
(
x
*
SolarPotential
)
GetFinancialAnalyses
()
[]
*
FinancialAnalysis
func (*SolarPotential) GetMaxArrayAreaMeters2
func
(
x
*
SolarPotential
)
GetMaxArrayAreaMeters2
()
float32
func (*SolarPotential) GetMaxArrayPanelsCount
func
(
x
*
SolarPotential
)
GetMaxArrayPanelsCount
()
int32
func (*SolarPotential) GetMaxSunshineHoursPerYear
func
(
x
*
SolarPotential
)
GetMaxSunshineHoursPerYear
()
float32
func (*SolarPotential) GetPanelCapacityWatts
func
(
x
*
SolarPotential
)
GetPanelCapacityWatts
()
float32
func (*SolarPotential) GetPanelHeightMeters
func
(
x
*
SolarPotential
)
GetPanelHeightMeters
()
float32
func (*SolarPotential) GetPanelLifetimeYears
func
(
x
*
SolarPotential
)
GetPanelLifetimeYears
()
int32
func (*SolarPotential) GetPanelWidthMeters
func
(
x
*
SolarPotential
)
GetPanelWidthMeters
()
float32
func (*SolarPotential) GetRoofSegmentStats
func
(
x
*
SolarPotential
)
GetRoofSegmentStats
()
[]
*
RoofSegmentSizeAndSunshineStats
func (*SolarPotential) GetSolarPanelConfigs
func
(
x
*
SolarPotential
)
GetSolarPanelConfigs
()
[]
*
SolarPanelConfig
func (*SolarPotential) GetSolarPanels
func
(
x
*
SolarPotential
)
GetSolarPanels
()
[]
*
SolarPanel
func (*SolarPotential) GetWholeRoofStats
func
(
x
*
SolarPotential
)
GetWholeRoofStats
()
*
SizeAndSunshineStats
func (*SolarPotential) ProtoMessage
func
(
*
SolarPotential
)
ProtoMessage
()
func (*SolarPotential) ProtoReflect
func
(
x
*
SolarPotential
)
ProtoReflect
()
protoreflect
.
Message
func (*SolarPotential) Reset
func
(
x
*
SolarPotential
)
Reset
()
func (*SolarPotential) String
func
(
x
*
SolarPotential
)
String
()
string
SolarServer
type
SolarServer
interface
{
// Locates the closest building to a query point. Returns an error with
// code `NOT_FOUND` if there are no buildings within approximately 50m of the
// query point.
FindClosestBuildingInsights
(
context
.
Context
,
*
FindClosestBuildingInsightsRequest
)
(
*
BuildingInsights
,
error
)
// Gets solar information for a region surrounding a location.
// Returns an error with code `NOT_FOUND` if the location is outside
// the coverage area.
GetDataLayers
(
context
.
Context
,
*
GetDataLayersRequest
)
(
*
DataLayers
,
error
)
// Returns an image by its ID.
GetGeoTiff
(
context
.
Context
,
*
GetGeoTiffRequest
)
(
*
httpbody
.
HttpBody
,
error
)
}
SolarServer is the server API for Solar service.
UnimplementedSolarServer
type
UnimplementedSolarServer
struct
{
}
UnimplementedSolarServer can be embedded to have forward compatible implementations.
func (*UnimplementedSolarServer) FindClosestBuildingInsights
func
(
*
UnimplementedSolarServer
)
FindClosestBuildingInsights
(
context
.
Context
,
*
FindClosestBuildingInsightsRequest
)
(
*
BuildingInsights
,
error
)
func (*UnimplementedSolarServer) GetDataLayers
func
(
*
UnimplementedSolarServer
)
GetDataLayers
(
context
.
Context
,
*
GetDataLayersRequest
)
(
*
DataLayers
,
error
)
func (*UnimplementedSolarServer) GetGeoTiff
func
(
*
UnimplementedSolarServer
)
GetGeoTiff
(
context
.
Context
,
*
GetGeoTiffRequest
)
(
*
httpbody
.
HttpBody
,
error
)