X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=naja%2Fresources%2Fmutators.py;h=382e7c77555edaf0f60e633dab9042c2aa584173;hb=a0657c281733cdca517e046af77b0288677a88e4;hp=2a730de5663a3fb39b71e0ea354f02d364781347;hpb=acfcd6aadbcc6c4ba91b4071fc70cb23a460987c;p=naja.git diff --git a/naja/resources/mutators.py b/naja/resources/mutators.py index 2a730de..382e7c7 100644 --- a/naja/resources/mutators.py +++ b/naja/resources/mutators.py @@ -1,6 +1,8 @@ '''Mutations to apply to images''' -from pygame.transform import rotate, flip +from pygame.transform import flip, rotate, scale + +from naja.constants import EIGHT_BIT_SCALE class Mutator(object): @@ -27,6 +29,15 @@ def rotator(angle): return Mutator(rotate, angle) +def scaler(size): + return Mutator(scale, size) + + +def scale_multiplier(image, factor): + size = image.get_width() * factor, image.get_height() * factor + return scale(image, size) + + # Identity mutator NULL = Mutator(lambda x: x) @@ -37,3 +48,5 @@ R270 = rotator(-90) FLIP_H = Mutator(flip, True, False) FLIP_V = Mutator(flip, False, True) + +EIGHT_BIT = Mutator(scale_multiplier, EIGHT_BIT_SCALE)