Воробьев Егор Александрович, 419/2 (КФ) MatchSquare 16601
Жангирхан Шаку, 404 MatchSquare 16536
t1class Square:t1class Square:
2    __match_args__ = ('x', 'y', 'w')2    __match_args__ = ('x', 'y', 'w')
33
4    def __init__(self, x, y, w):4    def __init__(self, x, y, w):
5        self._x = x5        self._x = x
6        self._y = y6        self._y = y
7        self._w = w7        self._w = w
88
9    @property9    @property
10    def x(self):10    def x(self):
11        return self._x11        return self._x
1212
13    @x.setter13    @x.setter
14    def x(self, value):14    def x(self, value):
15        self._x = value15        self._x = value
1616
17    @property17    @property
18    def y(self):18    def y(self):
19        return self._y19        return self._y
2020
21    @y.setter21    @y.setter
22    def y(self, value):22    def y(self, value):
23        self._y = value23        self._y = value
2424
25    @property25    @property
26    def w(self):26    def w(self):
27        return self._w27        return self._w
2828
29    @w.setter29    @w.setter
30    def w(self, value):30    def w(self, value):
31        self._w = value31        self._w = value
3232
33    @property33    @property
34    def h(self):34    def h(self):
35        return self._w35        return self._w
3636
37    @h.setter37    @h.setter
38    def h(self, value):38    def h(self, value):
39        self._w = value39        self._w = value
4040
41    @property41    @property
42    def s(self):42    def s(self):
43        return self._w * self._w43        return self._w * self._w
4444
45    @s.setter45    @s.setter
46    def s(self, value):46    def s(self, value):
47        pass47        pass
4848
49    @property49    @property
50    def center(self):50    def center(self):
51        cx = self._x + self._w / 251        cx = self._x + self._w / 2
52        cy = self._y + self._w / 252        cy = self._y + self._w / 2
53        return (cx, cy)53        return (cx, cy)
5454
55    @center.setter55    @center.setter
56    def center(self, value):56    def center(self, value):
57        if len(value) == 2:57        if len(value) == 2:
58            cx, cy = value58            cx, cy = value
59        else:59        else:
60            cx, cy, dx, dy = value60            cx, cy, dx, dy = value
61            cx += dx61            cx += dx
62            cy += dy62            cy += dy
63        old_cx, old_cy = self.center63        old_cx, old_cy = self.center
64        dx = cx - old_cx64        dx = cx - old_cx
65        dy = cy - old_cy65        dy = cy - old_cy
66        self._x += dx66        self._x += dx
67        self._y += dy67        self._y += dy
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op