2170{
2174
2175 POSTGIS_DEBUG(2, "LWGEOM_makepoint called");
2176
2177 x = PG_GETARG_FLOAT8(0);
2178 y = PG_GETARG_FLOAT8(1);
2179
2180 if (PG_NARGS() == 2)
2182 else if (PG_NARGS() == 3)
2183 {
2184 z = PG_GETARG_FLOAT8(2);
2186 }
2187 else if (PG_NARGS() == 4)
2188 {
2189 z = PG_GETARG_FLOAT8(2);
2190 m = PG_GETARG_FLOAT8(3);
2192 }
2193 else
2194 {
2195 elog(ERROR, "LWGEOM_makepoint: unsupported number of args: %d", PG_NARGS());
2196 PG_RETURN_NULL();
2197 }
2198
2200
2201 PG_RETURN_POINTER(
result);
2202}
char result[OUT_DOUBLE_BUFFER_SIZE]
LWPOINT * lwpoint_make4d(int32_t srid, double x, double y, double z, double m)
LWPOINT * lwpoint_make3dz(int32_t srid, double x, double y, double z)
LWPOINT * lwpoint_make2d(int32_t srid, double x, double y)
#define SRID_UNKNOWN
Unknown SRID value.