Я предполагаю, что под "всеми точками" подразумевается "все пиксели". Предположим, что ваш дисплей имеет размер NX от NY. Есть два массива
int x0[NY], x1[NY]; initially full of -1.
Пересечение ромбовидное, между двумя кривыми.
Итерируйте значения x, y вдоль каждой кривой. Для каждого значения y (то есть, где кривая пересекает y + 0,5) сохраните значение x в массиве. Если x0 [y] равно -1, сохраните его в x0, иначе сохраните в x1.
Также следите за самыми низкими и самыми высокими значениями y.
Когда вы закончите, просто выполните итерацию по значениям y, и в каждом y выполните итерацию по значениям x в диапазоне от x0 до x1, то есть for (ix = x0[iy]; ix < x1[iy]; ix++)
(или наоборот).
Важно понимать, что пиксели не являются точками, где x и y являются целыми числами. Скорее пиксели - это маленькие квадраты между линиями сетки. Это избавит вас от проблем с крайними случаями.