private void AddVectorLines(StreamReader sr, List<GeoDisplayLine> tmpLines, string[] delimiter) { while (!sr.EndOfStream) { GeoXYLine line = new GeoXYLine(); List<GeoXYPoint> geoPointFs = new List<GeoXYPoint>(); string curLine = sr.ReadLine(); int tmpPointsCount = this.CalcPoints(curLine); this.ReadXYPoints(tmpPointsCount, sr, delimiter, geoPointFs); line.Points = geoPointFs; if (line.PointsCount > 1) { GeoDisplayLine item = new GeoDisplayLine(line, this.m_DefaultLineStyle); item.AddFeature("PlanetVectorLineType", this.m_VectorType); tmpLines.Add(item); GeoXYRect miniEnclosingRect = line.GetMiniEnclosingRect(); this.m_VectorBound.Left = Math.Min(this.m_VectorBound.Left, miniEnclosingRect.Left); this.m_VectorBound.Right = Math.Max(this.m_VectorBound.Right, miniEnclosingRect.Right); this.m_VectorBound.Top = Math.Max(this.m_VectorBound.Top, miniEnclosingRect.Top); this.m_VectorBound.Bottom = Math.Min(this.m_VectorBound.Bottom, miniEnclosingRect.Bottom); } } }
private List<User> GenBlankClutterUser(int VectorUserCount, double VectorArea, GeoXYLine Line) { double clutterUserCount = VectorUserCount; List<User> clutterUsers = new List<User>(); GeoXYRect Rect = Line.GetMiniEnclosingRect(); this.ProcessService(clutterUserCount, clutterUsers); double Resolution = this.m_GeoProvider.GetGeoInfo.GetMapHighestResolution(DemDataType.Clutter); clutterUsers.ForEach(delegate (User user) { this.SetUserXY(user, Rect, Resolution, Line); }); return clutterUsers; }