ENCX SDK  5.5.0.926
Public Member Functions | Properties | List of all members
IHorizontalDatum Interface Reference

A way to convert a geographical position between a local horizontal datum and WGS84. More...

import"encxcom.idl";

Inheritance diagram for IHorizontalDatum:
Inheritance graph
[legend]

Public Member Functions

HRESULT LocalToWGS84 ([out] DOUBLE *LatWGS84, [out] DOUBLE *LonWGS84, [in] DOUBLE LatLocal, [in] DOUBLE LonLocal, [out, retval] VARIANT_BOOL *bRes)
 Convert a geographical position on the local datum to WGS84. More...
 
HRESULT WGS84ToLocal ([out] DOUBLE *LatLocal, [out] DOUBLE *LonLocal, [in] DOUBLE LatWGS84, [in] DOUBLE LonWGS84, [out, retval] VARIANT_BOOL *bRes)
 Convert a geographical position on WGS84 to the local datum. More...
 

Properties

DOUBLE ErrorDistanceMetres [get]
 The accuracy of the transformation. Units are metres. More...
 
VARIANT_BOOL HasLocalDatum [get]
 Returns true if the chart has a local datum which is not WGS84. More...
 
BSTR LocalDatumShortName [get]
 The local datum name in either long or short form. See HCRF 2.0 A.4 HORIZONTAL DATUM CODES. More...
 
BSTR LocalDatumLongName [get]
 The local datum name in either long or short form. See HCRF 2.0 A.4 HORIZONTAL DATUM CODES. More...
 

Detailed Description

A way to convert a geographical position between a local horizontal datum and WGS84.

A horizontal datum may be provided for each panel on a raster chart.

Definition at line 865 of file encxcom.idl.

Member Function Documentation

◆ LocalToWGS84()

HRESULT IHorizontalDatum::LocalToWGS84 ( [out] DOUBLE *  LatWGS84,
[out] DOUBLE *  LonWGS84,
[in] DOUBLE  LatLocal,
[in] DOUBLE  LonLocal,
[out, retval] VARIANT_BOOL *  bRes 
)

Convert a geographical position on the local datum to WGS84.

Returns false if the position is outside the area of the datum - the conversion will still be performed but will be less accurate.

◆ WGS84ToLocal()

HRESULT IHorizontalDatum::WGS84ToLocal ( [out] DOUBLE *  LatLocal,
[out] DOUBLE *  LonLocal,
[in] DOUBLE  LatWGS84,
[in] DOUBLE  LonWGS84,
[out, retval] VARIANT_BOOL *  bRes 
)

Convert a geographical position on WGS84 to the local datum.

Returns false if the position is outside the area of the datum - the conversion will still be performed but will be less accurate.

Property Documentation

◆ ErrorDistanceMetres

DOUBLE IHorizontalDatum::ErrorDistanceMetres
get

The accuracy of the transformation. Units are metres.

◆ HasLocalDatum

VARIANT_BOOL IHorizontalDatum::HasLocalDatum
getproperty

Returns true if the chart has a local datum which is not WGS84.

Some ARCS charts use a local datum other than WGS84. ARCS polynomials support non-linear datum shifts (see Admiralty List of Radio Signals Volume 8 NP288 for an explanation).

Raster charts which do not have accurate WGS84 transformation polynomials behave as charts with a local datum. In this case the offset (between local and WGS84) is linear and determined by CRasPanelInfo::ManualWGS84Shift(). The default is zero.

Typically local datum conversions are only needed when dealing with external position information which is in the same local datum as the chart.

◆ LocalDatumLongName

BSTR IHorizontalDatum::LocalDatumLongName
get

The local datum name in either long or short form. See HCRF 2.0 A.4 HORIZONTAL DATUM CODES.

◆ LocalDatumShortName

BSTR IHorizontalDatum::LocalDatumShortName
get

The local datum name in either long or short form. See HCRF 2.0 A.4 HORIZONTAL DATUM CODES.