contains method

bool contains(
  1. Point p
)

Check if a point is inside this triangle

Uses barycentric coordinate method.

Implementation

bool contains(Point p) {
  final d1 = _sign(p, a, b);
  final d2 = _sign(p, b, c);
  final d3 = _sign(p, c, a);

  final hasNeg = (d1 < 0) || (d2 < 0) || (d3 < 0);
  final hasPos = (d1 > 0) || (d2 > 0) || (d3 > 0);

  return !(hasNeg && hasPos);
}