def test_inline_transformations(self): path = Path() self.assertTrue(path is not path.translate(10, 20)) self.assertTrue(path is not path.transform(Transform(scale=10))) self.assertTrue(path is not path.rotate(10)) self.assertTrue(path is not path.scale(10, 20)) self.assertTrue(path is path.translate(10, 20, inplace=True)) self.assertTrue( path is path.transform(Transform(scale=10), inplace=True)) self.assertTrue(path is path.rotate(10, inplace=True)) self.assertTrue(path is path.scale(10, 20, inplace=True))
def test_scale(self): """Paths can be scaled using the times operator""" ret = Path('M 10,10 L 30,30 C 20 20 10 10 10 10 l 10 10').scale(2.5, 3) self._assertPath(ret, 'M 25 30 L 75 90 C 50 60 25 30 25 30 l 25 30') ret = Path( "M 29.867708,101.68274 A 14.867708,14.867708 0 0 1 15,116.55045 14.867708," "14.867708 0 0 1 0.13229179,101.68274 14.867708,14.867708 0 0 1 15,86.815031 " "14.867708,14.867708 0 0 1 29.867708,101.68274 Z") ret = ret.scale(1.2, 0.8) self._assertPath( ret, 'M 35.8412 81.3462 ' 'A 17.8412 11.8942 0 0 1 18 93.2404 ' 'A 17.8412 11.8942 0 0 1 0.15875 81.3462 ' 'A 17.8412 11.8942 0 0 1 18 69.452 ' 'A 17.8412 11.8942 0 0 1 35.8412 81.3462 Z')