Class: Google::Apis::VisionV1::LatLongRect

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

Overview

Rectangle determined by min and max LatLng pairs.

Defined Under Namespace

Classes: Representation

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ LatLongRect

Returns a new instance of LatLongRect.



262
263
264
# File 'lib/google/apis/vision_v1/classes.rb', line 262

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

Instance Attribute Details

#max_lat_lngGoogle::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 <a href=“www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf”>WGS84 standard</a>. 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

-180.0, 180.0

and [-90.0, 90.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 ‘maxLatLng`



221
222
223
# File 'lib/google/apis/vision_v1/classes.rb', line 221

def max_lat_lng
  @max_lat_lng
end

#min_lat_lngGoogle::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 <a href=“www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf”>WGS84 standard</a>. 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

-180.0, 180.0

and [-90.0, 90.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 ‘minLatLng`



260
261
262
# File 'lib/google/apis/vision_v1/classes.rb', line 260

def min_lat_lng
  @min_lat_lng
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



267
268
269
270
# File 'lib/google/apis/vision_v1/classes.rb', line 267

def update!(**args)
  @max_lat_lng = args[:max_lat_lng] if args.key?(:max_lat_lng)
  @min_lat_lng = args[:min_lat_lng] if args.key?(:min_lat_lng)
end