Out of curiosity, how fast are these versions?
sync rate 0 : sync on : set text opaque
do
ink rgb(255,255,255),0
if mouseclick()=1 then FillCircle(mousex(),mousey(),50)
ink rgb(200,0,0),0
text 10,10,"Fast filled circles :: FPS: "+str$(screen fps())
sync
loop
Function Fillcircle(x,y,r)
for ang = 0 to 180
dx = sin(ang) * r
dy = cos(ang) * r
box x - dx, y - dy, x + dx, y - dy+1
next ang
endfunction
...and
sync rate 0 : sync on : set text opaque
do
ink rgb(255,255,255),0
if mouseclick()=1 then FillCircle(mousex(),mousey(),50)
ink rgb(200,0,0),0
text 10,10,"Fast filled circles :: FPS: "+str$(screen fps())
sync
loop
Function Fillcircle(x,y,r)
for ang = 0 to 90
dx = sin(ang) * r
dy = cos(ang) * r
box x - dx, y - dy, x + dx, y + dy
next ang
endfunction
Programming anything is an art, and you can't rush art.
Unless your name is Bob Ross, then you can do it in thirty minutes.