clipPolygons method

List<Polygon> clipPolygons(
  1. List<Polygon> polygons
)

Implementation

List<Polygon> clipPolygons(List<Polygon> polygons) {
  if (plane == null){
    return polygons.sublist(0);
  }
  List<Polygon> front = [], back = [];
  for (int i = 0; i < polygons.length; i++) {
    plane?.splitPolygon(polygons[i], front, back, front, back);
  }
  if (this.front != null) front = this.front!.clipPolygons(front);
  this.back != null? (back = this.back!.clipPolygons(back)) : back = [];
  return List.from(front)..addAll(back);
}