internal void AddRing(IList <Point2 <T> > chain) { PlanarChainGraph <T> g = new PlanarChainGraph <T>(); g.Add(chain, true, this.masterNodes); this.rings.Add(g); }
internal void AddChain(IList <Point2 <T> > chain) { PlanarChainGraph <T> g = new PlanarChainGraph <T>(); g.Add(chain, false, this.masterNodes); this.chains.Add(g); }
internal void AddPolygon(IList <Point2 <T> > outerRing, IList <IList <Point2 <T> > > innerRings) { if (outerRing == null || outerRing.Count < 3) { return; } PlanarChainGraph <T> g = new PlanarChainGraph <T>(); g.Add(outerRing, true, this.masterNodes); foreach (IList <Point2 <T> > ring in innerRings) { g.Add(ring, true); } this.polygons.Add(g); }