public CoordPointCollection GetAirPath() { CoordPointCollection result = new CoordPointCollection(); foreach (TrajectoryPart trajectoryPart in trajectory) { result.Add(trajectoryPart.StartPoint); } if (trajectory.Count > 0) { result.Add(trajectory[trajectory.Count - 1].EndPoint); } return(result); }
void AddSouthContour(CoordPointCollection dayAndNightLineVertices) { double initLat = Math.Ceiling(((GeoPoint)dayAndNightLineVertices[dayAndNightLineVertices.Count - 1]).Latitude); for (double lat = initLat; lat >= -90.0; lat--) { dayAndNightLineVertices.Add(new GeoPoint(lat, 180)); } for (double lon = 180; lon >= -180; lon--) { dayAndNightLineVertices.Add(new GeoPoint(-90, lon)); } initLat = Math.Ceiling(((GeoPoint)dayAndNightLineVertices[0]).Latitude); for (double lat = -90; lat <= initLat; lat++) { dayAndNightLineVertices.Add(new GeoPoint(lat, -180)); } }
void AddNorthContour(CoordPointCollection dayAndNightLineVertices) { double initLat = Math.Ceiling(((GeoPoint)dayAndNightLineVertices[dayAndNightLineVertices.Count - 1]).Latitude); for (double latForward = initLat; latForward <= 90.0; latForward++) { dayAndNightLineVertices.Add(new GeoPoint(latForward, 180)); } for (double lon = 180; lon >= -180; lon--) { dayAndNightLineVertices.Add(new GeoPoint(90, lon)); } initLat = Math.Ceiling(((GeoPoint)dayAndNightLineVertices[0]).Latitude); for (double latBackward = 90; latBackward >= initLat; latBackward--) { dayAndNightLineVertices.Add(new GeoPoint(latBackward, -180)); } }
CoordPointCollection GetdayAndNightLineVertices(GeoPoint sunLocation, double step) { CoordPointCollection result = new CoordPointCollection(); IList <double> latitudes = DayAndNightLineCalculator.GetDayAndNightLineLatitudes(sunLocation.Latitude, sunLocation.Longitude, step); double lon = -180; foreach (double lat in latitudes) { result.Add(new GeoPoint(lat, lon)); lon += step; } return(result); }