|
| static void | SwapWord (int length, void *wordP) |
| |
| static void * | SfRealloc (void *pMem, int nNewSize) |
| |
| void SHPAPI_CALL | SHPWriteHeader (SHPHandle psSHP) |
| |
| SHPHandle SHPAPI_CALL | SHPOpen (const char *pszLayer, const char *pszAccess) |
| |
| SHPHandle SHPAPI_CALL | SHPOpenLL (const char *pszLayer, const char *pszAccess, SAHooks *psHooks) |
| |
| void SHPAPI_CALL | SHPClose (SHPHandle psSHP) |
| |
| void SHPAPI_CALL | SHPGetInfo (SHPHandle psSHP, int *pnEntities, int *pnShapeType, double *padfMinBound, double *padfMaxBound) |
| |
| SHPHandle SHPAPI_CALL | SHPCreate (const char *pszLayer, int nShapeType) |
| |
| SHPHandle SHPAPI_CALL | SHPCreateLL (const char *pszLayer, int nShapeType, SAHooks *psHooks) |
| |
| static void | _SHPSetBounds (uchar *pabyRec, SHPObject *psShape) |
| |
| void SHPAPI_CALL | SHPComputeExtents (SHPObject *psObject) |
| |
| SHPObject SHPAPI_CALL1 * | SHPCreateObject (int nSHPType, int nShapeId, int nParts, const int *panPartStart, const int *panPartType, int nVertices, const double *padfX, const double *padfY, const double *padfZ, const double *padfM){ SHPObject *psObject;int i, bHasM, bHasZ;psObject=(SHPObject *) calloc(1, sizeof(SHPObject) |
| |
| | if (nSHPType==SHPT_ARCM||nSHPType==SHPT_POINTM||nSHPType==SHPT_POLYGONM||nSHPType==SHPT_MULTIPOINTM) |
| |
| | if (nVertices > 0) |
| |
| | SHPComputeExtents (psObject) |
| |
| | return (psObject) |
| |
| SHPObject SHPAPI_CALL1 * | SHPCreateSimpleObject (int nSHPType, int nVertices, const double *padfX, const double *padfY, const double *padfZ){ return(SHPCreateObject(nSHPType, -1, 0, NULL, NULL, nVertices, padfX, padfY, padfZ, NULL) |
| |
| int SHPAPI_CALL | SHPWriteObject (SHPHandle psSHP, int nShapeId, SHPObject *psObject) |
| |
| SHPObject SHPAPI_CALL1 * | SHPReadObject (SHPHandle psSHP, int hEntity){ int32 nEntitySize, nRequiredSize;SHPObject *psShape;char szErrorMsg[130];if(hEntity< 0||hEntity >=psSHP->nRecords) return(NULL |
| |
| | if (nEntitySize >(int32) psSHP->nBufSize) |
| |
| | if (psSHP->pabyRec==NULL) |
| |
| | if (psSHP->sHooks.FSeek(psSHP->fpSHP, psSHP->panRecOffset[hEntity], 0) !=0) |
| |
| | if (psSHP->sHooks.FRead(psSHP->pabyRec, nEntitySize, 1, psSHP->fpSHP) !=1) |
| |
| | if (8+4 > nEntitySize) |
| |
| | if (bBigEndian) |
| |
| else | if (psShape->nSHPType==SHPT_MULTIPOINT||psShape->nSHPType==SHPT_MULTIPOINTM||psShape->nSHPType==SHPT_MULTIPOINTZ) |
| |
| | return (psShape) |
| |
| const char SHPAPI_CALL1 * | SHPTypeName (int nSHPType){ switch(nSHPType |
| |
| const char SHPAPI_CALL1 * | SHPPartTypeName (int nPartType){ switch(nPartType |
| |
| void SHPAPI_CALL | SHPDestroyObject (SHPObject *psShape) |
| |
| int SHPAPI_CALL | SHPRewindObject (SHPHandle hSHP, SHPObject *psObject) |
| |