4 #include <Base/Geometry/HomgPoint2D.hh>
33 return ArePointsOnSameSide(p, a_, b_, c_)
34 && ArePointsOnSameSide(p, b_, c_, a_)
35 && ArePointsOnSameSide(p, c_, a_, b_);
102 const HomgPoint2D cp1 = (b - a).CrossProduct(p1 - a);
103 const HomgPoint2D cp2 = (b - a).CrossProduct(p2 - a);
105 return cp1.ScalarProduct(cp2) >= 0;
110 #endif // _TRIANGLE_HH__
class HomgPoint2D describes a point with 2 degrees of freedom in projective coordinates.
Represents a 2D triangle and allows some computations with it.
void GetCorners(HomgPoint2D &a, HomgPoint2D &b, HomgPoint2D &c)
Returns the corners of this triangle.
void SetCorners(const HomgPoint2D &a, const HomgPoint2D &b, const HomgPoint2D &c)
Sets the corners of this triangle.
bool IsPointInTriangle(const HomgPoint2D &p)
Checks if the given point is inside this triangle.
class BIASGeometryBase_EXPORT HomgPoint2D