Example #1
0
    def test_from_tile(self):
        """Test coordinate creation from tile"""
        p = Point.from_tile(*make_tile(8800, 5574, 14, 0, 0, 256))
        p_pos = Point(49.752879934150215, 13.359375, 0.0)

        p2 = Point.from_tile(*make_tile(8801, 5575, 14, 0, 0, 256))
        p_half = Point.from_tile(*make_tile(8800, 5574, 14, 1, 1, 2))

        # Check creation
        for att in ['latitude', 'longitude']:
            with self.subTest("assumed location: {}".format(att)):
                self.assertAlmostEqual(getattr(p, att), getattr(p_pos, att))

        with self.subTest("fractional tiles: y-axis addition"):
            self.assertEqual(
                Point.from_tile(*make_tile(8800, 5574, 14, 0, 32, 32)),
                Point.from_tile(*make_tile(x=8800, y=5575, z=14)))
        with self.subTest("fractional tiles: x-axis addition"):
            self.assertAlmostEqual(
                Point.from_tile(*make_tile(8800, 5574, 14, 32, 0, 32)),
                Point.from_tile(*make_tile(x=8801, y=5574, z=14)))
        with self.subTest("fractional tiles: addition on both axes"):
            self.assertEqual(
                Point.from_tile(*make_tile(8800, 5574, 14, 32, 32, 32)), p2)

        with self.subTest("y increases -> latitude decreases"):
            self.assertGreater(p.latitude, p_half.latitude)
        with self.subTest("x increases -> latitude increases"):
            self.assertLess(p.longitude, p_half.longitude)
Example #2
0
    def test_from_tile(self):
        """Test coordinate creation from tile"""
        p = Point.from_tile(*make_tile(8800, 5574, 14, 0, 0, 256))
        p_pos = Point(49.752879934150215, 13.359375, 0.0)

        p2 = Point.from_tile(*make_tile(8801, 5575, 14, 0, 0, 256))
        p_half = Point.from_tile(*make_tile(8800, 5574, 14, 1, 1, 2))

        # Check creation
        for att in ['latitude', 'longitude']:
            with self.subTest("assumed location: {}".format(att)):
                self.assertAlmostEqual(getattr(p, att), getattr(p_pos, att))

        with self.subTest("fractional tiles: y-axis addition"):
            self.assertEqual(Point.from_tile(*make_tile(8800, 5574, 14, 0, 32, 32)),
                             Point.from_tile(*make_tile(x=8800, y=5575, z=14)))
        with self.subTest("fractional tiles: x-axis addition"):
            self.assertAlmostEqual(Point.from_tile(*make_tile(8800, 5574, 14, 32, 0, 32)),
                                   Point.from_tile(*make_tile(x=8801, y=5574, z=14)))
        with self.subTest("fractional tiles: addition on both axes"):
            self.assertEqual(Point.from_tile(*make_tile(8800, 5574, 14, 32, 32, 32)), p2)

        with self.subTest("y increases -> latitude decreases"):
            self.assertGreater(p.latitude, p_half.latitude)
        with self.subTest("x increases -> latitude increases"):
            self.assertLess(p.longitude, p_half.longitude)
Example #3
0
    def test_to_tile(self):
        t = make_tile(8800, 5574, 14)[0]
        point_in_t = Point(49.75, 13.36)

        with self.subTest("from tile and back"):
            self.assertEqual(Point.from_tile(t).to_tile(None, t.z), t)

        with self.subTest("random point"):
            self.assertEqual(point_in_t.to_tile(None, 14), t)

        with self.subTest("increase in latitude: decrease in y value"):
            self.assertLess(Point(50., 13.36).to_tile(None, 14).y, t.y)

        with self.subTest("increase in longitude: increase in x value"):
            self.assertGreater(Point(49.75, 14.).to_tile(None, 14).x, t.x)
Example #4
0
    def test_to_tile(self):
        t = make_tile(8800, 5574, 14)[0]
        point_in_t = Point(49.75, 13.36)

        with self.subTest("from tile and back"):
            self.assertEqual(Point.from_tile(t).to_tile(None, t.z), t)

        with self.subTest("random point"):
            self.assertEqual(point_in_t.to_tile(None, 14), t)

        with self.subTest("increase in latitude: decrease in y value"):
            self.assertLess(Point(50., 13.36).to_tile(None, 14).y, t.y)

        with self.subTest("increase in longitude: increase in x value"):
            self.assertGreater(Point(49.75, 14.).to_tile(None, 14).x, t.x)