Beispiel #1
0
        /// <summary>
        /// Parse the given latitude and longitude string representations.
        /// </summary>
        /// <param name="LatitudeString">The Latitude (south to nord).</param>
        /// <param name="LongitudeString">The Longitude (parallel to equator).</param>
        /// <param name="AltitudeString">The Altitude.</param>
        /// <param name="GeoCoordinate">The resulting geo coordinate.</param>
        public static Boolean TryParse(String LatitudeString,
                                       String LongitudeString,
                                       String AltitudeString,
                                       out GeoCoordinate GeoCoordinate)
        {
            Latitude  LatitudeValue;
            Longitude LongitudeValue;
            Altitude  AltitudeValue;

            GeoCoordinate = default(GeoCoordinate);

            if (!Latitude.TryParse(LatitudeString, out LatitudeValue))
            {
                return(false);
            }

            if (!Longitude.TryParse(LongitudeString, out LongitudeValue))
            {
                return(false);
            }

            if (!Aegir.Altitude.TryParse(AltitudeString, out AltitudeValue))
            {
                return(false);
            }

            GeoCoordinate = new GeoCoordinate(LatitudeValue, LongitudeValue, AltitudeValue);
            return(true);
        }
Beispiel #2
0
        /// <summary>
        /// Parse the given latitude and longitude string representations.
        /// </summary>
        /// <param name="LatitudeString">The Latitude (south to nord).</param>
        /// <param name="LongitudeString">The Longitude (parallel to equator).</param>
        /// <param name="AltitudeString">The Altitude.</param>
        public static GeoCoordinate Parse(String LatitudeString,
                                          String LongitudeString,
                                          String AltitudeString = null)
        {
            Latitude  LatitudeValue;
            Longitude LongitudeValue;
            Altitude  AltitudeValue;

            if (!Latitude.TryParse(LatitudeString, out LatitudeValue))
            {
                throw new Exception("Invalid 'latitude' value!");
            }

            if (!Longitude.TryParse(LongitudeString, out LongitudeValue))
            {
                throw new Exception("Invalid 'longitude' value!");
            }

            if (AltitudeString != null)
            {
                if (!Aegir.Altitude.TryParse(AltitudeString, out AltitudeValue))
                {
                    throw new Exception("Invalid 'altitude' value!");
                }
            }
            else
            {
                AltitudeValue = new Altitude(0);
            }

            return(new GeoCoordinate(LatitudeValue, LongitudeValue, AltitudeValue));
        }
Beispiel #3
0
        /// <summary>
        /// Parse the given latitude and longitude string representations.
        /// </summary>
        /// <param name="LatitudeDouble">The Latitude (south to nord).</param>
        /// <param name="LongitudeDouble">The Longitude (parallel to equator).</param>
        /// <param name="AltitudeDouble">The Altitude.</param>
        public static GeoCoordinate Parse(Double LatitudeDouble,
                                          Double LongitudeDouble,
                                          Double?AltitudeDouble = null)
        {
            if (!Latitude.TryParse(LatitudeDouble, out Latitude latitude))
            {
                throw new Exception("Invalid 'latitude' value!");
            }

            if (!Longitude.TryParse(LongitudeDouble, out Longitude longitude))
            {
                throw new Exception("Invalid 'longitude' value!");
            }

            if (AltitudeDouble.HasValue)
            {
                if (!Aegir.Altitude.TryParse(AltitudeDouble.Value, out Altitude altitude))
                {
                    throw new Exception("Invalid 'altitude' value!");
                }

                return(new GeoCoordinate(latitude,
                                         longitude,
                                         altitude));
            }

            return(new GeoCoordinate(latitude,
                                     longitude));
        }
Beispiel #4
0
        /// <summary>
        /// Parse the given latitude and longitude string representations.
        /// </summary>
        /// <param name="LatitudeString">The Latitude (south to nord).</param>
        /// <param name="LongitudeString">The Longitude (parallel to equator).</param>
        /// <param name="AltitudeString">The Altitude.</param>
        /// <param name="GeoCoordinate">The resulting geo coordinate.</param>
        public static Boolean TryParse(String LatitudeString,
                                       String LongitudeString,
                                       String AltitudeString,
                                       out GeoCoordinate GeoCoordinate)
        {
            GeoCoordinate = default;

            if (!Latitude.TryParse(LatitudeString, out Latitude latitude))
            {
                return(false);
            }

            if (!Longitude.TryParse(LongitudeString, out Longitude longitude))
            {
                return(false);
            }

            if (!Aegir.Altitude.TryParse(AltitudeString, out Altitude altitude))
            {
                return(false);
            }

            GeoCoordinate = new GeoCoordinate(latitude,
                                              longitude,
                                              altitude);

            return(true);
        }
Beispiel #5
0
        /// <summary>
        /// Parse the given latitude and longitude string representations.
        /// </summary>
        /// <param name="LatitudeString">The Latitude (south to nord).</param>
        /// <param name="LongitudeString">The Longitude (parallel to equator).</param>
        /// <param name="AltitudeString">The Altitude.</param>
        public static GeoCoordinate Parse(String LatitudeString,
                                          String LongitudeString,
                                          String AltitudeString = null)
        {
            if (!Latitude.TryParse(LatitudeString, out Latitude latitude))
            {
                throw new Exception("Invalid 'latitude' value!");
            }

            if (!Longitude.TryParse(LongitudeString, out Longitude longitude))
            {
                throw new Exception("Invalid 'longitude' value!");
            }

            if (AltitudeString.IsNeitherNullNorEmpty())
            {
                if (!Aegir.Altitude.TryParse(AltitudeString, out Altitude altitude))
                {
                    throw new Exception("Invalid 'altitude' value!");
                }

                return(new GeoCoordinate(latitude,
                                         longitude,
                                         altitude));
            }

            return(new GeoCoordinate(latitude,
                                     longitude));
        }