NAD Datum

Topics: General Topics
Sep 20, 2006 at 3:50 PM
Hi,

Do you support NAD datums?
Developer
Sep 20, 2006 at 7:08 PM
Any datum you can think of is supported. There is no general limitation of what datums you can use.

There are a limited set of projections available though; - is this what you meant?
Coordinator
Sep 20, 2006 at 8:24 PM
Do you need NAD27 or NAD83?

I have the numbers for cooking up a HorizontalDatum for NAD27, but not NAD83 right now:

new HorizontalDatum( SharpMap.CoordinateSystems.Ellipsoid.Clarke1866,
new Wgs84ConversionInfo(9, -160, -177, 0, 0, 0, 0),
DatumType.HD_Classic,
"North American Datum 1927",
"EPSG",
4267,
"NAD27",
String.Empty,
"NAD27");
Sep 20, 2006 at 9:11 PM
Thanks. I need NAD83. When I looked up the documentation for HD_Classic, it says

"These datums, such as ED50, NAD27 and NAD83, have been designed to support horizontal positions on the ellipsoid as opposed to positions in 3-D space. These datums were designed mainly to support a horizontal component of a position in a domain of limited extent, such as a country, a region or a continent."

So does this mean that NAD83 is supported?
Coordinator
Sep 21, 2006 at 7:31 PM
Yes, like SharpGIS said, any datum is supported - it is just a matter of finding the right parameters.

A datum is just a set of reference parameters used to compute points on the surface of the earth, and thus on maps (given a projection). You could make any datum you want with SharpMap.

Getting the parameters is the tricky part. I'll see if I can find NAD 83. You can look too, just look for the parameters you'd need to transform the WGS84 datum to the NAD 83 datum. It shouldn't be hard, since they are both very popular data.
Coordinator
Oct 24, 2006 at 8:37 PM
Ok, finally found what I was looking for...

/// <summary>
/// NAD83 (HARN) datum.
/// </summary>
/// <remarks>For many purposes NAD83(HARN) can be considered to be coincident with WGS 84.</remarks>
public static HorizontalDatum Nad83Harn
{
get
{
return new HorizontalDatum(
SharpMap.CoordinateSystems.Ellipsoid.Clarke1866,
new Wgs84ConversionInfo(-0.991, 1.9072, 0.5129, 1.25033E-07, 4.6785E-08, 5.6529E-08, 0),
DatumType.HD_Classic,
"North American Datum 1983 (High Accuracy Reference Network)",
"EPSG",
4152,
"NAD83 (HARN)",
String.Empty,
"NAD83 (HARN)");

}
}

Coordinator
Oct 24, 2006 at 8:46 PM
Oops, that's wrong... the Ellipsoid is GRS 80

/// <summary>
/// NAD83 (HARN) datum.
/// </summary>
/// <remarks>For many purposes NAD83(HARN) can be considered to be coincident with WGS 84.</remarks>
public static HorizontalDatum Nad83Harn
{
get
{
return new HorizontalDatum(
SharpMap.CoordinateSystems.Ellipsoid.WGS72,
new Wgs84ConversionInfo(-0.991, 1.9072, 0.5129, 1.25033E-07, 4.6785E-08, 5.6529E-08, 0),
DatumType.HD_Classic,
"North American Datum 1983 (High Accuracy Reference Network)",
"EPSG",
4152,
"NAD83 (HARN)",
String.Empty,
"NAD83 (HARN)");

}
}
Coordinator
Oct 24, 2006 at 8:46 PM
/// <summary>
/// NAD83 (HARN) datum.
/// </summary>
/// <remarks>For many purposes NAD83(HARN) can be considered to be coincident with WGS 84.</remarks>
public static HorizontalDatum Nad83Harn
{
get
{
return new HorizontalDatum(
SharpMap.CoordinateSystems.Ellipsoid.GRS80,
new Wgs84ConversionInfo(-0.991, 1.9072, 0.5129, 1.25033E-07, 4.6785E-08, 5.6529E-08, 0),
DatumType.HD_Classic,
"North American Datum 1983 (High Accuracy Reference Network)",
"EPSG",
4152,
"NAD83 (HARN)",
String.Empty,
"NAD83 (HARN)");

}
}