Example #1
0
    def test_basic_right(self):
        bitmask = np.array([
            [False, False, False, False],
            [False, False, False, False],
            [False, True,  True,  False],
            [False, True,  False, False],
            [False, False, False, False],
        ])
        cost, rectangle = make_spritemap.minimum_average_cost_grow(bitmask, (2, 1, 4, 2))
        self.assertEqual(rectangle, (2, 1, 4, 3))
        self.assertAlmostEqual(cost, 2.0)

        cost, rectangle = make_spritemap.minimum_average_cost_grow(bitmask, (2, 1, 4, 3))
        self.assertEqual(rectangle, (2, 1, 4, 3))
        self.assertEqual(cost, None)
    def test_basic_right(self):
        bitmask = np.array([
            [False, False, False, False],
            [False, False, False, False],
            [False, True, True, False],
            [False, True, False, False],
            [False, False, False, False],
        ])
        cost, rectangle = make_spritemap.minimum_average_cost_grow(
            bitmask, (2, 1, 4, 2))
        self.assertEqual(rectangle, (2, 1, 4, 3))
        self.assertAlmostEqual(cost, 2.0)

        cost, rectangle = make_spritemap.minimum_average_cost_grow(
            bitmask, (2, 1, 4, 3))
        self.assertEqual(rectangle, (2, 1, 4, 3))
        self.assertEqual(cost, None)
Example #3
0
 def test_basic_left(self):
     bitmask = np.array([
         [False, False, False, False],
         [False, False, False, False],
         [False, True,  False, False],
         [True,  False, False, False],
         [False, False, False, False],
     ])
     cost, rectangle = make_spritemap.minimum_average_cost_grow(bitmask, (2, 3, 4, 4))
     self.assertEqual(rectangle, (2, 0, 4, 4))
     self.assertAlmostEqual(cost, 3.0)
 def test_basic_left(self):
     bitmask = np.array([
         [False, False, False, False],
         [False, False, False, False],
         [False, True, False, False],
         [True, False, False, False],
         [False, False, False, False],
     ])
     cost, rectangle = make_spritemap.minimum_average_cost_grow(
         bitmask, (2, 3, 4, 4))
     self.assertEqual(rectangle, (2, 0, 4, 4))
     self.assertAlmostEqual(cost, 3.0)
Example #5
0
    def test_basic_vertical(self):
        bitmask = np.array([
            [False, True,  False, False],
            [False, False, False, False],
            [False, True,  False, False],
            [False, False, False, True],
            [False, False, False, False],
        ])
        cost, rectangle = make_spritemap.minimum_average_cost_grow(bitmask, (3, 1, 4, 2))
        self.assertEqual(rectangle, (2, 1, 4, 2))
        self.assertAlmostEqual(cost, 1.0)

        bitmask = np.array([
            [False, True,  False, False],
            [False, False, False, False],
            [False, False, False, False],
            [False, True,  False, False],
            [False, False, False, False],
        ])
        cost, rectangle = make_spritemap.minimum_average_cost_grow(bitmask, (2, 1, 3, 2))
        self.assertEqual(rectangle, (2, 1, 4, 2))
        self.assertAlmostEqual(cost, 1.0)
    def test_basic_vertical(self):
        bitmask = np.array([
            [False, True, False, False],
            [False, False, False, False],
            [False, True, False, False],
            [False, False, False, True],
            [False, False, False, False],
        ])
        cost, rectangle = make_spritemap.minimum_average_cost_grow(
            bitmask, (3, 1, 4, 2))
        self.assertEqual(rectangle, (2, 1, 4, 2))
        self.assertAlmostEqual(cost, 1.0)

        bitmask = np.array([
            [False, True, False, False],
            [False, False, False, False],
            [False, False, False, False],
            [False, True, False, False],
            [False, False, False, False],
        ])
        cost, rectangle = make_spritemap.minimum_average_cost_grow(
            bitmask, (2, 1, 3, 2))
        self.assertEqual(rectangle, (2, 1, 4, 2))
        self.assertAlmostEqual(cost, 1.0)