Площадь Треугольника через три точки a(x1,y1), b(x2,y2), c(x3,y3): S = |x1(y2-y3)+x2(y3-y1)+x3(y1-y2)|/2 вот еще нарыл способ Вот оччень простая демонстрация без всяких там площадей и сложных вычеслений(которые кстати тоже "отвлекают" сопроц). IsBelow(x0, y0, x1, y1, x2, y2)-определяет, с какой стороны от прямой находится точка(отдельно употребляется очень редко). InTriangle(x0, y0, x1, y1, x2, y2, x3, y3)-самый точный и самый быстрый способ определить находится ли точка (х0, у0) в данном треугольнике ((x1,y1), (x2,y2), (x3,y3)). Return Sgn((x1-x0)*(y1-y2)+(y1-y0)*(x2-x1)) End Function Function InTriangle(x0, y0, x1, y1, x2, y2, x3, y3) If IsBelow(x0, y0, x2, y2, x1, y1)*IsBelow(x0, y0, x2, y2, x3, y3)>0 Return 0 If IsBelow(x0, y0, x1, y1, x2, y2)*IsBelow(x0, y0, x1, y1, x3, y3)>0 Return 0 If IsBelow(x0, y0, x3, y3, x2, y2)*IsBelow(x0, y0, x3, y3, x1, y1)>0 Return 0 Return 1 End Function Function IsBelow(x0, y0, x1, y1, x2, y2) надеюсь, на плюсы переписать не составит труда