cae2894fd6d39307f35c59335078dc0024b3ef2c braney Tue Apr 2 16:02:44 2013 -0700 oops... fixed a little bug in the antialiasing when drawing stuff off screen diff --git src/lib/memgfx.c src/lib/memgfx.c index dd7c880..6ed6038 100644 --- src/lib/memgfx.c +++ src/lib/memgfx.c @@ -407,32 +407,32 @@ /* Puts a single dot on the image, mixing it with what is already there * based on the frac argument. */ { Color *pt = _mgPixAdr(img,x,y); float invFrac = 1 - frac; int r = COLOR_32_RED(*pt) * invFrac + COLOR_32_RED(col) * frac; int g = COLOR_32_GREEN(*pt) * invFrac + COLOR_32_GREEN(col) * frac; int b = COLOR_32_BLUE(*pt) * invFrac + COLOR_32_BLUE(col) * frac; mgPutDot(img,x,y,MAKECOLOR_32(r,g,b)); } #define fraction(X) (((double)(X))-(double)(int)(X)) #define invFraction(X) (1.0-fraction(X)) -void mgAliasLine( struct memGfx *mg, unsigned int x1, unsigned int y1, - unsigned int x2, unsigned int y2, Color color) +void mgAliasLine( struct memGfx *mg, int x1, int y1, + int x2, int y2, Color color) /* Draw an antialiased line using the Wu algorithm. */ { double dx = (double)x2 - (double)x1; double dy = (double)y2 - (double)y1; // figure out what quadrant we're in if ( fabs(dx) > fabs(dy) ) { if ( x2 < x1 ) { // swap start and end points int tmp = x2; x2 = x1; x1 = tmp;