多边形上的同心偏移

时间:2018-04-23 10:01:17

标签: c# .net polygon clipperlib

我在.NET / C#中使用Angus Johnson的Clipper库,我想用ClipperOffset类在Polygon上做几个同心偏移。 (http://www.angusj.com/delphi/clipper/documentation/Docs/Units/ClipperLib/Classes/ClipperOffset/_Body.htm)。

我想像袋鼠一样填充我的多边形(来自Angus Johnson的主页)。

我已经写了一个函数来做到这一点,但如果我把它调用10次就需要很长的计算时间,例如:

    static public Polygon doOffset(Polygon p, double offset_nm)
    {
        // Offset to grow up the forbidden polygon
        Polygons solution = new Polygons();
        ClipperOffset co = new ClipperOffset();
        co.AddPath(p, JoinType.jtRound, EndType.etClosedPolygon);
        co.Execute(ref solution, offset_nm);

        return solution[0];
    }

你知道更有效的方法吗?感谢。

Kangaroo

0 个答案:

没有答案