Exemple #1
0
        private void AddPoints(ClipperLib.Clipper clipper, IShape shape, ClipperLib.PolyType polyType)
        {
            foreach (var path in shape)
            {
                var points        = path.AsSimpleLinearPath();
                var clipperPoints = new List <ClipperLib.IntPoint>();
                foreach (var point in points)
                {
                    var p = point * ClipperScaleFactor;

                    clipperPoints.Add(new ClipperLib.IntPoint((long)p.X, (long)p.Y));
                }

                clipper.AddPath(
                    clipperPoints,
                    polyType,
                    path.IsClosed);
            }
        }
Exemple #2
0
 private void AddPoints(ClipperLib.Clipper clipper, IShape[] shapes, bool[] shouldInclude, ClipperLib.PolyType polyType)
 {
     for (var i = 0; i < shapes.Length; i++)
     {
         if (shouldInclude[i])
         {
             this.AddPoints(clipper, shapes[i], polyType);
         }
     }
 }