Module: ADSB::Messages::Position

Defined in:
lib/adsb/messages/position.rb

Instance Method Summary collapse

Instance Method Details

#altitudeObject



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

Returns:

  • (Boolean)


22
23
24
# File 'lib/adsb/messages/position.rb', line 22

def even?
  @body[53].to_i == 0
end

#latitudeObject



10
11
12
# File 'lib/adsb/messages/position.rb', line 10

def latitude
  @body[54..70].to_i(2).to_f / 131072
end

#longitudeObject



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

Returns:

  • (Boolean)


18
19
20
# File 'lib/adsb/messages/position.rb', line 18

def odd?
  @body[53].to_i == 1
end

#parityObject



26
27
28
# File 'lib/adsb/messages/position.rb', line 26

def parity
  even? ? :even : :odd
end