From c2af197edb7719ca4d4ad77d778c135db6149ba4 Mon Sep 17 00:00:00 2001 From: Matthew Hoops Date: Thu, 27 Oct 2011 19:20:28 -0400 Subject: GRAPHICS: Add a Surface wrapper for drawThickLine --- graphics/surface.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'graphics/surface.h') diff --git a/graphics/surface.h b/graphics/surface.h index 018a283aad..9d91a601e4 100644 --- a/graphics/surface.h +++ b/graphics/surface.h @@ -142,9 +142,25 @@ struct Surface { * @param x1 The x coordinate of the end point. * @param y1 The y coordinate of the end point. * @param color The color of the line. + * @note This is just a wrapper around Graphics::drawLine */ void drawLine(int x0, int y0, int x1, int y1, uint32 color); + /** + * Draw a thick line. + * + * @param x0 The x coordinate of the start point. + * @param y0 The y coordiante of the start point. + * @param x1 The x coordinate of the end point. + * @param y1 The y coordinate of the end point. + * @param penX The width of the pen (thickness in the x direction) + * @param penY The height of the pen (thickness in the y direction) + * @param color The color of the line. + * @note This is just a wrapper around Graphics::drawThickLine + * @note The x/y coordinates of the start and end points are the upper-left most part of the pen + */ + void drawThickLine(int x0, int y0, int x1, int y1, int penX, int penY, uint32 color); + /** * Draw a horizontal line. * -- cgit v1.2.3 From eeb39592599815875a736fdbef67204c2036e935 Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Sat, 14 Jul 2012 06:03:04 +0200 Subject: GRAPHICS: Add an in-place Surface PixelFormat conversion. --- graphics/surface.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'graphics/surface.h') diff --git a/graphics/surface.h b/graphics/surface.h index eb8d1ac42e..eaf62f84eb 100644 --- a/graphics/surface.h +++ b/graphics/surface.h @@ -134,6 +134,20 @@ struct Surface { */ void copyFrom(const Surface &surf); + /** + * Convert the data to another pixel format. + * + * This works in-place. This means it will not create an additional buffer + * for the conversion process. The value of pixels might change though. + * + * Note that you should only use this, when you created the Surface data via + * create! Otherwise this function has undefined behavior. + * + * @param dstFormat The desired format + * @param palette The palette (in RGB888), if the source format has a Bpp of 1 + */ + void convertToInPlace(const PixelFormat &dstFormat, const byte *palette = 0); + /** * Convert the data to another pixel format. * -- cgit v1.2.3