예제 #1
0
파일: Helper.cs 프로젝트: Maasik/ax-toolbox
 public static string ToAxsPoint(this GeoWaypoint gwp, string datumName, string utmZone, AltitudeUnits units)
 {
     var utmCoords = gwp.Coordinates.ToUtm(Datum.GetInstance(datumName), utmZone);
     return string.Format(NumberFormatInfo.InvariantInfo, "point {0}=sutm({1:0.0},{2:0.0},{3:0.0}{4}) waypoint(lime)",
         gwp.Name,
         utmCoords.Easting, utmCoords.Northing,
         units == AltitudeUnits.Meters ? utmCoords.Altitude : utmCoords.Altitude * Physics.METERS2FEET,
         units == AltitudeUnits.Meters ? "m" : "ft"
         );
 }
예제 #2
0
        public AXWaypoint FromGeoToAXWaypoint(GeoWaypoint geoWaypoint, bool isBarometricAltitude)
        {
            var    utmCoords = geoWaypoint.Coordinates.ToUtm(Datum.GetInstance(DatumName), UtmZone);
            double altitude  = utmCoords.Altitude;

            if (isBarometricAltitude)
            {
                altitude = CorrectAltitudeQnh(utmCoords.Altitude);
            }

            return(new AXWaypoint(geoWaypoint.Name, geoWaypoint.Time, utmCoords.Easting, utmCoords.Northing, altitude));
        }
예제 #3
0
파일: Helper.cs 프로젝트: Maasik/ax-toolbox
        public static PdfWaypoint ToPdfWaypoint(this GeoWaypoint gwp, string datumName, string utmZone, AltitudeUnits units)
        {
            var utmCoords = gwp.Coordinates.ToUtm(Datum.GetInstance(datumName), utmZone);
            var altitude = utmCoords.Altitude;
            var wp = new AXWaypoint(gwp.Name, gwp.Time, utmCoords.Easting, utmCoords.Northing, altitude);

            return new PdfWaypoint()
            {
                Name = wp.Name,
                CompetitionCoords = wp.ToString(AXPointInfo.CompetitionCoords8).Replace("/", " / "),
                Altitude = wp.ToString(units == AltitudeUnits.Meters ? AXPointInfo.AltitudeInMeters : AXPointInfo.AltitudeInFeet)
            };
        }