public static VirtualGraphView Create (VirtualGeoGraph graph , GeoboundingBox box , double distance) { return(new VirtualGraphView(graph) { distance = distance, viewArea = new VirtualGeoGraph( from item in graph.Nodes where box.Contains(item.Position) || ((item is Cluster) && box.intersectWithArea(item as Cluster)) select item) }); }
public static VirtualGraphView Create (VirtualGeoGraph graph , Geopoint center , double radius , double distance) { return(new VirtualGraphView(graph) { distance = distance, viewArea = new VirtualGeoGraph( from item in graph.Nodes let d = item.Position.GetDistance(center) where d < radius orderby d select item) }); }
private VirtualGraphView(VirtualGeoGraph graph) { this.source = graph; }