private BaseCoordinate GetCentralGeoCoordinate() { List <GeoCoordinate> geoCoords = new List <GeoCoordinate>(); foreach (WSMPolygon poly1 in Collection) { foreach (var pt1 in poly1.Collection) { geoCoords.Add(new GeoCoordinate(pt1.Latitude, pt1.Longitude)); } } GeoCoordinate gc = GeoCoordinateUtilities.GetCentralGeoCoordinate(geoCoords); BaseCoordinate fC = new BaseCoordinate(gc); return(fC); }
internal void Finish() { MinLatitude = Double.MaxValue; MaxLatitude = Double.MinValue; MinLongitude = Double.MaxValue; MaxLongitude = Double.MinValue; foreach (WSMPolygon fP in Collection) { fP.MinLatitude = Double.MaxValue; fP.MaxLatitude = Double.MinValue; foreach (var co in fP.Collection) { MinLatitude = Math.Min(MinLatitude, co.Latitude); MaxLatitude = Math.Max(MaxLatitude, co.Latitude); MinLongitude = Math.Min(MinLongitude, co.Longitude); MaxLongitude = Math.Max(MaxLongitude, co.Longitude); fP.MinLatitude = Math.Min(fP.MinLatitude, co.Latitude); fP.MaxLatitude = Math.Max(fP.MaxLatitude, co.Latitude); } } CentralCoordinate = GetCentralGeoCoordinate(); EasternCentralCoordinate = new BaseCoordinate((MinLatitude + MaxLatitude) / 2.0, MaxLongitude); }
PointF _convertF(BaseCoordinate fC) { return(new PointF((float)(_scX + fC.ProjectedX * _cFactor), (float)(_scY - fC.ProjectedY * _cFactor))); }