Package cloud.google.com/go/maps/solar/apiv1/solarpb (v1.11.0)

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) Enum

func (x DataLayerView) Enum() *DataLayerView

func (DataLayerView) EnumDescriptor

func (DataLayerView) EnumDescriptor() ([]byte, []int)

Deprecated: Use DataLayerView.Descriptor instead.

func (DataLayerView) Number

func (DataLayerView) String

func (x DataLayerView) String() string

func (DataLayerView) Type

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 (*FindClosestBuildingInsightsRequest) GetRequiredQuality

func (x *FindClosestBuildingInsightsRequest) GetRequiredQuality() ImageryQuality

func (*FindClosestBuildingInsightsRequest) ProtoMessage

func (*FindClosestBuildingInsightsRequest) ProtoMessage()

func (*FindClosestBuildingInsightsRequest) ProtoReflect

func (*FindClosestBuildingInsightsRequest) Reset

func (*FindClosestBuildingInsightsRequest) 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) Enum

func (x ImageryQuality) Enum() *ImageryQuality

func (ImageryQuality) EnumDescriptor

func (ImageryQuality) EnumDescriptor() ([]byte, []int)

Deprecated: Use ImageryQuality.Descriptor instead.

func (ImageryQuality) Number

func (ImageryQuality) String

func (x ImageryQuality) String() string

func (ImageryQuality) Type

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

func (*LatLngBox) Descriptor() ([]byte, []int)

Deprecated: Use LatLngBox.ProtoReflect.Descriptor instead.

func (*LatLngBox) GetNe

func (x *LatLngBox) GetNe() *latlng.LatLng

func (*LatLngBox) GetSw

func (x *LatLngBox) GetSw() *latlng.LatLng

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

func (x *LatLngBox) String() 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 (*RoofSegmentSizeAndSunshineStats) GetPitchDegrees

func (x *RoofSegmentSizeAndSunshineStats) GetPitchDegrees() float32

func (*RoofSegmentSizeAndSunshineStats) GetPlaneHeightAtCenterMeters

func (x *RoofSegmentSizeAndSunshineStats) GetPlaneHeightAtCenterMeters() float32

func (*RoofSegmentSizeAndSunshineStats) GetStats

func (*RoofSegmentSizeAndSunshineStats) ProtoMessage

func (*RoofSegmentSizeAndSunshineStats) ProtoMessage()

func (*RoofSegmentSizeAndSunshineStats) ProtoReflect

func (*RoofSegmentSizeAndSunshineStats) Reset

func (*RoofSegmentSizeAndSunshineStats) 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) Enum

func (SolarPanelOrientation) EnumDescriptor

func (SolarPanelOrientation) EnumDescriptor() ([]byte, []int)

Deprecated: Use SolarPanelOrientation.Descriptor instead.

func (SolarPanelOrientation) Number

func (SolarPanelOrientation) String

func (x SolarPanelOrientation) String() string

func (SolarPanelOrientation) Type

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) GetDataLayers

func (*UnimplementedSolarServer) GetGeoTiff