PostGIS 3.6.2dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ SHPComputeExtents()

void SHPAPI_CALL SHPComputeExtents ( SHPObject psObject)

Definition at line 1161 of file shpopen.c.

1163{
1164 int i;
1165
1166/* -------------------------------------------------------------------- */
1167/* Build extents for this object. */
1168/* -------------------------------------------------------------------- */
1169 if( psObject->nVertices > 0 )
1170 {
1171 psObject->dfXMin = psObject->dfXMax = psObject->padfX[0];
1172 psObject->dfYMin = psObject->dfYMax = psObject->padfY[0];
1173 psObject->dfZMin = psObject->dfZMax = psObject->padfZ[0];
1174 psObject->dfMMin = psObject->dfMMax = psObject->padfM[0];
1175 }
1176
1177 for( i = 0; i < psObject->nVertices; i++ )
1178 {
1179 psObject->dfXMin = MIN(psObject->dfXMin, psObject->padfX[i]);
1180 psObject->dfYMin = MIN(psObject->dfYMin, psObject->padfY[i]);
1181 psObject->dfZMin = MIN(psObject->dfZMin, psObject->padfZ[i]);
1182 psObject->dfMMin = MIN(psObject->dfMMin, psObject->padfM[i]);
1183
1184 psObject->dfXMax = MAX(psObject->dfXMax, psObject->padfX[i]);
1185 psObject->dfYMax = MAX(psObject->dfYMax, psObject->padfY[i]);
1186 psObject->dfZMax = MAX(psObject->dfZMax, psObject->padfZ[i]);
1187 psObject->dfMMax = MAX(psObject->dfMMax, psObject->padfM[i]);
1188 }
1189}
#define MIN(a, b)
Definition shpopen.c:64
#define MAX(a, b)
Definition shpopen.c:65
double dfYMax
Definition shapefil.h:401
double * padfX
Definition shapefil.h:390
double dfXMin
Definition shapefil.h:395
double dfYMin
Definition shapefil.h:396
double * padfY
Definition shapefil.h:391
double dfMMax
Definition shapefil.h:403
double * padfZ
Definition shapefil.h:392
double dfZMax
Definition shapefil.h:402
double dfXMax
Definition shapefil.h:400
double * padfM
Definition shapefil.h:393
double dfMMin
Definition shapefil.h:398
double dfZMin
Definition shapefil.h:397

References tagSHPObject::dfMMax, tagSHPObject::dfMMin, tagSHPObject::dfXMax, tagSHPObject::dfXMin, tagSHPObject::dfYMax, tagSHPObject::dfYMin, tagSHPObject::dfZMax, tagSHPObject::dfZMin, MAX, MIN, tagSHPObject::nVertices, tagSHPObject::padfM, tagSHPObject::padfX, tagSHPObject::padfY, and tagSHPObject::padfZ.