public static string GetFormattedCoord(CoordinateType cType, string coord, string format)
{
if (cType == CoordinateType.DD)
{
CoordinateDD dd;
if (CoordinateDD.TryParse(coord, out dd, true))
{
return(dd.ToString(format, new CoordinateDDFormatter()));
}
}
if (cType == CoordinateType.DDM)
{
CoordinateDDM ddm;
if (CoordinateDDM.TryParse(coord, out ddm, true))
{
return(ddm.ToString(format, new CoordinateDDMFormatter()));
}
}
if (cType == CoordinateType.DMS)
{
CoordinateDMS dms;
if (CoordinateDMS.TryParse(coord, out dms, true))
{
return(dms.ToString(format, new CoordinateDMSFormatter()));
}
}
if (cType == CoordinateType.GARS)
{
CoordinateGARS gars;
if (CoordinateGARS.TryParse(coord, out gars))
{
return(gars.ToString(format, new CoordinateGARSFormatter()));
}
}
if (cType == CoordinateType.MGRS)
{
CoordinateMGRS mgrs;
if (CoordinateMGRS.TryParse(coord, out mgrs))
{
return(mgrs.ToString(format, new CoordinateMGRSFormatter()));
}
}
if (cType == CoordinateType.USNG)
{
CoordinateUSNG usng;
if (CoordinateUSNG.TryParse(coord, out usng))
{
return(usng.ToString(format, new CoordinateMGRSFormatter()));
}
}
if (cType == CoordinateType.UTM)
{
CoordinateUTM utm;
if (CoordinateUTM.TryParse(coord, out utm))
{
return(utm.ToString(format, new CoordinateUTMFormatter()));
}
}
return(null);
}