I posted something similar about two weeks ago (with a patch), if you make a 'drawcurve struct' it is inscribed inside the equivalent 'drawpolygon struct'. So, for example, if you are using the 4 points on the compass those define a 45° rotated square area into which the 'circle' is inscribed (if you make a drawpolygon with the same information as your drawcurve you will see). The more points you define the better the 'circle' (which isn't really) is drawn.
It would be good/accurate to have a 'drawarc' with r, theta as variables.
Tiscali Broadband from 14.99 with free setup! http://www.tiscali.co.uk/products/broadband/