PostGIS  2.3.8dev-r@@SVN_REVISION@@

◆ lwpoint_locate_along()

static LWMPOINT* lwpoint_locate_along ( const LWPOINT lwpoint,
double  m,
double  offset 
)
static

Definition at line 182 of file lwlinearreferencing.c.

References FP_EQUALS, lwgeom_get_srid(), lwgeom_has_m(), lwgeom_has_z(), lwmpoint_add_lwpoint(), lwmpoint_construct_empty(), lwpoint_as_lwgeom(), lwpoint_clone(), lwpoint_get_m(), and r.

Referenced by lwgeom_locate_along().

183 {
184  double point_m = lwpoint_get_m(lwpoint);
185  LWGEOM *lwg = lwpoint_as_lwgeom(lwpoint);
187  if ( FP_EQUALS(m, point_m) )
188  {
189  lwmpoint_add_lwpoint(r, lwpoint_clone(lwpoint));
190  }
191  return r;
192 }
char * r
Definition: cu_in_wkt.c:24
int32_t lwgeom_get_srid(const LWGEOM *geom)
Return SRID number.
Definition: lwgeom.c:835
int lwgeom_has_z(const LWGEOM *geom)
Return LW_TRUE if geometry has Z ordinates.
Definition: lwgeom.c:849
LWPOINT * lwpoint_clone(const LWPOINT *lwgeom)
Definition: lwpoint.c:221
LWMPOINT * lwmpoint_construct_empty(int srid, char hasz, char hasm)
Definition: lwmpoint.c:39
double lwpoint_get_m(const LWPOINT *point)
Definition: lwpoint.c:95
LWMPOINT * lwmpoint_add_lwpoint(LWMPOINT *mobj, const LWPOINT *obj)
Definition: lwmpoint.c:45
#define FP_EQUALS(A, B)
LWGEOM * lwpoint_as_lwgeom(const LWPOINT *obj)
Definition: lwgeom.c:267
int lwgeom_has_m(const LWGEOM *geom)
Return LW_TRUE if geometry has M ordinates.
Definition: lwgeom.c:856
Here is the call graph for this function:
Here is the caller graph for this function: