예제 #1
0
    def InitLocationCollection(self,
                               count,
                               latOrigin=59.3325800,
                               lngOrigin=18.0649000,
                               latIncrement=0.001,
                               lngIncrement=0.001):
        shopLocations = []
        #init regular locations
        for i in range(0, count):
            lat = latOrigin + i * latIncrement
            lng = lngOrigin + i * lngIncrement
            location = Location(lat, lng)
            shopLocations.append(ShopLocation(None, location))
        #init locations close to equator, poles and prime meridian
        equator = ShopLocation(None, Location(0, lngOrigin))
        pole1 = ShopLocation(None, Location(89.5, lngOrigin))
        pole2 = ShopLocation(None, Location(-89.5, lngOrigin))
        primeMeridian = ShopLocation(None, Location(latOrigin, 0))
        edgeMeridian1 = ShopLocation(None, Location(latOrigin, 179.5))
        edgeMeridian2 = ShopLocation(None, Location(latOrigin, -179.5))
        shopLocations.extend([
            equator, pole1, pole2, primeMeridian, edgeMeridian1, edgeMeridian2
        ])

        return shopLocations
예제 #2
0
 def InitLocationCollection(self,
                            count,
                            latOrigin=59.3325800,
                            lngOrigin=18.0649000,
                            latIncrement=0.001,
                            lngIncrement=0.001):
     shopLocations = []
     for i in range(0, count):
         lat = latOrigin + i * latIncrement
         lng = lngOrigin + i * lngIncrement
         location = Location(lat, lng)
         shopLocations.append(ShopLocation(None, location))
     return shopLocations
예제 #3
0
    def InitLocationCollection(self,
                               count,
                               latOrigin=59.3325800,
                               lngOrigin=18.0649000,
                               latIncrement=0.001,
                               lngIncrement=0.001):
        shopLocations = []
        shops = self.InitShops(count)
        #init regular locations
        for i in range(0, count):
            lat = latOrigin + i * latIncrement
            lng = lngOrigin + i * lngIncrement
            location = Location(lat, lng)
            shopLocations.append(ShopLocation(shops[i], location))

        return shopLocations
예제 #4
0
    def addLocation(self, client, infos):
        print("[UPDATE LOCATION]: id: " + str(client.userId) + " location: " +
              str(infos))
        try:
            longitude = float(infos["longitude"])
            latitude = float(infos["latitude"])
            milliseconds = float(infos["time"])

            if (longitude == 0.0 or latitude == 0.0):
                client.sendError("Invalid longitude or latitude")
            else:
                if (milliseconds == 0):
                    milliseconds = int(time.time())
                client.updateLocations(
                    Location(longitude, latitude, milliseconds))
                client.sendConfirmation("location", "Location updated")
        except ValueError as e:
            client.sendError("location", e)
        except KeyError as e:
            client.sendError("location", e)
예제 #5
0
 def setUp(self):
     self.shopLocations = self.InitLocationCollection(10)
     self.origin = Location(59.3325800, 18.0649000)