Чуть-чуть оптимизации, для метода, предложенного
Oaxa. Луч строите вертикальный, и "вверх". Тогда (перебором сторон треугольника) нужно будет посчитать количество сторон, которые имеют точку, лежащую между концами отрезка и имеющую x==x(точки), и у>=y(точки).
Вроде не напутал 