using System;
namespace CoordinateSharp {
///
/// Coordinate formatting options for a Coordinate object.
///
[Serializable]
public class CoordinateFormatOptions {
///
/// Set default values with the constructor.
///
public CoordinateFormatOptions() {
this.Format = CoordinateFormatType.Degree_Minutes_Seconds;
this.Round = 3;
this.Display_Leading_Zeros = false;
this.Display_Trailing_Zeros = false;
this.Display_Symbols = true;
this.Display_Degree_Symbol = true;
this.Display_Minute_Symbol = true;
this.Display_Seconds_Symbol = true;
this.Display_Hyphens = false;
this.Position_First = true;
}
///
/// Coordinate format type.
///
public CoordinateFormatType Format { get; set; }
///
/// Rounds Coordinates to the set value.
///
public Int32 Round { get; set; }
///
/// Displays leading zeros.
///
public Boolean Display_Leading_Zeros { get; set; }
///
/// Display trailing zeros.
///
public Boolean Display_Trailing_Zeros { get; set; }
///
/// Allow symbols to display.
///
public Boolean Display_Symbols { get; set; }
///
/// Display degree symbols.
///
public Boolean Display_Degree_Symbol { get; set; }
///
/// Display minute symbols.
///
public Boolean Display_Minute_Symbol { get; set; }
///
/// Display secons symbol.
///
public Boolean Display_Seconds_Symbol { get; set; }
///
/// Display hyphens between values.
///
public Boolean Display_Hyphens { get; set; }
///
/// Show coordinate position first.
/// Will show last if set 'false'.
///
public Boolean Position_First { get; set; }
}
///
/// Coordinate Format Types.
///
[Serializable]
public enum CoordinateFormatType {
///
/// Decimal Degree Format
///
///
/// Example: N 40.456 W 75.456
///
Decimal_Degree,
///
/// Decimal Degree Minutes Format
///
///
/// Example: N 40º 34.552' W 70º 45.408'
///
Degree_Decimal_Minutes,
///
/// Decimal Degree Minutes Format
///
///
/// Example: N 40º 34" 36.552' W 70º 45" 24.408'
///
Degree_Minutes_Seconds,
///
/// Decimal Format
///
///
/// Example: 40.57674 -70.46574
///
Decimal
}
}