Example #1
0
    def _on_gps(self, msg, header, payload):
        fix,sv,lat,lon,hsl,hacc,vacc = msg.unpack_scaled_values(payload)

        if fix:
            self._gps_coords.set_text("GPS: %.4f %s, %.4f %s" % (lat,"N",lon,"E"))

            #convert from mm to m
            hsl = hsl/1000.0
            self._alt.set_text("ALT: %.1f m" % hsl)

            #update distance from home
            if self._home_lat != None and self._home_lon != None:
                dist = geo.crow_flies_distance_two_point(
                            (self._home_lat, self._home_lon),
                            (lat, lon))
                self._dist.set_text("DIST: %.1f m" % dist)
Example #2
0
    def _on_gps(self, msg, header, payload):
        fix,sv,lat,lon,hsl,hacc,vacc = msg.unpack_scaled_values(payload)

        if fix:
            self._gps_coords.set_text("GPS: %.4f %s, %.4f %s" % (lat,"N",lon,"E"))

            #convert from mm to m
            hsl = hsl/1000.0
            self._alt.set_text("ALT: %.1f m" % hsl)

            #update distance from home
            if self._home_lat != None and self._home_lon != None:
                dist = geo.crow_flies_distance_two_point(
                            (self._home_lat, self._home_lon),
                            (lat, lon))
                self._dist.set_text("DIST: %.1f m" % dist)
Example #3
0
 def testVinchey(self):
     for start,end,name,answer in self._testdata:
         d = geo.crow_flies_distance_two_point(start, end, "vinchey")
         self.failUnlessAlmostEqual(d, answer, places=1)
Example #4
0
 def testVinchey(self):
     for start, end, name, answer in self._testdata:
         d = geo.crow_flies_distance_two_point(start, end, "vinchey")
         self.failUnlessAlmostEqual(d, answer, places=1)