I am creating a python module to simplify Pygame which I find rather complicated. It has an antialiasing mode that can be enabled and disabled.
I can draw not-antialiased circles easily using pygame.draw
pygame.draw.circle(window, circlecolor, center, radius, 0 if filled else line_width)
But I have to use pygame.gfxdraw to have antialiasing. I can draw filled antialiased circles by combining gfxdraw.aacircle and filled_circle but I can't draw not filled antialiased circles except if they have a thickness of 1 pixel (gfxdraw.aacircle doesn't have a thickness argument) I already have a function drawing thick antialiased lines which is the same as this
My question is how can I create not-filled antialiased circles? The solution I found was to draw them manually by drawing multiple connected lines to form the circle but I don't know how to do that and there might be a faster solution. Also I can't to draw a big circle and a smaller one for the center because the center wouldn't be transparent.