22 lines
527 B
Python
22 lines
527 B
Python
|
import copy
|
||
|
|
||
|
class Transformation:
|
||
|
def __init__(self):
|
||
|
self._translation_x = 0
|
||
|
self._translation_y = 0
|
||
|
|
||
|
def set_translation(self, x, y):
|
||
|
self._translation_x = x
|
||
|
self._translation_y = y
|
||
|
|
||
|
def get_position(self, x, y):
|
||
|
translated_x = x + self._translation_x
|
||
|
translated_y = y + self._translation_y
|
||
|
return (translated_x, translated_y)
|
||
|
|
||
|
def compose(self, transf):
|
||
|
composed = copy.copy(transf)
|
||
|
composed._translation_x += transf._translation_x
|
||
|
composed._translation_y += transf._translation_y
|
||
|
return composed
|