[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [gpsd-dev] [PATCH 1/2] Excludes unknown-position sats from skyview d
From: |
Gary E. Miller |
Subject: |
Re: [gpsd-dev] [PATCH 1/2] Excludes unknown-position sats from skyview displays. |
Date: |
Thu, 22 Sep 2016 18:30:16 -0700 |
Yo Fred!
Applied, will be pushed after I get a few more pulled.
On Thu, 22 Sep 2016 16:28:35 -0700
Fred Wright <address@hidden> wrote:
> In some cases, the elevation and azimuth information are missing
> (i.e., reported as 0) for some satellites. E.g., the Navika-100
> receiver fails to report positions for SBAS satellites. This change
> avoids showing such satellites at the "north point" of the display.
> They are *not* excluded from the textual list.
>
> TESTED:
> Ran xgps, xgpsspeed, and webgps.py against data from a Navika-100
> receiver, and verified that the SBAS satellites are no longer
> inappropriately shown at the top.
> ---
> contrib/webgps.py | 5 ++++-
> xgps | 2 ++
> xgpsspeed | 9 ++++++---
> 3 files changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/contrib/webgps.py b/contrib/webgps.py
> index 0a801b5..2e9a818 100755
> --- a/contrib/webgps.py
> +++ b/contrib/webgps.py
> @@ -244,7 +244,10 @@ function draw_satview() {
>
> # Draw the satellites
> for s in self.satellites:
> - x, y = polartocart(s.elevation, s.azimuth)
> + el, az = s.elevation, s.azimuth
> + if el == 0 and az == 0:
> + continue # Skip satellites with unknown position
> + x, y = polartocart(el, az)
> fill = not s.used and 'lightgrey' or \
> s.ss < 30 and 'red' or \
> s.ss < 35 and 'yellow' or \
> diff --git a/xgps b/xgps
> index 4a0abbe..066401f 100755
> --- a/xgps
> +++ b/xgps
> @@ -235,6 +235,8 @@ class SkyView(Gtk.DrawingArea):
> # The satellites
> self.cr.set_line_width(2)
> for sat in self.satellites:
> + if sat.az == 0 and sat.el == 0:
> + continue # Skip satellites with unknown position
> (x, y) = self.pol2cart(sat.az, sat.el)
> if sat.ss < 10:
> self.set_color("Gray")
> diff --git a/xgpsspeed b/xgpsspeed
> index 30954b2..277b575 100755
> --- a/xgpsspeed
> +++ b/xgpsspeed
> @@ -449,15 +449,18 @@ class NauticalSpeedometer(Speedometer):
> self.cr.set_source_rgb(r, g, b)
>
> def draw_sat(self, satsoup, radius, x, y):
> - """given a sat's elevation, azimath, SNR, draw it on the
> skyview
> + """Given a sat's elevation, azimuth, SNR, draw it on the
> skyview Arg:
> satsoup: a dictionary {'el': xx, 'az': xx, 'ss': xx}
> """
> - h = pi / 2 - radians(satsoup['az']) # to xy
> + el, az = satsoup['el'], satsoup['az']
> + if el == 0 and az == 0:
> + return # Skip satellites with unknown position
> + h = pi / 2 - radians(az) # to xy
> self.cr.set_line_width(2)
> self.cr.set_source_rgb(0, 0, 0)
>
> - x0, y0 = NauticalSpeedometer.polar2xy(radius * (90 -
> satsoup['el']) // 90, h, x, y)
> + x0, y0 = NauticalSpeedometer.polar2xy(radius * (90 - el) //
> 90, h, x, y)
> self.cr.new_sub_path()
> if gps.is_sbas(satsoup['PRN']):
RGDS
GARY
---------------------------------------------------------------------------
Gary E. Miller Rellim 109 NW Wilmington Ave., Suite E, Bend, OR 97703
address@hidden Tel:+1 541 382 8588
pgpDpnkkcwjQN.pgp
Description: OpenPGP digital signature