Example #1
0
    def parseLeg(self, str):
        dct = json.loads(str)
        if dct.get('from') is None:
            return None
        if (dct.get('anchorDistance') is not None):
            rt = AVNRoutingLeg(
                None, gpx.GPXWaypoint(**self.convertToGpx(dct.get('from'))),
                None, False, -1, 0, False)
            rt.anchorDistance = float(dct.get('anchorDistance'))
            return rt

        if dct.get('to') is None:
            return None
        currentTarget = dct.get('currentTarget')
        if currentTarget is None:
            currentTarget = -1
        rt = AVNRoutingLeg(
            dct.get('name'),
            gpx.GPXWaypoint(**self.convertToGpx(dct.get('from'))),
            gpx.GPXWaypoint(**self.convertToGpx(dct.get('to'))),
            dct.get('active'), currentTarget, dct.get('approachDistance'),
            dct.get('approach'))
        if dct.get('currentRoute') is not None:
            try:
                rt.currentRoute = self.routeFromJson(dct.get('currentRoute'))
            except:
                AVNLog.error("error parsing route from leg: %s",
                             traceback.format_exc())
        return rt
Example #2
0
 def parseWP(self, dct):
     return gpx.GPXWaypoint(**self.convertToGpx(dct))