1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| Uses ..., BGRAGradientScanner;
procedure TForm1.DrawDisk(x, y: integer; c: TBGRAPixel);
var
img: TBGRABitmap;
grad: TBGRACustomScanner;
begin
if c = colors[1] then exit;
img := TBGRABitmap.Create(48, 48);
if c = colors[2] then
grad := TBGRAConstantScanner.Create(c)
else
grad := TBGRAGradientScanner.Create(ApplyIntensityFast(c,50000),ApplyIntensityFast(c,16000),gtRadial,PointF(8,8),PointF(48,48));
img.FillEllipseAntialias(
img.Width / 2,
img.Height / 2,
7 * img.Width / 16,
7 * img.Height / 16,
grad
);
grad.Free;
image.PutImage(x, y, img, dmDrawWithTransparency);
img.Free;
end; |
Partager