Module: GeoUnits::Converter::Normalizer
- Extended by:
- Normalizer
- Included in:
- GeoUnits::Converter, Normalizer
- Defined in:
- lib/geo_units/converter/normalizer.rb
Instance Method Summary collapse
- #normalize_deg(degrees, shift = 0) ⇒ Object (also: #normalize_degrees)
-
#normalize_lat(deg) ⇒ Object
all degrees between -90 and 90.
-
#normalize_lng(deg) ⇒ Object
all degrees between -180 and 180.
Instance Method Details
#normalize_deg(degrees, shift = 0) ⇒ Object Also known as: normalize_degrees
44 45 46 |
# File 'lib/geo_units/converter/normalizer.rb', line 44 def normalize_deg degrees, shift = 0 (degrees + shift) % 360 end |
#normalize_lat(deg) ⇒ Object
all degrees between -90 and 90
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/geo_units/converter/normalizer.rb', line 21 def normalize_lat deg case deg when -360..-270 deg % 90 when -270..-180 90 - (deg % 90) when -180..-90 - (deg % 90) when -90..0 -90 + (deg % 90) when 0..90 deg when 90..180 deg % 90 when 180..270 - (deg % 90) when 270..360 - 90 + (deg % 90) else raise ArgumentError, "Degrees #{deg} out of range, must be between -360 to 360" end end |
#normalize_lng(deg) ⇒ Object
all degrees between -180 and 180
5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/geo_units/converter/normalizer.rb', line 5 def normalize_lng deg case deg when -360..-180 deg % 180 when -180..0 -180 + (deg % 180) when 0..180 deg when 180..360 deg % 180 else raise ArgumentError, "Degrees #{deg} out of range, must be between -360 to 360" end end |