public List <Vector2f> Region(Vector2f p) { Site site; if (SitesIndexedByLocation.TryGetValue(p, out site)) { return(site.Region(plotBounds)); } else { return(new List <Vector2f>()); } }
public List <Vector2f> NeighborSitesForSite(Vector2f coord) { List <Vector2f> points = new List <Vector2f>(); Site site; if (SitesIndexedByLocation.TryGetValue(coord, out site)) { List <Site> sites = site.NeighborSites(); foreach (Site neighbor in sites) { points.Add(neighbor.Coord); } } return(points); }
public void Dispose() { sites.Dispose(); sites = null; foreach (Triangle t in Triangles) { t.Dispose(); } Triangles.Clear(); foreach (Edge e in Edges) { e.Dispose(); } Edges.Clear(); plotBounds = Rectf.zero; SitesIndexedByLocation.Clear(); SitesIndexedByLocation = null; }