Intersection Functions


Functions

GEOMLIBEXPORT void IntsClean (INTSHANDLE ihp, DPOLYGON *dpoly, INTERSECTINFO *ints)
GEOMLIBEXPORT void IntsFree (INTERSECTINFO *ints)
GEOMLIBEXPORT int IntsInit (double thresh, INTSHANDLE *ihp)
GEOMLIBEXPORT int IntsSearch (INTSHANDLE ihp, DPOLYGON *checkpoly, DPOLYGON *otherpoly, INTERSECTINFO *checkints, INTERSECTINFO *otherints)
GEOMLIBEXPORT int IntsSplitLine (INTSHANDLE ihp, DPOLYGON *dpoly, INTERSECTINFO *ints, int(*)(void *, DPOLYGON *), int(*)(void *), void *udata)
GEOMLIBEXPORT void IntsStop (INTSHANDLE ihp)

Function Documentation

GEOMLIBEXPORT void IntsClean INTSHANDLE  ihp,
DPOLYGON dpoly,
INTERSECTINFO ints
 

Sort and remove duplicates from INTERSECTINFO structure.

This function removes duplicate and/or overlapping intersections associated with the line. It also sorts the data for use in IntsSplitLine().

Parameters:
ihp  Intersection handle, see IntsInit()
dpoly  Polygon associated with INTERSECTINFO
ints  Structure to clean up

GEOMLIBEXPORT void IntsFree INTERSECTINFO ints  ) 
 

Free allocated memory from an INTERSECTINFO structure.

Internal pointers get allocated during the IntsSearch() and IntsSearchSelf() functions. This will free them up.

Parameters:
ints  Structure that contains allocated memory

GEOMLIBEXPORT int IntsInit double  thresh,
INTSHANDLE ihp
 

Initialize intersect searching code.

Parameters:
thresh  Threshold to remove duplicate points in calls to RemoveDupPtsT().
ihp  Intersection handle RETURNED

GEOMLIBEXPORT int IntsSearch INTSHANDLE  ihp,
DPOLYGON checkpoly,
DPOLYGON otherpoly,
INTERSECTINFO checkints,
INTERSECTINFO otherints
 

Search for intersections between two lines.

This function determines if the two lines cross or overlap each other and stores where into the respective INTERSECTINFO structure. This function will append to the INTERSECTINFO structure if intersection data exists for that line.

Parameters:
ihp  Intersection handle, see IntsInit()
checkpoly  Source line to search for intersections on
otherpoly  Other line to search for intersections on
checkints  Structure to store intersection data in for source line
otherints  Structure to store intersection data in for other line (may be NULL)

GEOMLIBEXPORT int IntsSplitLine INTSHANDLE  ihp,
DPOLYGON dpoly,
INTERSECTINFO ints,
int(*  )(void *, DPOLYGON *),
int(*  )(void *),
void *  udata
 

Split up a line according to the data in the INSTERSECTINFO structure.

Parameters:
ihp  Intersection handle, see IntsInit()
dpoly  Line to split
ints  Information on how to split the line
udata  Callback if line is completely overlapped and cannot be added, see IntsSplitLineEx User data to be passed to callbacks

GEOMLIBEXPORT void IntsStop INTSHANDLE  ihp  ) 
 

Clean up intersect searching code.

Parameters:
ihp  Intersection handle, see IntsInit()


Generated on Tue Dec 14 13:20:24 2004 for TNTsdk by  doxygen 1.3.8-20040913