Class: Google::Apis::SolarV1::RoofSegmentSizeAndSunshineStats

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/solar_v1/classes.rb,
lib/google/apis/solar_v1/representations.rb,
lib/google/apis/solar_v1/representations.rb

Overview

Information about the size and sunniness quantiles of a roof segment.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RoofSegmentSizeAndSunshineStats

Returns a new instance of RoofSegmentSizeAndSunshineStats.



755
756
757
# File 'lib/google/apis/solar_v1/classes.rb', line 755

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#azimuth_degreesFloat

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). Corresponds to the JSON property azimuthDegrees

Returns:

  • (Float)


722
723
724
# File 'lib/google/apis/solar_v1/classes.rb', line 722

def azimuth_degrees
  @azimuth_degrees
end

#bounding_boxGoogle::Apis::SolarV1::LatLngBox

A bounding box in lat/lng coordinates. Corresponds to the JSON property boundingBox



727
728
729
# File 'lib/google/apis/solar_v1/classes.rb', line 727

def bounding_box
  @bounding_box
end

#centerGoogle::Apis::SolarV1::LatLng

An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. Corresponds to the JSON property center



735
736
737
# File 'lib/google/apis/solar_v1/classes.rb', line 735

def center
  @center
end

#pitch_degreesFloat

Angle of the roof segment relative to the theoretical ground plane. 0 = parallel to the ground, 90 = perpendicular to the ground. Corresponds to the JSON property pitchDegrees

Returns:

  • (Float)


741
742
743
# File 'lib/google/apis/solar_v1/classes.rb', line 741

def pitch_degrees
  @pitch_degrees
end

#plane_height_at_center_metersFloat

The height of the roof segment plane, in meters above sea level, at the point designated by center. Together with the pitch, azimuth, and center location, this fully defines the roof segment plane. Corresponds to the JSON property planeHeightAtCenterMeters

Returns:

  • (Float)


748
749
750
# File 'lib/google/apis/solar_v1/classes.rb', line 748

def plane_height_at_center_meters
  @plane_height_at_center_meters
end

#statsGoogle::Apis::SolarV1::SizeAndSunshineStats

Size and sunniness quantiles of a roof, or part of a roof. Corresponds to the JSON property stats



753
754
755
# File 'lib/google/apis/solar_v1/classes.rb', line 753

def stats
  @stats
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



760
761
762
763
764
765
766
767
# File 'lib/google/apis/solar_v1/classes.rb', line 760

def update!(**args)
  @azimuth_degrees = args[:azimuth_degrees] if args.key?(:azimuth_degrees)
  @bounding_box = args[:bounding_box] if args.key?(:bounding_box)
  @center = args[:center] if args.key?(:center)
  @pitch_degrees = args[:pitch_degrees] if args.key?(:pitch_degrees)
  @plane_height_at_center_meters = args[:plane_height_at_center_meters] if args.key?(:plane_height_at_center_meters)
  @stats = args[:stats] if args.key?(:stats)
end