From 0e6458cfee398e572340db461ef6beb85253a4c5 Mon Sep 17 00:00:00 2001 From: Ray Date: Sun, 3 Jun 2018 21:05:01 +0200 Subject: [PATCH] Added ImageRotate*() functions --- release/include/raylib.h | 2 ++ release/libs/win32/tcc/libraylib.a | Bin 1463584 -> 1465002 bytes src/raylib.h | 2 ++ src/textures.c | 56 +++++++++++++++++++++++++++-- 4 files changed, 58 insertions(+), 2 deletions(-) diff --git a/release/include/raylib.h b/release/include/raylib.h index a3fa1311..86ad5408 100644 --- a/release/include/raylib.h +++ b/release/include/raylib.h @@ -925,6 +925,8 @@ RLAPI void ImageDrawText(Image *dst, Vector2 position, const char *text, int fon RLAPI void ImageDrawTextEx(Image *dst, Vector2 position, Font font, const char *text, float fontSize, float spacing, Color color); // Draw text (custom sprite font) within an image (destination) RLAPI void ImageFlipVertical(Image *image); // Flip image vertically RLAPI void ImageFlipHorizontal(Image *image); // Flip image horizontally +RLAPI void ImageRotateCW(Image *image); // Rotate image clockwise 90deg +RLAPI void ImageRotateCCW(Image *image); // Rotate image counter-clockwise 90deg RLAPI void ImageColorTint(Image *image, Color color); // Modify image color: tint RLAPI void ImageColorInvert(Image *image); // Modify image color: invert RLAPI void ImageColorGrayscale(Image *image); // Modify image color: grayscale diff --git a/release/libs/win32/tcc/libraylib.a b/release/libs/win32/tcc/libraylib.a index 0d1d4549cba735f94db217105891b566c56a9c09..1aa76249f069a78ccb3fcb90156763115d77cb40 100644 GIT binary patch delta 79581 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 F|9@Obj-~(r delta 79007 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 + Color *dstPixels = (Color *)malloc(image->width*image->height*sizeof(Color)); for (int y = 0; y < image->height; y++) { @@ -1563,7 +1563,7 @@ void ImageFlipVertical(Image *image) void ImageFlipHorizontal(Image *image) { Color *srcPixels = GetImageData(*image); - Color *dstPixels = (Color *)malloc(sizeof(Color)*image->width*image->height); + Color *dstPixels = (Color *)malloc(image->width*image->height*sizeof(Color)); for (int y = 0; y < image->height; y++) { @@ -1583,6 +1583,58 @@ void ImageFlipHorizontal(Image *image) image->data = processed.data; } +// Rotate image clockwise 90deg +void ImageRotateCW(Image *image) +{ + Color *srcPixels = GetImageData(*image); + Color *rotPixels = (Color *)malloc(image->width*image->height*sizeof(Color)); + + for (int y = 0; y < image->height; y++) + { + for (int x = 0; x < image->width; x++) + { + rotPixels[x*image->height + (image->height - y - 1)] = srcPixels[y*image->width + x]; + } + } + + Image processed = LoadImageEx(rotPixels, image->height, image->width); + ImageFormat(&processed, image->format); + UnloadImage(*image); + + free(srcPixels); + free(rotPixels); + + image->data = processed.data; + image->width = processed.width; + image->height = processed.height; +} + +// Rotate image counter-clockwise 90deg +void ImageRotateCCW(Image *image) +{ + Color *srcPixels = GetImageData(*image); + Color *rotPixels = (Color *)malloc(image->width*image->height*sizeof(Color)); + + for (int y = 0; y < image->height; y++) + { + for (int x = 0; x < image->width; x++) + { + rotPixels[x*image->height + y] = srcPixels[y*image->width + (image->width - x - 1)]; + } + } + + Image processed = LoadImageEx(rotPixels, image->height, image->width); + ImageFormat(&processed, image->format); + UnloadImage(*image); + + free(srcPixels); + free(rotPixels); + + image->data = processed.data; + image->width = processed.width; + image->height = processed.height; +} + // Modify image color: tint void ImageColorTint(Image *image, Color color) {