17 lines
477 B
C++
17 lines
477 B
C++
#include "Point.hpp"
|
|
|
|
bool bsp(Point const a, Point const b, Point const c, Point const point) {
|
|
Fixed area = Point::triangleArea(a, b, c);
|
|
if (area == 0)
|
|
return false;
|
|
Fixed area1 = Point::triangleArea(point, a, b);
|
|
if (area1 == 0)
|
|
return false;
|
|
Fixed area2 = Point::triangleArea(point, b, c);
|
|
if (area2 == 0)
|
|
return false;
|
|
Fixed area3 = Point::triangleArea(point, a, c);
|
|
if (area3 == 0)
|
|
return false;
|
|
return area1 + area2 + area3 == area;
|
|
}
|