def test_set_shards_disc(self): radius = 4 offset = (3, 2) disc = Disc(gold, radius, offset) chunk = Chunk() chunk.set_shards(disc) self.assertEquals(chunk.shards, (disc,), "bad shards") shard = chunk.shards[0] self.assertEquals(shard.get_centroid(), (0, 0))
def test_set_shards_block(self): verts = [(0, 0), (0, 1), (1, 1), (1, 0)] offset = (10, 20) block = Block(gold, verts, offset) self.assertEquals(block.get_centroid(), (10.5, 20.5), "bad offset") chunk = Chunk() chunk.set_shards(block) self.assertEquals(chunk.shards, (block,), "bad shards") shard = chunk.shards[0] self.assertEquals(shard.get_centroid(), (0, 0), "bad offset")
def test_set_shards_two_discs(self): disc1 = Disc(gold, 4, (+100, +200)) disc2 = Disc(gold, 2, (+115, +225)) chunk = Chunk() chunk.set_shards(disc1, disc2) self.assertEquals(chunk.shards, (disc1, disc2), "bad shards") shard1offset = chunk.shards[0].get_centroid() self.assertAlmostEquals(shard1offset[0], -3.0, msg="bad offset1 x") self.assertAlmostEquals(shard1offset[1], -5.0, msg="bad offset1 y") shard2offset = chunk.shards[1].get_centroid() self.assertAlmostEquals(shard2offset[0], +12.0, msg="bad offset2 x") self.assertAlmostEquals(shard2offset[1], +20.0, msg="bad offset2 y")