Class: Google::Apis::VisionV1::LocationInfo
- Inherits:
-
Object
- Object
- Google::Apis::VisionV1::LocationInfo
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/vision_v1/classes.rb,
generated/google/apis/vision_v1/representations.rb,
generated/google/apis/vision_v1/representations.rb
Overview
Detected entity location information.
Instance Attribute Summary collapse
-
#lat_lng ⇒ Google::Apis::VisionV1::LatLng
An object representing a latitude/longitude pair.
Instance Method Summary collapse
-
#initialize(**args) ⇒ LocationInfo
constructor
A new instance of LocationInfo.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ LocationInfo
Returns a new instance of LocationInfo
227 228 229 |
# File 'generated/google/apis/vision_v1/classes.rb', line 227 def initialize(**args) update!(**args) end |
Instance Attribute Details
#lat_lng ⇒ Google::Apis::VisionV1::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)
The code in logs/storage/validator/logs_validator_traits.cc treats this type
as if it were annotated as ST_LOCATION.
Corresponds to the JSON property latLng
225 226 227 |
# File 'generated/google/apis/vision_v1/classes.rb', line 225 def lat_lng @lat_lng end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
232 233 234 |
# File 'generated/google/apis/vision_v1/classes.rb', line 232 def update!(**args) @lat_lng = args[:lat_lng] if args.key?(:lat_lng) end |