Class: Google::Apis::MybusinessV3::PointRadius
- Inherits:
-
Object
- Object
- Google::Apis::MybusinessV3::PointRadius
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/mybusiness_v3/classes.rb,
generated/google/apis/mybusiness_v3/representations.rb,
generated/google/apis/mybusiness_v3/representations.rb
Overview
A radius around a particular point (latitude/longitude).
Instance Attribute Summary collapse
-
#latlng ⇒ Google::Apis::MybusinessV3::LatLng
An object representing a latitude/longitude pair.
-
#radius_km ⇒ Float
The distance in kilometers of the area around the point.
Instance Method Summary collapse
-
#initialize(**args) ⇒ PointRadius
constructor
A new instance of PointRadius.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ PointRadius
Returns a new instance of PointRadius
896 897 898 |
# File 'generated/google/apis/mybusiness_v3/classes.rb', line 896 def initialize(**args) update!(**args) end |
Instance Attribute Details
#latlng ⇒ Google::Apis::MybusinessV3::LatLng
An object representing a latitude/longitude pair. This is expressed as a pair
of doubles representing degrees latitude and degrees longitude. Unless
specified otherwise, this must conform to the
WGS84
standard. Values must be within normalized ranges.
Example of normalization code in Python:
def NormalizeLongitude(longitude):
"""Wraps decimal degrees longitude to [-180.0, 180.0]."""
q, r = divmod(longitude, 360.0)
if r > 180.0 or (r == 180.0 and q <= -1.0):
return r - 360.0
return r
def NormalizeLatLng(latitude, longitude):
"""Wraps decimal degrees latitude and longitude to
[-90.0, 90.0] and [-180.0, 180.0], respectively."""
r = latitude % 360.0
if r <= 90.0:
return r, NormalizeLongitude(longitude)
elif r >= 270.0:
return r - 360, NormalizeLongitude(longitude)
else:
return 180 - r, NormalizeLongitude(longitude + 180.0)
assert 180.0 == NormalizeLongitude(180.0)
assert -180.0 == NormalizeLongitude(-180.0)
assert -179.0 == NormalizeLongitude(181.0)
assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)
assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)
assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)
assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)
assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)
assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)
assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)
assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)
assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)
assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)
Corresponds to the JSON property latlng
889 890 891 |
# File 'generated/google/apis/mybusiness_v3/classes.rb', line 889 def latlng @latlng end |
#radius_km ⇒ Float
The distance in kilometers of the area around the point.
Corresponds to the JSON property radiusKm
894 895 896 |
# File 'generated/google/apis/mybusiness_v3/classes.rb', line 894 def radius_km @radius_km end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
901 902 903 904 |
# File 'generated/google/apis/mybusiness_v3/classes.rb', line 901 def update!(**args) @latlng = args[:latlng] if args.key?(:latlng) @radius_km = args[:radius_km] if args.key?(:radius_km) end |