X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=gfx%2Fbitmap.c;h=d4c447e65e1440184d544cfa1d7de71d30db77b4;hb=1fc31f45bcec8bc23a5924ae5b288439abca8ded;hp=a40ba365eac78f4034c081651c081e87eb22d144;hpb=bcf38f772b397e7a8ba781a69aacb9380e54b32a;p=bertos.git diff --git a/gfx/bitmap.c b/gfx/bitmap.c old mode 100755 new mode 100644 index a40ba365..d4c447e6 --- a/gfx/bitmap.c +++ b/gfx/bitmap.c @@ -1,12 +1,35 @@ /** * \file * * - * \version $Id$ + * --> * * \author Bernardo Innocenti * \author Stefano Fedrigo @@ -14,48 +37,11 @@ * \brief Bitmap manipulation routines. */ -/*#* - *#* $Log$ - *#* Revision 1.11 2006/07/19 12:56:26 bernie - *#* Convert to new Doxygen style. - *#* - *#* Revision 1.10 2006/05/27 17:21:15 bernie - *#* Factor out, simplify and document clipping. - *#* - *#* Revision 1.9 2006/05/25 23:35:40 bernie - *#* Cleanup. - *#* - *#* Revision 1.8 2006/03/27 04:48:56 bernie - *#* gfx_blitImage(): New function; gfx_blitRaster(): Fix clipping bug. - *#* - *#* Revision 1.7 2006/03/07 22:18:04 bernie - *#* Correctly compute text width for prop fonts; Make styles a per-bitmap attribute. - *#* - *#* Revision 1.6 2006/02/23 11:17:16 bernie - *#* Documentation fixes. - *#* - *#* Revision 1.5 2006/02/15 09:10:15 bernie - *#* Implement prop fonts; Fix algo styles. - *#* - *#* Revision 1.4 2006/02/10 12:32:33 bernie - *#* Add multiple font support in bitmaps; gfx_blitRaster(): New function. - *#* - *#* Revision 1.3 2006/01/26 00:36:48 bernie - *#* Const correctness for some new functions. - *#* - *#* Revision 1.2 2006/01/24 21:55:43 aleph - *#* gfx_blit_P(): use RASTER_SIZE() to calculate raster size - *#* - *#* Revision 1.1 2006/01/24 02:17:49 bernie - *#* Split out gfx.c into bitmap.c and line.c. - *#* - *#*/ - #include "gfx.h" #include "gfx_p.h" #include /* ASSERT() */ -#include /* CPU_HARVARD */ +#include /* CPU_HARVARD */ #include /* MIN() */ #include /* CONFIG_GFX_CLIPPING */ @@ -108,7 +94,7 @@ void gfx_bitmapInit(Bitmap *bm, uint8_t *raster, coord_t w, coord_t h) */ void gfx_bitmapClear(Bitmap *bm) { - memset(bm->raster, 0, RASTER_SIZE(bm->width, bm->height)); + memset(bm->raster, 0, RAST_SIZE(bm->width, bm->height)); } @@ -124,7 +110,7 @@ void gfx_bitmapClear(Bitmap *bm) */ void gfx_blit_P(Bitmap *bm, const pgm_uint8_t *raster) { - memcpy_P(bm->raster, raster, RASTER_SIZE(bm->width, bm->height)); + memcpy_P(bm->raster, raster, RAST_SIZE(bm->width, bm->height)); } #endif /* CPU_HARVARD */ @@ -240,7 +226,7 @@ void gfx_blitImage(Bitmap *dst, coord_t dxmin, coord_t dymin, const Image *image } -#if CONFIG_GFX_CLIPPING +#if CONFIG_GFX_CLIPPING || CONFIG_GFX_VCOORDS /** * Set the bitmap clipping rectangle to the specified coordinates. @@ -248,9 +234,14 @@ void gfx_blitImage(Bitmap *dst, coord_t dxmin, coord_t dymin, const Image *image * All drawing performed on the bitmap will be clipped inside this * rectangle. * + * The clipping rectangle is also used as a bounding box for the + * logical view of the virtual coordinate system. + * * \note Following the convention used for all other operations, the * top-left pixels of the rectangle are included, while the * bottom-right pixels are considered outside the clipping region. + * + * \see gfx_setViewRect */ void gfx_setClipRect(Bitmap *bm, coord_t minx, coord_t miny, coord_t maxx, coord_t maxy) {