lineToCircle static method

bool lineToCircle(
  1. Line line,
  2. Circle circle
)

Implementation

static bool lineToCircle(Line line, Circle circle) {
  //if (pointToCircle(line.p1, circle) || pointToCircle(line.p2, circle)) return true;

  final lineVec = line.p2 - line.p1;
  final toCircle = circle.position - line.p1;

  final t = (toCircle.dot(lineVec) / lineVec.magnitudeSquared).clamp(0.0, 1.0);

  final closest = line.p1 + lineVec * t;
  return pointToCircle(closest, circle);
}