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
1541 1542 1543 |
# File 'generated/google/apis/mybusiness_v3/classes.rb', line 1541 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
1534 1535 1536 |
# File 'generated/google/apis/mybusiness_v3/classes.rb', line 1534 def latlng @latlng end |
#radius_km ⇒ Float
The distance in kilometers of the area around the point.
Corresponds to the JSON property radiusKm
1539 1540 1541 |
# File 'generated/google/apis/mybusiness_v3/classes.rb', line 1539 def radius_km @radius_km end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1546 1547 1548 1549 |
# File 'generated/google/apis/mybusiness_v3/classes.rb', line 1546 def update!(**args) @latlng = args[:latlng] if args.key?(:latlng) @radius_km = args[:radius_km] if args.key?(:radius_km) end |