ApsGis.dll

UTM.ParseLatitudeInDmsd(Double, Double, UtmZone, String, Int32, Double, String) Method

Parses latitude from the provided string for the user defined reference ellipsoid and the specified UTM zone, assuming that the DegreesMinutesSecondsDirection (DMS) format is in use.

public static bool ParseLatitudeInDmsd(
   double semiMajorAxisAInM,
   double inverseFlattening,
   UtmZone utmZone,
   string str,
   int precision,
   out double latInDeg,
   out string errorMessage
);

Parameters

semiMajorAxisAInM
a semi major axis A (in meters) of the user defined reference ellipsoid
inverseFlattening
an inverse flattening of the user defined reference ellipsoid
utmZone
a UTM zone
str
a string to be parsed
precision
a precision used in parsing
latInDeg
the parsed latitude in decimal degrees, passed by reference (out)
errorMessage
an error message, passed by reference (out), that contains detailed error / warning information

Return Value

true - the function has succeeded, false - it has failed

Remarks

The function verifies validity of its arguments before running parsing. The valid semi major axis A (in meters) is a real number greater than 0. The valid inverse flattening is a real number greater than 0. The valid precision is an integer number in the range from 0 (inclusive) to 15 (inclusive). The function recognizes the DegreesMinutesSecondsDirection (DMS) format, i.e. DDD MM SS.SSSS [N, S], for example: 38 53 20.9 N. The function verifies the validity of the parsed result.

Example

This sample shows how to call the UTM.ParseLatitudeInDmsd method from C# code:

 string errorMessage = String.Empty;
 
 double semiMajorAxisA = 6378137;
 double inverseFlattening = 298.257223563;

 UtmZone utmZone = UtmZone.Zone_10_from_126W_to_120W;
 
 string str = "38 53 20.9 N";
 int precision = 10;
 double latInDeg = Double.NaN;

 if (UTM.ParseLatitudeInDmsd(semiMajorAxisA, inverseFlattening, utmZone, str, precision, out latInDeg, out errorMessage))
 {
     Console.WriteLine("LatInDeg: " + latInDeg.ToString());
 }
 else
 {
     Console.WriteLine(errorMessage);
 }
 

See Also

UTM Class | ApsGis Namespace | UTM.ParseLatitudeInDmsd Overload List