{Original}
procedure EllipticalRing(X,Y:OptInt16;Rx1,Ry1,Rx2,Ry2:OptWord;Color:OptByte;CountPoints:OptInt16);
var i: OptInt16; angle: Real48;
begin
for i := 0 to CountPoints - 1 do
begin
angle := i * 2 * ConstPi / CountPoints;
PutPixel(X + Round(Rx1 * Cos(angle)), Y + Round(Ry1 * Sin(angle)), Color);
PutPixel(X + Round(Rx2 * Cos(angle)), Y + Round(Ry2 * Sin(angle)), Color);
end;
end;
{END Original}


procedure EllipticalRing(X,Y:OptInt16;Rx1,Ry1,Rx2,Ry2:OptWord;Color:OptByte;CountPoints:OptInt16);
var i: OptInt16; angle: Real48;
begin
for i := 0 to CountPoints - 1 do
begin
angle := i * 2 * ConstPi / CountPoints;
PutPixel(X + Round(Rx1 * Cos(angle)), Y + Round(Ry1 * Sin(angle)), Color);
PutPixel(X + Round(Rx2 * Cos(angle)), Y + Round(Ry2 * Sin(angle)), Color);
end;
end;
