/// <summary> /// /// </summary> /// <param name="pts"></param> private void AddHole(Coordinate[] pts) { bool isPositiveArea = CGAlgorithms.IsCCW(pts); for (int i = 0; i < pts.Length - 1; i++) { AddTriangle(_basePt, pts[i], pts[i + 1], isPositiveArea); } AddLinearSegments(pts); }
private void AddShell(Coordinate[] pts) { if (pts.Length > 0) { SetBasePoint(pts[0]); } bool isPositiveArea = !CGAlgorithms.IsCCW(pts); for (int i = 0; i < pts.Length - 1; i++) { AddTriangle(_areaBasePt, pts[i], pts[i + 1], isPositiveArea); } AddLineSegments(pts); }