Module: ADSB::Messages::Position
- Defined in:
- lib/adsb/messages/position.rb
Instance Method Summary collapse
- #altitude ⇒ Object
- #even? ⇒ Boolean
- #latitude ⇒ Object
- #longitude ⇒ Object
- #odd? ⇒ Boolean
- #parity ⇒ Object
Instance Method Details
#altitude ⇒ Object
4 5 6 7 8 |
# File 'lib/adsb/messages/position.rb', line 4 def altitude altitude = @body[40..51] resolution = altitude.slice!(7).eql?(0) ? 100 : 25 altitude = altitude.to_i(2) * resolution - 1000 end |
#even? ⇒ Boolean
22 23 24 |
# File 'lib/adsb/messages/position.rb', line 22 def even? @body[53].to_i == 0 end |
#latitude ⇒ Object
10 11 12 |
# File 'lib/adsb/messages/position.rb', line 10 def latitude @body[54..70].to_i(2).to_f / 131072 end |
#longitude ⇒ Object
14 15 16 |
# File 'lib/adsb/messages/position.rb', line 14 def longitude @body[71..87].to_i(2).to_f / 131072 end |
#odd? ⇒ Boolean
18 19 20 |
# File 'lib/adsb/messages/position.rb', line 18 def odd? @body[53].to_i == 1 end |
#parity ⇒ Object
26 27 28 |
# File 'lib/adsb/messages/position.rb', line 26 def parity even? ? :even : :odd end |