LCL: Optimize 5-angled star in TShape. Issue #35142, patch from Alexey Tor.

git-svn-id: trunk@60564 -
This commit is contained in:
juha 2019-03-02 21:32:59 +00:00
parent ad6f9cffb4
commit ccf69c22af

View File

@ -29,28 +29,28 @@ end;
// Angle of 5-angled star is function(N=0..9, Down) = pi/5 * N + pi/2 * IfThen(Down, -1, 1);
const
CosStarBig: array[0..4, Boolean] of Double = (
CosStarBig: array[0..4, Boolean] of Single = (
(Cos( + pi/2), Cos( - pi/2)),
(Cos(2*pi/5 + pi/2), Cos(2*pi/5 - pi/2)),
(Cos(4*pi/5 + pi/2), Cos(4*pi/5 - pi/2)),
(Cos(6*pi/5 + pi/2), Cos(6*pi/5 - pi/2)),
(Cos(8*pi/5 + pi/2), Cos(8*pi/5 - pi/2))
);
SinStarBig: array[0..4, Boolean] of Double = (
SinStarBig: array[0..4, Boolean] of Single = (
(Sin( + pi/2), Sin( - pi/2)),
(Sin(2*pi/5 + pi/2), Sin(2*pi/5 - pi/2)),
(Sin(4*pi/5 + pi/2), Sin(4*pi/5 - pi/2)),
(Sin(6*pi/5 + pi/2), Sin(6*pi/5 - pi/2)),
(Sin(8*pi/5 + pi/2), Sin(8*pi/5 - pi/2))
);
CosStarSmall: array[0..4, Boolean] of Double = (
CosStarSmall: array[0..4, Boolean] of Single = (
(Cos( pi/5 + pi/2), Cos( pi/5 - pi/2)),
(Cos(3*pi/5 + pi/2), Cos(3*pi/5 - pi/2)),
(Cos(5*pi/5 + pi/2), Cos(5*pi/5 - pi/2)),
(Cos(7*pi/5 + pi/2), Cos(7*pi/5 - pi/2)),
(Cos(9*pi/5 + pi/2), Cos(9*pi/5 - pi/2))
);
SinStarSmall: array[0..4, Boolean] of Double = (
SinStarSmall: array[0..4, Boolean] of Single = (
(Sin( pi/5 + pi/2), Sin( pi/5 - pi/2)),
(Sin(3*pi/5 + pi/2), Sin(3*pi/5 - pi/2)),
(Sin(5*pi/5 + pi/2), Sin(5*pi/5 - pi/2)),
@ -69,7 +69,6 @@ var
PenInc, PenDec: Integer;
RadiusBig, RadiusBig2, RadiusSm, i: Integer;
PCenter: TPoint;
Alfa: Double;
begin
with Canvas do
begin