コード例 #1
0
ファイル: CSG.cs プロジェクト: Avatarchik/olde
        public CSG Intersect(CSG csg)
        {
            Node a = new Node(this.Clone().polygons);
            Node b = new Node(csg.Clone().polygons);

            a.Invert();
            b.ClipTo(a);
            b.Invert();
            a.ClipTo(b);
            b.ClipTo(a);
            a.Build(b.AllPolygons.ToList());
            a.Invert();
            return CSG.FromPolygons(a.AllPolygons);
        }
コード例 #2
0
ファイル: CSG.cs プロジェクト: valera6285/olde
        public CSG Intersect(CSG csg)
        {
            Node a = new Node(this.Clone().polygons);
            Node b = new Node(csg.Clone().polygons);

            a.Invert();
            b.ClipTo(a);
            b.Invert();
            a.ClipTo(b);
            b.ClipTo(a);
            a.Build(b.AllPolygons.ToList());
            a.Invert();
            return(CSG.FromPolygons(a.AllPolygons));
        }