private void AddHole(Coordinate[] pts)
        {
            bool isPositiveArea = Orientation.IsCCW(pts);

            for (int i = 0; i < pts.Length - 1; i++)
            {
                AddTriangle(_areaBasePt, pts[i], pts[i + 1], isPositiveArea);
            }
            AddLineSegments(pts);
        }
        private void AddShell(Coordinate[] pts)
        {
            if (pts.Length > 0)
            {
                SetAreaBasePoint(pts[0]);
            }
            bool isPositiveArea = !Orientation.IsCCW(pts);

            for (int i = 0; i < pts.Length - 1; i++)
            {
                AddTriangle(_areaBasePt, pts[i], pts[i + 1], isPositiveArea);
            }
            AddLineSegments(pts);
        }