Делаю проверку условия Делоне так:
(как в статье Скворцова А.В.)
float x0,y0,x1,y1,x2,y2,x3,y3,ca,cb;
ca=(x0-x1)*(x0-x3)+(y0-y1)*(y0-y3);
cb=(x2-x1)*(x2-x3)+(y2-y1)*(y2-y3);
if(ca<0&&cb<0)
return false;//не выполняется
if(ca>=0&&cb>=0)
return true;//выполняется
if(((x0-x1)*(y0-y3)-(x0-x3)*(y0-y1))*cb+((x2-x1)*(y2-y3)-(x2-x3)*(y2-y1))*ca>=0)
return true;
return false;
Причем все треугольники в триангуляции у меня отрицательно-направленные (обход вершин делается по ч.с.). Соответственно (x1,y1)-(x2,y2)-(x3,y3) — обход по ч.с. и (x0,y0) — точка смежного треугольника для проверки.
Данная процедура не работает, непойму в чем может быть подвох проверки!!!
Почему-то из всех опробованных методов работает только тупая проверка попадания в окружность...
Может необходимо еще какое-то условие, особо не оговаривающееся в статьях???