optimized draw circle algo