Generates an error surface from a match found inside the GeoStan handle.
Syntax
intl gdlGenerateErrorSurface( gdlHandle hGdl, GsId hGeostan, intl bufferWidth, gdlShape* point, gdlShape* surface);
Arguments
hGdl
The gdlHandle initialized by gdlInitialize. Input.
hGeostan
The GsId from the GeoStan library. This handle must contain a valid GeoStan match. Input.
bufferWidth
The distance to buffer Address Level and ZIP+4 Level matches. Input.
point
Pointer to a gdlShape that contains the geocode coordinates. Output.
surface
Pointer to a gdlShape that contains the error surface coordinates. Output.
Return values
GDL_ERROR
GDL_NOT_LICENSED
GDL_NO_ADDRESSMATCH_FOUND
GDL_ZIP5_FILE_ERROR
GDL_ZIP9_FILE_ERROR
GDL_TEMP_PATH_ERROR
GDL_OK
Prerequisites
gdlSetStr
gsFind (from GeoStan)
Alternates
None.
Notes
After a call to gdlGenerateErrorSurface, the internal data geocode buffers maintained by the GeoStan handle are set to NULLs. Because of this, the GeoStan handle is always invalidated after a call to gdlGenerateErrorSurface.
Following instances of point or surface arguments of this function, you should call gdlShapeFree with the output shape (point and surface) when you are finished using the output shape to release system resources.
The gdlGenerateErrorSurface function provides a worst-case scenario for address location. The geocode error surface (geo-variance region) provides the smallest possible surface that an address can be determined. The GDL generates the geocode error surfaces. Based on the GeoStan Match Code, a buffer is built around a given street segment, ZIP+4, or ZIP+2 that indicates a geo-variance surface that contains the location.
Match Code Geo-Variance (Error) Surface Address Level Buffer street segment
Intersection Match Circular buffer that represents 2X the buffer distance ZIP+4 Buffer all street segments in ZIP+4
ZIP+2 Convex Hull around all ZIP+4s that make up a ZIP+2
ZIP Code The ZIP Code boundary
AS7 and APxx (point locations) are treated as intersections to prevent the generation of an address level error surface. Because there are no streets in a point location code, an address level error surface cannot be generated.
Auxiliary File matches create an error surface that is similar to one created for intersection matches.