Das Problem ist, dass du
randomize
viel zu oft aufrufst.
Du solltest es nur einmal am Anfang aufrufen und später nicht mehr:
Delphi-Quellcode:
Procedure Func1;
function FRandom(fStart, fEnd: Extended): Extended;
begin
result := fStart + (fEnd - fStart) * Random;
end;
const
m_nArms = 3;
nStars = 20000;
fRadius = 800;
var
FArmAngle : Extended;
FAngularSpread : Extended;
I: Integer;
fQ, fK, fR, fA, fX, fY : Extended;
aBMP : TBitmap;
begin
randomize;
...
end;