connectLines method

List<Line> connectLines(
  1. List<PointD> polygon,
  2. List<Line> lines
)

Implementation

List<Line> connectLines(List<PointD> polygon, List<Line> lines) {
  final List<Line> result = [];
  if (lines.length > 1) {
    for (int i = 1; i < lines.length; i++) {
      final Line prev = lines[i - 1];
      if (prev.length < 3) {
        continue;
      }
      final Line current = lines[i];
      final Line segment = Line(current.source, prev.target);
      if (segment.length > 3) {
        final List<Line> segSplits = splitOnIntersections(polygon, segment);
        result.addAll(segSplits);
      }
    }
  }
  return result;
}