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); } }
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); } } }