}
else
{
- diff = abs (HWB1.H - HWB2.H);
+ diff = fabsf (HWB1.H - HWB2.H);
if (diff > 3)
{
diff = 6 - diff; /* Remember, it's a colour circle */
if (dy <= dx)
{
/* More-or-less horizontal. use wid for vertical stroke */
- wid = thick * cos (atan2 (dy, dx));
+ wid = (int)(thick * cos (atan2 (dy, dx)));
if (wid == 0)
wid = 1;
else
{
/* More-or-less vertical. use wid for horizontal stroke */
- wid = thick * sin (atan2 (dy, dx));
+ wid = (int)(thick * sin (atan2 (dy, dx)));
if (wid == 0)
wid = 1;
if (dy <= dx)
{
/* More-or-less horizontal. use wid for vertical stroke */
- wid = thick * sin (atan2 (dy, dx));
+ wid = (int)(thick * sin (atan2 (dy, dx)));
vert = 1;
d = 2 * dy - dx;
else
{
/* More-or-less vertical. use wid for horizontal stroke */
- wid = thick * sin (atan2 (dy, dx));
+ wid = (int)(thick * sin (atan2 (dy, dx)));
vert = 0;
d = 2 * dx - dy;
{
dc = gdImageGetPixel (dst, tox, toy);
- ncR = gdImageRed (src, c) * (pct / 100.0)
- + gdImageRed (dst, dc) * ((100 - pct) / 100.0);
- ncG = gdImageGreen (src, c) * (pct / 100.0)
- + gdImageGreen (dst, dc) * ((100 - pct) / 100.0);
- ncB = gdImageBlue (src, c) * (pct / 100.0)
- + gdImageBlue (dst, dc) * ((100 - pct) / 100.0);
+ ncR = (int)( gdImageRed (src, c) * (pct / 100.0f)
+ + gdImageRed (dst, dc) * ((100 - pct) / 100.0f));
+ ncG = (int)( gdImageGreen (src, c) * (pct / 100.0f)
+ + gdImageGreen (dst, dc) * ((100 - pct) / 100.0f));
+ ncB = (int)( gdImageBlue (src, c) * (pct / 100.0f)
+ + gdImageBlue (dst, dc) * ((100 - pct) / 100.0f));
/* Find a reasonable color */
nc = gdImageColorResolve (dst, ncR, ncG, ncB);
else
{
dc = gdImageGetPixel (dst, tox, toy);
- g = 0.29900 * dst->red[dc]
- + 0.58700 * dst->green[dc]
- + 0.11400 * dst->blue[dc];
-
- ncR = gdImageRed (src, c) * (pct / 100.0)
- + gdImageRed (dst, dc) * g *
- ((100 - pct) / 100.0);
- ncG = gdImageGreen (src, c) * (pct / 100.0)
- + gdImageGreen (dst, dc) * g *
- ((100 - pct) / 100.0);
- ncB = gdImageBlue (src, c) * (pct / 100.0)
- + gdImageBlue (dst, dc) * g *
- ((100 - pct) / 100.0);
+ g = 0.29900f * dst->red[dc]
+ + 0.58700f * dst->green[dc]
+ + 0.11400f * dst->blue[dc];
+
+ ncR = (int)( gdImageRed (src, c) * (pct / 100.0f)
+ + gdImageRed (dst, dc) * g * ((100 - pct) / 100.0f));
+
+ ncG = (int)( gdImageGreen (src, c) * (pct / 100.0f)
+ + gdImageGreen (dst, dc) * g * ((100 - pct) / 100.0f));
+
+ ncB = (int)( gdImageBlue (src, c) * (pct / 100.0f)
+ + gdImageBlue (dst, dc) * g * ((100 - pct) / 100.0f));
+
/* First look for an exact match */
nc = gdImageColorExact (dst, ncR, ncG, ncB);
do
{
float yportion;
- if (floor (sy) == floor (sy1))
+ if (floorf(sy) == floorf(sy1))
{
- yportion = 1.0f - (sy - floor (sy));
+ yportion = 1.0f - (sy - floorf(sy));
if (yportion > sy2 - sy1)
{
yportion = sy2 - sy1;
}
- sy = floor (sy);
+ sy = floorf(sy);
}
- else if (sy == floor (sy2))
+ else if (sy == floorf(sy2))
{
- yportion = sy2 - floor (sy2);
+ yportion = sy2 - floorf(sy2);
}
else
{
float xportion;
float pcontribution;
int p;
- if (floor (sx) == floor (sx1))
+ if (floorf(sx) == floorf(sx1))
{
- xportion = 1.0 - (sx - floor (sx));
+ xportion = 1.0 - (sx - floorf(sx));
if (xportion > sx2 - sx1)
{
xportion = sx2 - sx1;
}
- sx = floor (sx);
+ sx = floorf(sx);
}
- else if (sx == floor (sx2))
+ else if (sx == floorf(sx2))
{
- xportion = sx2 - floor (sx2);
+ xportion = sx2 - floorf(sx2);
}
else
{