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

◆ lwcollection_filterm()

static LWCOLLECTION * lwcollection_filterm ( const LWCOLLECTION igeom,
double  min,
double  max,
int  returnm 
)
static

Definition at line 153 of file lwmval.c.

154{
155 LWDEBUGF(2, "Entered %s",__func__);
156
157 uint32_t i;
158
159 LWCOLLECTION *out = lwcollection_construct_empty(igeom->type, igeom->srid, FLAGS_GET_Z(igeom->flags),returnm * FLAGS_GET_M(igeom->flags));
160
161 if( lwcollection_is_empty(igeom) )
162 return out;
163
164 for( i = 0; i < igeom->ngeoms; i++ )
165 {
166 LWGEOM *ngeom = lwgeom_filter_m_ignore_null(igeom->geoms[i],min, max,returnm);
167 if ( ngeom ) out = lwcollection_add_lwgeom(out, ngeom);
168 }
169
170 return out;
171}
#define FLAGS_GET_Z(flags)
Definition liblwgeom.h:165
#define FLAGS_GET_M(flags)
Definition liblwgeom.h:166
LWCOLLECTION * lwcollection_construct_empty(uint8_t type, int32_t srid, char hasz, char hasm)
LWCOLLECTION * lwcollection_add_lwgeom(LWCOLLECTION *col, const LWGEOM *geom)
Appends geom to the collection managed by col.
int lwcollection_is_empty(const LWCOLLECTION *col)
#define LWDEBUGF(level, msg,...)
Definition lwgeom_log.h:106
static LWGEOM * lwgeom_filter_m_ignore_null(LWGEOM *geom, double min, double max, int returnm)
Definition lwmval.c:173
lwflags_t flags
Definition liblwgeom.h:577
uint32_t ngeoms
Definition liblwgeom.h:580
uint8_t type
Definition liblwgeom.h:578
LWGEOM ** geoms
Definition liblwgeom.h:575
int32_t srid
Definition liblwgeom.h:576

References LWCOLLECTION::flags, FLAGS_GET_M, FLAGS_GET_Z, LWCOLLECTION::geoms, lwcollection_add_lwgeom(), lwcollection_construct_empty(), lwcollection_is_empty(), LWDEBUGF, lwgeom_filter_m_ignore_null(), LWCOLLECTION::ngeoms, LWCOLLECTION::srid, and LWCOLLECTION::type.

Referenced by lwgeom_filter_m_ignore_null().

Here is the call graph for this function:
Here is the caller graph for this function: