public static bool IsValid(LatLngBounds @this)
 {
     return(null != @this && (LatLngAlt.IsValid(@this.southwest) && LatLngAlt.IsValid(@this.northeast)) ||
            (@this.north.HasValue && @this.south.HasValue && @this.east.HasValue && @this.west.HasValue &&
             double.IsFinite(@this.north.Value) && double.IsFinite(@this.south.Value) && double.IsFinite(@this.east.Value) && double.IsFinite(@this.west.Value) &&
             @this.north.Value != LatLngAlt.DoubleZero && @this.south.Value != LatLngAlt.DoubleZero && @this.east.Value != LatLngAlt.DoubleZero && @this.west.Value != LatLngAlt.DoubleZero));
 }
 public static NetTopologySuite.Geometries.Point ToPoint(LatLngAlt @this, bool withAltitude = false)
 {
     return(GeometryFactory.CreatePoint(new NetTopologySuite.Geometries.Coordinate(@this.lng.GetValueOrDefault(), @this.lat.GetValueOrDefault())));
     //withAltitude && @this.altitude.HasValue && @this.altitude.Value != DoubleZero ? @this.altitude.Value : double.NaN));
 }
 public static bool IsValid(LatLngAlt @this)
 {
     return(null != @this && @this.lat.HasValue && @this.lng.HasValue &&
            double.IsFinite(@this.lat.Value) && double.IsFinite(@this.lng.Value) && @this.lat.Value != DoubleZero && @this.lng.Value != DoubleZero);
 }