public GeoPoint(float lat, float lon, float alt, GeoCalculator.DistanceUnits altUnit = GeoCalculator.DistanceUnits.Kilofeet) { _lat = lat; _lon = lon; switch (altUnit) { case GeoCalculator.DistanceUnits.Feet: this._alt = (float)GeoCalculator.ConvertDistanceUnit(alt, GeoCalculator.DistanceUnits.Feet, GeoCalculator.DistanceUnits.Degrees); break; case GeoCalculator.DistanceUnits.Kilofeet: this._alt = (float)GeoCalculator.ConvertDistanceUnit(alt, GeoCalculator.DistanceUnits.Kilofeet, GeoCalculator.DistanceUnits.Degrees); break; case GeoCalculator.DistanceUnits.NauticalMiles: this._alt = (float)GeoCalculator.ConvertDistanceUnit(alt, GeoCalculator.DistanceUnits.NauticalMiles, GeoCalculator.DistanceUnits.Degrees); break; case GeoCalculator.DistanceUnits.Degrees: this._alt = alt; break; case GeoCalculator.DistanceUnits.Meters: this._alt = (float)GeoCalculator.ConvertDistanceUnit(alt, GeoCalculator.DistanceUnits.Meters, GeoCalculator.DistanceUnits.Degrees); break; default: throw new FormatException("Geopoint could not be constructed with the given Distance Units input"); } }
public GeoPoint(GeoPoint point, GeoCalculator.DistanceUnits altUnit = GeoCalculator.DistanceUnits.Kilofeet) : this(point.Lat, point.Lon, point.Alt, altUnit) { }