@verb #1177:"area" this none this rxdo #1177 @program #1177:"area" this none this "Copied from Terra (#1000):area by Hacker (#60) Aug 31 08:21:02 2002" ":area(x) => {{0, 0}, {0, 1}, {0, -1}, ...}" "Returns a list of all x/y tuples that fall within a circle of radius x" {radius} = args quarter = {} for y in [1..radius] arc = cos($pi / 2.0 / tofloat(radius) * tofloat(y)) * tofloat(radius) for x in [1..toint(arc + 0.5)] quarter = {@quarter, {x, y}} endfor endfor area = {{0, 0}} for z in [1..radius] area = {@area, {0, z}, {0, -z}, {z, 0}, {-z, 0}} endfor for z in (quarter) area = setadd(area, {z[1], z[2]}) area = setadd(area, {z[2], z[1]}) area = setadd(area, {-z[1], z[2]}) area = setadd(area, {-z[2], z[1]}) area = setadd(area, {-z[1], -z[2]}) area = setadd(area, {-z[2], -z[1]}) area = setadd(area, {z[1], -z[2]}) area = setadd(area, {z[2], -z[1]}) endfor "area = $list_utils:remove_duplicates(area)" return area .