PostGIS  3.4.0dev-r@@SVN_REVISION@@

◆ LWGEOM_longitude_shift()

Datum LWGEOM_longitude_shift ( PG_FUNCTION_ARGS  )

Definition at line 1056 of file lwgeom_functions_basic.c.

1057 {
1058  GSERIALIZED *geom;
1059  LWGEOM *lwgeom;
1060  GSERIALIZED *ret;
1061 
1062  POSTGIS_DEBUG(2, "LWGEOM_longitude_shift called.");
1063 
1064  geom = PG_GETARG_GSERIALIZED_P_COPY(0);
1065  lwgeom = lwgeom_from_gserialized(geom);
1066 
1067  /* Drop bbox, will be recomputed */
1068  lwgeom_drop_bbox(lwgeom);
1069 
1070  /* Modify geometry */
1071  lwgeom_longitude_shift(lwgeom);
1072 
1073  /* Construct GSERIALIZED */
1074  ret = geometry_serialize(lwgeom);
1075 
1076  /* Release deserialized geometry */
1077  lwgeom_free(lwgeom);
1078 
1079  /* Release detoasted geometry */
1080  pfree(geom);
1081 
1082  PG_RETURN_POINTER(ret);
1083 }
LWGEOM * lwgeom_from_gserialized(const GSERIALIZED *g)
Allocate a new LWGEOM from a GSERIALIZED.
Definition: gserialized.c:239
void lwgeom_longitude_shift(LWGEOM *lwgeom)
Definition: lwgeom.c:1008
void lwgeom_free(LWGEOM *geom)
Definition: lwgeom.c:1155
void lwgeom_drop_bbox(LWGEOM *lwgeom)
Call this function to drop BBOX and SRID from LWGEOM.
Definition: lwgeom.c:682

References lwgeom_drop_bbox(), lwgeom_free(), lwgeom_from_gserialized(), and lwgeom_longitude_shift().

Here is the call graph for this function: