469{
470 GBOX *box = (
GBOX *)PG_GETARG_POINTER(0);
474
475
476
477
478
479
480
481
482
483
484
485
486
488 {
489
493 }
495 {
497
498
505
506
510 }
511 else
512 {
515
516
521
522
524 &points[2], &points[3]);
527 }
528
529 PG_RETURN_POINTER(result);
530}
LWGEOM * lwpoint_as_lwgeom(const LWPOINT *obj)
void lwpoint_free(LWPOINT *pt)
POINTARRAY * ptarray_construct_empty(char hasz, char hasm, uint32_t maxpoints)
Create a new POINTARRAY with no points.
LWLINE * lwline_construct(int32_t srid, GBOX *bbox, POINTARRAY *points)
LWPOINT * lwpoint_make2d(int32_t srid, double x, double y)
LWGEOM * lwline_as_lwgeom(const LWLINE *obj)
LWPOLY * lwpoly_construct_rectangle(char hasz, char hasm, POINT4D *p1, POINT4D *p2, POINT4D *p3, POINT4D *p4)
int ptarray_append_point(POINTARRAY *pa, const POINT4D *pt, int allow_duplicates)
Append a point to the end of an existing POINTARRAY If allow_duplicate is LW_FALSE,...
void lwpoly_free(LWPOLY *poly)
#define LW_TRUE
Return types for functions with status returns.
#define SRID_UNKNOWN
Unknown SRID value.
LWGEOM * lwpoly_as_lwgeom(const LWPOLY *obj)
void lwline_free(LWLINE *line)
GSERIALIZED * geometry_serialize(LWGEOM *lwgeom)