PostGIS  3.0.0dev-r@@SVN_REVISION@@
lwgeom_functions_analytic.c File Reference
#include "postgres.h"
#include "funcapi.h"
#include "fmgr.h"
#include "liblwgeom.h"
#include "liblwgeom_internal.h"
#include "lwgeom_pg.h"
#include "math.h"
#include "lwgeom_rtree.h"
#include "lwgeom_functions_analytic.h"
#include "access/htup_details.h"
Include dependency graph for lwgeom_functions_analytic.c:

Go to the source code of this file.

Macros

#define CHECK_RING_IS_CLOSE
 
#define SAMEPOINT(a, b)   ((a)->x==(b)->x&&(a)->y==(b)->y)
 

Functions

Datum LWGEOM_simplify2d (PG_FUNCTION_ARGS)
 
Datum LWGEOM_SetEffectiveArea (PG_FUNCTION_ARGS)
 
Datum LWGEOM_line_interpolate_point (PG_FUNCTION_ARGS)
 
Datum ST_LineCrossingDirection (PG_FUNCTION_ARGS)
 
Datum ST_MinimumBoundingRadius (PG_FUNCTION_ARGS)
 
Datum ST_MinimumBoundingCircle (PG_FUNCTION_ARGS)
 
Datum ST_GeometricMedian (PG_FUNCTION_ARGS)
 
Datum ST_IsPolygonCCW (PG_FUNCTION_ARGS)
 
Datum ST_IsPolygonCW (PG_FUNCTION_ARGS)
 
static double determineSide (const POINT2D *seg1, const POINT2D *seg2, const POINT2D *point)
 
static int isOnSegment (const POINT2D *seg1, const POINT2D *seg2, const POINT2D *point)
 
static int point_in_ring (POINTARRAY *pts, const POINT2D *point)
 
static int point_in_ring_rtree (RTREE_NODE *root, const POINT2D *point)
 
 PG_FUNCTION_INFO_V1 (LWGEOM_simplify2d)
 
 PG_FUNCTION_INFO_V1 (LWGEOM_SetEffectiveArea)
 
 PG_FUNCTION_INFO_V1 (LWGEOM_ChaikinSmoothing)
 
Datum LWGEOM_ChaikinSmoothing (PG_FUNCTION_ARGS)
 
 PG_FUNCTION_INFO_V1 (LWGEOM_line_interpolate_point)
 
Datum LWGEOM_snaptogrid (PG_FUNCTION_ARGS)
 
Datum LWGEOM_snaptogrid_pointoff (PG_FUNCTION_ARGS)
 
 PG_FUNCTION_INFO_V1 (LWGEOM_snaptogrid)
 
 PG_FUNCTION_INFO_V1 (LWGEOM_snaptogrid_pointoff)
 
 PG_FUNCTION_INFO_V1 (ST_LineCrossingDirection)
 
Datum LWGEOM_line_substring (PG_FUNCTION_ARGS)
 
 PG_FUNCTION_INFO_V1 (LWGEOM_line_substring)
 
int point_in_polygon_rtree (RTREE_NODE **root, int ringCount, LWPOINT *point)
 
int point_in_multipolygon_rtree (RTREE_NODE **root, int polyCount, int *ringCounts, LWPOINT *point)
 
int point_in_polygon (LWPOLY *polygon, LWPOINT *point)
 
int point_in_multipolygon (LWMPOLY *mpolygon, LWPOINT *point)
 
 PG_FUNCTION_INFO_V1 (ST_MinimumBoundingRadius)
 
 PG_FUNCTION_INFO_V1 (ST_MinimumBoundingCircle)
 
 PG_FUNCTION_INFO_V1 (ST_GeometricMedian)
 
 PG_FUNCTION_INFO_V1 (ST_IsPolygonCW)
 
 PG_FUNCTION_INFO_V1 (ST_IsPolygonCCW)