394 double *xpts, *ypts, *zpts, *mpts;
396 int *shpparts, shppointtotal = 0, shppoint = 0;
399 shpparts =
malloc(
sizeof(
int) * lwmultilinestring->
ngeoms);
402 for (i = 0; i < lwmultilinestring->
ngeoms; i++)
405 LWDEBUGF(3,
"Total number of points: %d", shppointtotal);
408 xpts =
malloc(
sizeof(
double) * shppointtotal);
409 ypts =
malloc(
sizeof(
double) * shppointtotal);
410 zpts =
malloc(
sizeof(
double) * shppointtotal);
411 mpts =
malloc(
sizeof(
double) * shppointtotal);
414 for (i = 0; i < lwmultilinestring->
ngeoms; i++)
417 shpparts[i] = shppoint;
423 xpts[shppoint] = p4d.
x;
424 ypts[shppoint] = p4d.
y;
425 zpts[shppoint] = p4d.
z;
426 mpts[shppoint] = p4d.
m;
428 LWDEBUGF(4,
"Linestring %d - Point: %g %g %g %g", i, xpts[shppoint], ypts[shppoint], zpts[shppoint], mpts[shppoint]);
POINT4D getPoint4d(const POINTARRAY *pa, uint32_t n)
#define LWDEBUGF(level, msg,...)
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 SHPAPI_CALL1(*) SHPCreateSimpleObject(int nSHPType, int nVertices, const double *padfX, const double *padfY, const double *padfZ