Сейчас понял, что можно еще проще — алгоритм будет быстрее, если просто тупо найти координаты самого верхнего левого квадрата, пересекающего окр. и самого правого нижнего. В этих пределах пройтись вложенными циклами и сделать только часть с allGrayFlag.
Добавлено через 3 минуты
а координаты собственно такие:

Код AS3:
topLeftX = Math.floor(circleX - R);
topLeftY = Math.floor(circleY - R);
bottomRightX = Math.floor(circleX + R);
bottomRightY = Math.floor(circleY + R);
вот между ними и пройтись циклами. будет быстрее, чем лопатить все все квадраты.