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

◆ SHPComputeExtents() [2/2]

void SHPAPI_CALL SHPComputeExtents ( SHPObject psObject)

Definition at line 1172 of file shpopen.c.

1174{
1175 int i;
1176
1177/* -------------------------------------------------------------------- */
1178/* Build extents for this object. */
1179/* -------------------------------------------------------------------- */
1180 if( psObject->nVertices > 0 )
1181 {
1182 psObject->dfXMin = psObject->dfXMax = psObject->padfX[0];
1183 psObject->dfYMin = psObject->dfYMax = psObject->padfY[0];
1184 psObject->dfZMin = psObject->dfZMax = psObject->padfZ[0];
1185 psObject->dfMMin = psObject->dfMMax = psObject->padfM[0];
1186 }
1187
1188 for( i = 0; i < psObject->nVertices; i++ )
1189 {
1190 psObject->dfXMin = MIN(psObject->dfXMin, psObject->padfX[i]);
1191 psObject->dfYMin = MIN(psObject->dfYMin, psObject->padfY[i]);
1192 psObject->dfZMin = MIN(psObject->dfZMin, psObject->padfZ[i]);
1193 psObject->dfMMin = MIN(psObject->dfMMin, psObject->padfM[i]);
1194
1195 psObject->dfXMax = MAX(psObject->dfXMax, psObject->padfX[i]);
1196 psObject->dfYMax = MAX(psObject->dfYMax, psObject->padfY[i]);
1197 psObject->dfZMax = MAX(psObject->dfZMax, psObject->padfZ[i]);
1198 psObject->dfMMax = MAX(psObject->dfMMax, psObject->padfM[i]);
1199 }
1200}
#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.