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.



793
794
795
# File 'lib/google/apis/solar_v1/classes.rb', line 793

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)


760
761
762
# File 'lib/google/apis/solar_v1/classes.rb', line 760

def azimuth_degrees
  @azimuth_degrees
end

#bounding_boxGoogle::Apis::SolarV1::LatLngBox

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



765
766
767
# File 'lib/google/apis/solar_v1/classes.rb', line 765

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



773
774
775
# File 'lib/google/apis/solar_v1/classes.rb', line 773

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)


779
780
781
# File 'lib/google/apis/solar_v1/classes.rb', line 779

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)


786
787
788
# File 'lib/google/apis/solar_v1/classes.rb', line 786

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



791
792
793
# File 'lib/google/apis/solar_v1/classes.rb', line 791

def stats
  @stats
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



798
799
800
801
802
803
804
805
# File 'lib/google/apis/solar_v1/classes.rb', line 798

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