|
PostgreSQL Source Code git master
|
#include "postgres.h"#include <math.h>#include <limits.h>#include <float.h>#include <ctype.h>#include "libpq/pqformat.h"#include "miscadmin.h"#include "nodes/miscnodes.h"#include "utils/fmgrprotos.h"#include "utils/geo_decls.h"#include "varatt.h"
Go to the source code of this file.
Macros | |
| #define | LDELIM '(' |
| #define | RDELIM ')' |
| #define | DELIM ',' |
| #define | LDELIM_EP '[' |
| #define | RDELIM_EP ']' |
| #define | LDELIM_C '<' |
| #define | RDELIM_C '>' |
| #define | LDELIM_L '{' |
| #define | RDELIM_L '}' |
| #define | POINT_ON_POLYGON INT_MAX |
Enumerations | |
| enum | path_delim { PATH_NONE , PATH_OPEN , PATH_CLOSED } |
| Datum box_above | ( | PG_FUNCTION_ARGS | ) |
Definition at line 671 of file geo_ops.c.
References fb(), FPgt(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_above_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 748 of file geo_ops.c.
References fb(), FPge(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
| Datum box_add | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4324 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_BOX_P, PG_GETARG_POINT_P, PG_RETURN_BOX_P, point_add_point(), and result.
| Datum box_area | ( | PG_FUNCTION_ARGS | ) |
Definition at line 815 of file geo_ops.c.
References box_ar(), fb(), PG_GETARG_BOX_P, and PG_RETURN_FLOAT8.
| Datum box_below | ( | PG_FUNCTION_ARGS | ) |
Definition at line 646 of file geo_ops.c.
References fb(), FPlt(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_below_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 739 of file geo_ops.c.
References fb(), FPle(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
| Datum box_center | ( | PG_FUNCTION_ARGS | ) |
Definition at line 872 of file geo_ops.c.
References box_cn(), fb(), palloc_object, PG_GETARG_BOX_P, PG_RETURN_NULL, PG_RETURN_POINT_P, result, and SOFT_ERROR_OCCURRED.
| Datum box_circle | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5349 of file geo_ops.c.
References fb(), float8_div_safe(), float8_pl_safe(), palloc_object, PG_GETARG_BOX_P, PG_RETURN_CIRCLE_P, PG_RETURN_NULL, point_dt(), SOFT_ERROR_OCCURRED, x, and y.
Definition at line 3095 of file geo_ops.c.
References box_interpt_lseg(), fb(), float8_lt(), lseg_closept_lseg(), result, and statlseg_construct().
Referenced by close_sb(), dist_bs(), and dist_sb().
Definition at line 2960 of file geo_ops.c.
References box_contain_point(), fb(), float8_lt(), lseg_closept_point(), result, and statlseg_construct().
Referenced by close_pb(), dist_bp(), and dist_pb().
Definition at line 899 of file geo_ops.c.
References fb(), float8_div_safe(), float8_pl_safe(), SOFT_ERROR_OCCURRED, x, Point::x, y, and Point::y.
Referenced by box_center(), box_distance(), and box_interpt_lseg().
Definition at line 522 of file geo_ops.c.
References fb(), float8_gt(), and result.
Referenced by box_div(), box_mul(), box_poly(), and points_box().
| Datum box_contain | ( | PG_FUNCTION_ARGS | ) |
Definition at line 708 of file geo_ops.c.
References box_contain_box(), fb(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
Definition at line 720 of file geo_ops.c.
References fb(), FPge(), and FPle().
Referenced by box_contain(), box_contained(), and poly_contain_poly().
Definition at line 3300 of file geo_ops.c.
References box_contain_point(), and fb().
Referenced by on_sb().
Definition at line 3212 of file geo_ops.c.
References fb().
Referenced by box_closept_point(), box_contain_lseg(), box_contain_pt(), box_interpt_lseg(), and on_pb().
| Datum box_contain_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3228 of file geo_ops.c.
References box_contain_point(), fb(), PG_GETARG_BOX_P, PG_GETARG_POINT_P, and PG_RETURN_BOOL.
Referenced by spg_quad_inner_consistent(), and spg_quad_leaf_consistent().
| Datum box_contained | ( | PG_FUNCTION_ARGS | ) |
Definition at line 696 of file geo_ops.c.
References box_contain_box(), fb(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_diagonal | ( | PG_FUNCTION_ARGS | ) |
Definition at line 979 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_BOX_P, PG_RETURN_LSEG_P, result, and statlseg_construct().
| Datum box_distance | ( | PG_FUNCTION_ARGS | ) |
Definition at line 854 of file geo_ops.c.
References a, b, box_cn(), fb(), PG_GETARG_BOX_P, PG_RETURN_FLOAT8, and point_dt().
| Datum box_div | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4373 of file geo_ops.c.
References box_construct(), fb(), palloc_object, PG_GETARG_BOX_P, PG_GETARG_POINT_P, PG_RETURN_BOX_P, point_div_point(), and result.
| Datum box_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 780 of file geo_ops.c.
References box_ar(), fb(), FPeq(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
| Datum box_ge | ( | PG_FUNCTION_ARGS | ) |
Definition at line 798 of file geo_ops.c.
References box_ar(), fb(), FPge(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
| Datum box_gt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 771 of file geo_ops.c.
References box_ar(), fb(), FPgt(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
| Datum box_height | ( | PG_FUNCTION_ARGS | ) |
Definition at line 841 of file geo_ops.c.
References box_ht(), fb(), PG_GETARG_BOX_P, and PG_RETURN_FLOAT8.
Definition at line 937 of file geo_ops.c.
References fb(), and float8_mi().
Referenced by box_ar(), and box_height().
| Datum box_in | ( | PG_FUNCTION_ARGS | ) |
Definition at line 424 of file geo_ops.c.
References fb(), float8_lt(), palloc_object, path_decode(), PG_GETARG_CSTRING, PG_RETURN_BOX_P, PG_RETURN_NULL, str, x, and y.
Definition at line 3346 of file geo_ops.c.
References box_cn(), box_contain_point(), box_ov(), fb(), float8_max(), float8_min(), lseg_closept_point(), lseg_interpt_lseg(), result, statlseg_construct(), and Point::x.
Referenced by box_closept_lseg(), and inter_sb().
| Datum box_intersect | ( | PG_FUNCTION_ARGS | ) |
Definition at line 953 of file geo_ops.c.
References box_ov(), fb(), float8_max(), float8_min(), palloc_object, PG_GETARG_BOX_P, PG_RETURN_BOX_P, PG_RETURN_NULL, and result.
| Datum box_le | ( | PG_FUNCTION_ARGS | ) |
Definition at line 789 of file geo_ops.c.
References box_ar(), fb(), FPle(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
| Datum box_left | ( | PG_FUNCTION_ARGS | ) |
Definition at line 590 of file geo_ops.c.
References fb(), FPlt(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_lt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 762 of file geo_ops.c.
References box_ar(), fb(), FPlt(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
| Datum box_mul | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4354 of file geo_ops.c.
References box_construct(), fb(), palloc_object, PG_GETARG_BOX_P, PG_GETARG_POINT_P, PG_RETURN_BOX_P, point_mul_point(), and result.
| Datum box_out | ( | PG_FUNCTION_ARGS | ) |
Definition at line 458 of file geo_ops.c.
References fb(), path_encode(), PATH_NONE, PG_GETARG_BOX_P, and PG_RETURN_CSTRING.
Definition at line 578 of file geo_ops.c.
Referenced by box_interpt_lseg(), box_intersect(), box_overlap(), path_inter(), and poly_overlap_internal().
| Datum box_overabove | ( | PG_FUNCTION_ARGS | ) |
Definition at line 684 of file geo_ops.c.
References fb(), FPge(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_overbelow | ( | PG_FUNCTION_ARGS | ) |
Definition at line 659 of file geo_ops.c.
References fb(), FPle(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_overlap | ( | PG_FUNCTION_ARGS | ) |
Definition at line 569 of file geo_ops.c.
References box_ov(), fb(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_overleft | ( | PG_FUNCTION_ARGS | ) |
Definition at line 606 of file geo_ops.c.
References fb(), FPle(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_overright | ( | PG_FUNCTION_ARGS | ) |
Definition at line 634 of file geo_ops.c.
References fb(), FPge(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_poly | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4635 of file geo_ops.c.
References box_construct(), fb(), palloc(), PG_GETARG_BOX_P, PG_RETURN_POLYGON_P, and SET_VARSIZE().
| Datum box_recv | ( | PG_FUNCTION_ARGS | ) |
Definition at line 469 of file geo_ops.c.
References buf, fb(), float8_lt(), palloc_object, PG_GETARG_POINTER, PG_RETURN_BOX_P, pq_getmsgfloat8(), x, and y.
| Datum box_right | ( | PG_FUNCTION_ARGS | ) |
Definition at line 618 of file geo_ops.c.
References fb(), FPgt(), PG_GETARG_BOX_P, and PG_RETURN_BOOL.
Referenced by gist_box_leaf_consistent(), rtree_internal_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_same | ( | PG_FUNCTION_ARGS | ) |
Definition at line 556 of file geo_ops.c.
References fb(), PG_GETARG_BOX_P, PG_RETURN_BOOL, and point_eq_point().
Referenced by gist_box_leaf_consistent(), and spg_box_quad_leaf_consistent().
| Datum box_send | ( | PG_FUNCTION_ARGS | ) |
Definition at line 504 of file geo_ops.c.
References buf, fb(), PG_GETARG_BOX_P, PG_RETURN_BYTEA_P, pq_begintypsend(), pq_endtypsend(), and pq_sendfloat8().
| Datum box_sub | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4339 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_BOX_P, PG_GETARG_POINT_P, PG_RETURN_BOX_P, point_sub_point(), and result.
Definition at line 926 of file geo_ops.c.
References fb(), and float8_mi().
Referenced by box_ar(), and box_width().
| Datum box_width | ( | PG_FUNCTION_ARGS | ) |
Definition at line 828 of file geo_ops.c.
References box_wd(), fb(), PG_GETARG_BOX_P, and PG_RETURN_FLOAT8.
| Datum boxes_bound_box | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4414 of file geo_ops.c.
References fb(), float8_max(), float8_min(), palloc_object, PG_GETARG_BOX_P, and PG_RETURN_BOX_P.
| Datum circle_above | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4975 of file geo_ops.c.
References fb(), float8_mi(), float8_pl(), FPgt(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_add_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5081 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_CIRCLE_P, PG_GETARG_POINT_P, PG_RETURN_CIRCLE_P, point_add_point(), and result.
Definition at line 5283 of file geo_ops.c.
References fb(), float8_mul(), and M_PI.
Referenced by circle_area(), circle_eq(), circle_ge(), circle_gt(), circle_le(), circle_lt(), and circle_ne().
| Datum circle_area | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5150 of file geo_ops.c.
References circle_ar(), fb(), PG_GETARG_CIRCLE_P, and PG_RETURN_FLOAT8.
| Datum circle_below | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4962 of file geo_ops.c.
References fb(), float8_mi(), float8_pl(), FPlt(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_box | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5310 of file geo_ops.c.
References fb(), float8_div_safe(), float8_mi_safe(), float8_pl_safe(), palloc_object, PG_GETARG_CIRCLE_P, PG_RETURN_BOX_P, PG_RETURN_NULL, and SOFT_ERROR_OCCURRED.
| Datum circle_center | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5266 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_CIRCLE_P, PG_RETURN_POINT_P, and result.
| Datum circle_contain | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4948 of file geo_ops.c.
References fb(), float8_mi(), FPle(), PG_GETARG_CIRCLE_P, PG_RETURN_BOOL, and point_dt().
| Datum circle_contain_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5203 of file geo_ops.c.
References fb(), PG_GETARG_CIRCLE_P, PG_GETARG_POINT_P, PG_RETURN_BOOL, and point_dt().
Referenced by gist_point_consistent().
| Datum circle_contained | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4935 of file geo_ops.c.
References fb(), float8_mi(), FPle(), PG_GETARG_CIRCLE_P, PG_RETURN_BOOL, and point_dt().
| Datum circle_diameter | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5162 of file geo_ops.c.
References fb(), float8_mul(), PG_GETARG_CIRCLE_P, and PG_RETURN_FLOAT8.
| Datum circle_distance | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5187 of file geo_ops.c.
References fb(), float8_mi(), float8_pl(), PG_GETARG_CIRCLE_P, PG_RETURN_FLOAT8, point_dt(), and result.
| Datum circle_div_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5131 of file geo_ops.c.
References fb(), float8_div(), palloc_object, PG_GETARG_CIRCLE_P, PG_GETARG_POINT_P, PG_RETURN_CIRCLE_P, point_div_point(), and result.
| Datum circle_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5018 of file geo_ops.c.
References circle_ar(), fb(), FPeq(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_ge | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5063 of file geo_ops.c.
References circle_ar(), fb(), FPge(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_gt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5045 of file geo_ops.c.
References circle_ar(), fb(), FPgt(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_in | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4712 of file geo_ops.c.
References DELIM, ereturn, errcode(), errmsg, fb(), LDELIM, LDELIM_C, pair_decode(), palloc_object, PG_GETARG_CSTRING, PG_RETURN_CIRCLE_P, PG_RETURN_NULL, RDELIM, RDELIM_C, single_decode(), and str.
| Datum circle_le | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5054 of file geo_ops.c.
References circle_ar(), fb(), FPle(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_left | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4895 of file geo_ops.c.
References fb(), float8_mi(), float8_pl(), FPlt(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_lt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5036 of file geo_ops.c.
References circle_ar(), fb(), FPlt(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_mul_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5116 of file geo_ops.c.
References fb(), float8_mul(), palloc_object, PG_GETARG_CIRCLE_P, PG_GETARG_POINT_P, PG_RETURN_CIRCLE_P, point_mul_point(), and result.
| Datum circle_ne | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5027 of file geo_ops.c.
References circle_ar(), fb(), FPne(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_out | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4783 of file geo_ops.c.
References appendStringInfoChar(), DELIM, fb(), initStringInfo(), LDELIM, LDELIM_C, pair_encode(), PG_GETARG_CIRCLE_P, PG_RETURN_CSTRING, RDELIM, RDELIM_C, single_encode(), and str.
| Datum circle_overabove | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5003 of file geo_ops.c.
References fb(), float8_mi(), FPge(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_overbelow | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4989 of file geo_ops.c.
References fb(), float8_pl(), FPle(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_overlap | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4868 of file geo_ops.c.
References fb(), float8_pl(), FPle(), PG_GETARG_CIRCLE_P, PG_RETURN_BOOL, and point_dt().
| Datum circle_overleft | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4882 of file geo_ops.c.
References fb(), float8_pl(), FPle(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_overright | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4922 of file geo_ops.c.
References fb(), float8_mi(), FPge(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_poly | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5453 of file geo_ops.c.
References circle_poly_internal(), fb(), PG_GETARG_CIRCLE_P, PG_GETARG_INT32, and PG_RETURN_POLYGON_P.
|
static |
Definition at line 5388 of file geo_ops.c.
References FunctionCallInfoBaseData::context, ereturn, errcode(), errmsg, fb(), float8_div(), float8_mi_safe(), float8_mul_safe(), float8_pl_safe(), FPzero, i, M_PI, make_bound_box(), palloc0(), SET_VARSIZE(), and SOFT_ERROR_OCCURRED.
Referenced by circle_poly(), and circle_to_poly().
| Datum circle_radius | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5174 of file geo_ops.c.
References fb(), PG_GETARG_CIRCLE_P, and PG_RETURN_FLOAT8.
| Datum circle_recv | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4805 of file geo_ops.c.
References buf, ereport, errcode(), errmsg, ERROR, fb(), palloc_object, PG_GETARG_POINTER, PG_RETURN_CIRCLE_P, and pq_getmsgfloat8().
| Datum circle_right | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4908 of file geo_ops.c.
References fb(), float8_mi(), float8_pl(), FPgt(), PG_GETARG_CIRCLE_P, and PG_RETURN_BOOL.
| Datum circle_same | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4854 of file geo_ops.c.
References fb(), FPeq(), PG_GETARG_CIRCLE_P, PG_RETURN_BOOL, and point_eq_point().
| Datum circle_send | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4829 of file geo_ops.c.
References buf, fb(), PG_GETARG_CIRCLE_P, PG_RETURN_BYTEA_P, pq_begintypsend(), pq_endtypsend(), and pq_sendfloat8().
| Datum circle_sub_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5096 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_CIRCLE_P, PG_GETARG_POINT_P, PG_RETURN_CIRCLE_P, point_sub_point(), and result.
| Datum circle_to_poly | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5463 of file geo_ops.c.
References circle_poly_internal(), fb(), PG_GETARG_CIRCLE_P, and PG_RETURN_POLYGON_P.
| Datum close_ls | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3070 of file geo_ops.c.
References fb(), line_sl(), lseg_closept_line(), lseg_sl(), palloc_object, PG_GETARG_LINE_P, PG_GETARG_LSEG_P, PG_RETURN_NULL, PG_RETURN_POINT_P, and result.
| Datum close_lseg | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2935 of file geo_ops.c.
References fb(), lseg_closept_lseg(), lseg_sl(), palloc_object, PG_GETARG_LSEG_P, PG_RETURN_NULL, PG_RETURN_POINT_P, and result.
| Datum close_pb | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3015 of file geo_ops.c.
References box_closept_point(), fb(), palloc_object, PG_GETARG_BOX_P, PG_GETARG_POINT_P, PG_RETURN_NULL, PG_RETURN_POINT_P, and result.
| Datum close_pl | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2832 of file geo_ops.c.
References fb(), line_closept_point(), palloc_object, PG_GETARG_LINE_P, PG_GETARG_POINT_P, PG_RETURN_NULL, PG_RETURN_POINT_P, and result.
| Datum close_ps | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2873 of file geo_ops.c.
References fb(), lseg_closept_point(), palloc_object, PG_GETARG_LSEG_P, PG_GETARG_POINT_P, PG_RETURN_NULL, PG_RETURN_POINT_P, and result.
| Datum close_sb | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3145 of file geo_ops.c.
References box_closept_lseg(), fb(), palloc_object, PG_GETARG_BOX_P, PG_GETARG_LSEG_P, PG_RETURN_NULL, PG_RETURN_POINT_P, and result.
| Datum construct_point | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4180 of file geo_ops.c.
References palloc_object, PG_GETARG_FLOAT8, PG_RETURN_POINT_P, point_construct(), result, x, and y.
| Datum cr_circle | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5294 of file geo_ops.c.
References palloc_object, PG_GETARG_FLOAT8, PG_GETARG_POINT_P, PG_RETURN_CIRCLE_P, result, Point::x, and Point::y.
| Datum dist_bp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2596 of file geo_ops.c.
References box_closept_point(), fb(), PG_GETARG_BOX_P, PG_GETARG_POINT_P, and PG_RETURN_FLOAT8.
| Datum dist_bs | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2644 of file geo_ops.c.
References box_closept_lseg(), fb(), PG_GETARG_BOX_P, PG_GETARG_LSEG_P, and PG_RETURN_FLOAT8.
| Datum dist_cpoint | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5249 of file geo_ops.c.
References fb(), float8_mi(), PG_GETARG_CIRCLE_P, PG_GETARG_POINT_P, PG_RETURN_FLOAT8, point_dt(), and result.
| Datum dist_cpoly | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2670 of file geo_ops.c.
References dist_cpoly_internal(), fb(), PG_GETARG_CIRCLE_P, PG_GETARG_POLYGON_P, and PG_RETURN_FLOAT8.
Definition at line 2653 of file geo_ops.c.
References dist_ppoly_internal(), fb(), float8_mi(), and result.
Referenced by dist_cpoly(), and dist_polyc().
| Datum dist_lp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2484 of file geo_ops.c.
References fb(), line_closept_point(), PG_GETARG_LINE_P, PG_GETARG_POINT_P, and PG_RETURN_FLOAT8.
| Datum dist_ls | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2620 of file geo_ops.c.
References fb(), lseg_closept_line(), PG_GETARG_LINE_P, PG_GETARG_LSEG_P, and PG_RETURN_FLOAT8.
| Datum dist_pathp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2572 of file geo_ops.c.
References dist_ppath_internal(), fb(), PG_GETARG_PATH_P, PG_GETARG_POINT_P, and PG_RETURN_FLOAT8.
| Datum dist_pb | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2584 of file geo_ops.c.
References box_closept_point(), fb(), PG_GETARG_BOX_P, PG_GETARG_POINT_P, and PG_RETURN_FLOAT8.
| Datum dist_pc | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5231 of file geo_ops.c.
References fb(), float8_mi(), PG_GETARG_CIRCLE_P, PG_GETARG_POINT_P, PG_RETURN_FLOAT8, point_dt(), and result.
| Datum dist_pl | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2472 of file geo_ops.c.
References fb(), line_closept_point(), PG_GETARG_LINE_P, PG_GETARG_POINT_P, and PG_RETURN_FLOAT8.
| Datum dist_polyc | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2682 of file geo_ops.c.
References dist_cpoly_internal(), fb(), PG_GETARG_CIRCLE_P, PG_GETARG_POLYGON_P, and PG_RETURN_FLOAT8.
| Datum dist_polyp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2703 of file geo_ops.c.
References dist_ppoly_internal(), fb(), PG_GETARG_POINT_P, PG_GETARG_POLYGON_P, and PG_RETURN_FLOAT8.
| Datum dist_ppath | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2560 of file geo_ops.c.
References dist_ppath_internal(), fb(), PG_GETARG_PATH_P, PG_GETARG_POINT_P, and PG_RETURN_FLOAT8.
Definition at line 2517 of file geo_ops.c.
References Assert, PATH::closed, fb(), float8_lt(), i, lseg_closept_point(), PATH::npts, PATH::p, result, and statlseg_construct().
Referenced by dist_pathp(), and dist_ppath().
| Datum dist_ppoly | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2694 of file geo_ops.c.
References dist_ppoly_internal(), fb(), PG_GETARG_POINT_P, PG_GETARG_POLYGON_P, and PG_RETURN_FLOAT8.
Definition at line 2712 of file geo_ops.c.
References fb(), float8_lt(), i, lseg_closept_point(), LSEG::p, point_inside(), result, Point::x, and Point::y.
Referenced by dist_cpoly_internal(), dist_polyp(), and dist_ppoly().
| Datum dist_ps | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2496 of file geo_ops.c.
References fb(), lseg_closept_point(), PG_GETARG_LSEG_P, PG_GETARG_POINT_P, and PG_RETURN_FLOAT8.
| Datum dist_sb | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2632 of file geo_ops.c.
References box_closept_lseg(), fb(), PG_GETARG_BOX_P, PG_GETARG_LSEG_P, and PG_RETURN_FLOAT8.
| Datum dist_sl | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2608 of file geo_ops.c.
References fb(), lseg_closept_line(), PG_GETARG_LINE_P, PG_GETARG_LSEG_P, and PG_RETURN_FLOAT8.
| Datum dist_sp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2508 of file geo_ops.c.
References fb(), lseg_closept_point(), PG_GETARG_LSEG_P, PG_GETARG_POINT_P, and PG_RETURN_FLOAT8.
| Datum inter_lb | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3412 of file geo_ops.c.
References fb(), lseg_interpt_line(), PG_GETARG_BOX_P, PG_GETARG_LINE_P, PG_RETURN_BOOL, statlseg_construct(), and Point::x.
| Datum inter_sb | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3398 of file geo_ops.c.
References box_interpt_lseg(), fb(), PG_GETARG_BOX_P, PG_GETARG_LSEG_P, and PG_RETURN_BOOL.
| Datum inter_sl | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3321 of file geo_ops.c.
References fb(), lseg_interpt_line(), PG_GETARG_LINE_P, PG_GETARG_LSEG_P, and PG_RETURN_BOOL.
Definition at line 2806 of file geo_ops.c.
References fb(), get_float8_nan(), line_construct(), line_interpt_line(), line_invsl(), point_dt(), and result.
Referenced by close_pl(), dist_lp(), dist_pl(), and lseg_closept_line().
Definition at line 1129 of file geo_ops.c.
References fb(), float8_mi(), float8_mul(), and result.
Referenced by line_closept_point(), line_construct_pp(), line_in(), lseg_closept_point(), lseg_interpt_line(), and lseg_interpt_lseg().
| Datum line_construct_pp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1162 of file geo_ops.c.
References ereport, errcode(), errmsg, ERROR, fb(), line_construct(), palloc_object, PG_GETARG_POINT_P, PG_RETURN_LINE_P, point_eq_point(), point_sl(), and result.
Definition at line 3169 of file geo_ops.c.
References LINE::A, LINE::B, LINE::C, fb(), float8_mul(), float8_pl(), and FPzero.
Definition at line 996 of file geo_ops.c.
References LINE::A, LINE::B, LINE::C, DELIM, ereturn, errcode(), errmsg, fb(), RDELIM_L, single_decode(), and str.
Referenced by line_in().
| Datum line_distance | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1309 of file geo_ops.c.
References LINE::A, LINE::B, LINE::C, fb(), float8_div(), float8_mi(), float8_mul(), FPzero, line_interpt_line(), PG_GETARG_LINE_P, and PG_RETURN_FLOAT8.
| Datum line_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1241 of file geo_ops.c.
References LINE::A, LINE::B, LINE::C, fb(), float8_div(), float8_eq(), float8_mul(), FPeq(), FPzero, PG_GETARG_LINE_P, PG_RETURN_BOOL, and unlikely.
| Datum line_horizontal | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1229 of file geo_ops.c.
References LINE::A, FPzero, PG_GETARG_LINE_P, and PG_RETURN_BOOL.
| Datum line_in | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1025 of file geo_ops.c.
References LINE::A, LINE::B, ereturn, errcode(), errmsg, fb(), FPzero, LDELIM_L, line_construct(), line_decode(), lseg_sl(), palloc_object, path_decode(), PG_GETARG_CSTRING, PG_RETURN_LINE_P, PG_RETURN_NULL, point_eq_point(), and str.
| Datum line_interpt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1335 of file geo_ops.c.
References line_interpt_line(), palloc_object, PG_GETARG_LINE_P, PG_RETURN_NULL, PG_RETURN_POINT_P, and result.
Definition at line 1363 of file geo_ops.c.
References LINE::A, LINE::B, LINE::C, fb(), float8_div(), float8_mi(), float8_mul(), float8_pl(), FPeq(), FPzero, point_construct(), result, x, and y.
Referenced by line_closept_point(), line_distance(), line_interpt(), line_intersect(), line_parallel(), and lseg_interpt_line().
| Datum line_intersect | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1184 of file geo_ops.c.
References fb(), line_interpt_line(), PG_GETARG_LINE_P, and PG_RETURN_BOOL.
Definition at line 1294 of file geo_ops.c.
References LINE::A, LINE::B, float8_div(), FPzero, and get_float8_infinity().
Referenced by line_closept_point().
| Datum line_out | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1069 of file geo_ops.c.
References LINE::A, LINE::B, LINE::C, DELIM, fb(), float8out_internal(), LDELIM_L, PG_GETARG_LINE_P, PG_RETURN_CSTRING, psprintf(), and RDELIM_L.
| Datum line_parallel | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1193 of file geo_ops.c.
References fb(), line_interpt_line(), PG_GETARG_LINE_P, and PG_RETURN_BOOL.
| Datum line_perp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1202 of file geo_ops.c.
References LINE::A, LINE::B, float8_div(), float8_mul(), FPeq(), FPzero, PG_GETARG_LINE_P, and PG_RETURN_BOOL.
| Datum line_recv | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1084 of file geo_ops.c.
References LINE::A, LINE::B, buf, LINE::C, ereport, errcode(), errmsg, ERROR, fb(), FPzero, palloc_object, PG_GETARG_POINTER, PG_RETURN_LINE_P, and pq_getmsgfloat8().
| Datum line_send | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1107 of file geo_ops.c.
References LINE::A, LINE::B, buf, LINE::C, PG_GETARG_LINE_P, PG_RETURN_BYTEA_P, pq_begintypsend(), pq_endtypsend(), and pq_sendfloat8().
Definition at line 1280 of file geo_ops.c.
References LINE::A, LINE::B, float8_div(), FPzero, and get_float8_infinity().
Referenced by close_ls().
| Datum line_vertical | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1221 of file geo_ops.c.
References LINE::B, FPzero, PG_GETARG_LINE_P, and PG_RETURN_BOOL.
| Datum lseg_center | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2380 of file geo_ops.c.
References fb(), float8_div_safe(), float8_pl_safe(), palloc_object, PG_GETARG_LSEG_P, PG_RETURN_NULL, PG_RETURN_POINT_P, result, SOFT_ERROR_OCCURRED, x, and y.
Definition at line 3042 of file geo_ops.c.
References fb(), line_closept_point(), lseg_interpt_line(), and result.
Referenced by close_ls(), dist_ls(), dist_sl(), and lseg_closept_point().
Definition at line 2892 of file geo_ops.c.
References fb(), float8_lt(), lseg_closept_point(), lseg_interpt_lseg(), and result.
Referenced by box_closept_lseg(), close_lseg(), lseg_distance(), path_distance(), and poly_distance().
Definition at line 2854 of file geo_ops.c.
References fb(), line_construct(), lseg_closept_line(), point_dt(), point_invsl(), and result.
Referenced by box_closept_point(), box_interpt_lseg(), close_ps(), dist_ppath_internal(), dist_ppoly_internal(), dist_ps(), dist_sp(), and lseg_closept_lseg().
| Datum lseg_construct | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2192 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_POINT_P, PG_RETURN_LSEG_P, result, and statlseg_construct().
Definition at line 3191 of file geo_ops.c.
References fb(), FPeq(), and point_dt().
Referenced by lseg_inside_poly(), lseg_interpt_line(), lseg_interpt_lseg(), on_ps(), and touched_lseg_inside_poly().
Definition at line 5616 of file geo_ops.c.
References fb(), float8_mi(), float8_mul(), FPge(), FPgt(), FPle(), FPlt(), FPzero, POINT_ON_POLYGON, x, and y.
Referenced by point_inside().
| Datum lseg_distance | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2370 of file geo_ops.c.
References fb(), lseg_closept_lseg(), PG_GETARG_LSEG_P, and PG_RETURN_FLOAT8.
| Datum lseg_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2299 of file geo_ops.c.
References LSEG::p, PG_GETARG_LSEG_P, PG_RETURN_BOOL, and point_eq_point().
| Datum lseg_ge | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2349 of file geo_ops.c.
References fb(), FPge(), LSEG::p, PG_GETARG_LSEG_P, PG_RETURN_BOOL, and point_dt().
| Datum lseg_gt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2339 of file geo_ops.c.
References fb(), FPgt(), LSEG::p, PG_GETARG_LSEG_P, PG_RETURN_BOOL, and point_dt().
| Datum lseg_horizontal | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2290 of file geo_ops.c.
References fb(), FPeq(), PG_GETARG_LSEG_P, and PG_RETURN_BOOL.
| Datum lseg_in | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2127 of file geo_ops.c.
References fb(), palloc_object, path_decode(), PG_GETARG_CSTRING, PG_RETURN_LSEG_P, PG_RETURN_NULL, and str.
Definition at line 3950 of file geo_ops.c.
References a, b, CHECK_FOR_INTERRUPTS, check_stack_depth(), fb(), float8_div(), float8_pl(), i, lseg_contain_point(), lseg_inside_poly(), lseg_interpt_lseg(), LSEG::p, point_inside(), start, touched_lseg_inside_poly(), Point::x, and Point::y.
Referenced by lseg_inside_poly(), poly_contain_poly(), and touched_lseg_inside_poly().
| Datum lseg_interpt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2443 of file geo_ops.c.
References lseg_interpt_lseg(), palloc_object, PG_GETARG_LSEG_P, PG_RETURN_NULL, PG_RETURN_POINT_P, and result.
Referenced by interpt_pp().
Definition at line 2757 of file geo_ops.c.
References fb(), line_construct(), line_interpt_line(), lseg_contain_point(), lseg_sl(), point_eq_point(), and result.
Referenced by inter_lb(), inter_sl(), lseg_closept_line(), and lseg_interpt_lseg().
Definition at line 2420 of file geo_ops.c.
References fb(), line_construct(), lseg_contain_point(), lseg_interpt_line(), lseg_sl(), LSEG::p, and result.
Referenced by box_interpt_lseg(), lseg_closept_lseg(), lseg_inside_poly(), lseg_interpt(), lseg_intersect(), path_inter(), and poly_overlap_internal().
| Datum lseg_intersect | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2251 of file geo_ops.c.
References fb(), lseg_interpt_lseg(), PG_GETARG_LSEG_P, and PG_RETURN_BOOL.
Referenced by interpt_pp().
Definition at line 2228 of file geo_ops.c.
References fb(), and point_invsl().
Referenced by lseg_perp().
| Datum lseg_le | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2329 of file geo_ops.c.
References fb(), FPle(), LSEG::p, PG_GETARG_LSEG_P, PG_RETURN_BOOL, and point_dt().
| Datum lseg_length | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2235 of file geo_ops.c.
References fb(), PG_GETARG_LSEG_P, PG_RETURN_FLOAT8, and point_dt().
| Datum lseg_lt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2319 of file geo_ops.c.
References fb(), FPlt(), LSEG::p, PG_GETARG_LSEG_P, PG_RETURN_BOOL, and point_dt().
| Datum lseg_ne | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2309 of file geo_ops.c.
References LSEG::p, PG_GETARG_LSEG_P, PG_RETURN_BOOL, and point_eq_point().
| Datum lseg_out | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2143 of file geo_ops.c.
References fb(), path_encode(), PATH_OPEN, PG_GETARG_LSEG_P, and PG_RETURN_CSTRING.
| Datum lseg_parallel | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2261 of file geo_ops.c.
References FPeq(), lseg_sl(), PG_GETARG_LSEG_P, and PG_RETURN_BOOL.
| Datum lseg_perp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2273 of file geo_ops.c.
References FPeq(), lseg_invsl(), lseg_sl(), PG_GETARG_LSEG_P, and PG_RETURN_BOOL.
| Datum lseg_recv | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2154 of file geo_ops.c.
References buf, fb(), palloc_object, PG_GETARG_POINTER, PG_RETURN_LSEG_P, and pq_getmsgfloat8().
| Datum lseg_send | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2173 of file geo_ops.c.
References buf, fb(), PG_GETARG_LSEG_P, PG_RETURN_BYTEA_P, pq_begintypsend(), pq_endtypsend(), and pq_sendfloat8().
Definition at line 2218 of file geo_ops.c.
References fb(), and point_sl().
Referenced by close_ls(), close_lseg(), line_in(), lseg_interpt_line(), lseg_interpt_lseg(), lseg_parallel(), and lseg_perp().
| Datum lseg_vertical | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2282 of file geo_ops.c.
References fb(), FPeq(), PG_GETARG_LSEG_P, and PG_RETURN_BOOL.
Definition at line 3460 of file geo_ops.c.
References Assert, fb(), float8_gt(), float8_lt(), and i.
Referenced by circle_poly_internal(), path_poly(), poly_in(), and poly_recv().
| Datum on_pb | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3219 of file geo_ops.c.
References box_contain_point(), fb(), PG_GETARG_BOX_P, PG_GETARG_POINT_P, and PG_RETURN_BOOL.
| Datum on_pl | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3177 of file geo_ops.c.
References fb(), line_contain_point(), PG_GETARG_LINE_P, PG_GETARG_POINT_P, and PG_RETURN_BOOL.
| Datum on_ppath | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3249 of file geo_ops.c.
References a, b, PATH::closed, fb(), float8_pl(), FPeq(), i, PATH::npts, PATH::p, PG_GETARG_PATH_P, PG_GETARG_POINT_P, PG_RETURN_BOOL, point_dt(), and point_inside().
| Datum on_ps | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3199 of file geo_ops.c.
References fb(), lseg_contain_point(), PG_GETARG_LSEG_P, PG_GETARG_POINT_P, and PG_RETURN_BOOL.
| Datum on_sb | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3307 of file geo_ops.c.
References box_contain_lseg(), fb(), PG_GETARG_BOX_P, PG_GETARG_LSEG_P, and PG_RETURN_BOOL.
| Datum on_sl | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3284 of file geo_ops.c.
References fb(), line_contain_point(), PG_GETARG_LINE_P, PG_GETARG_LSEG_P, and PG_RETURN_BOOL.
|
static |
Definition at line 213 of file geo_ops.c.
References DELIM, ereturn, errcode(), errmsg, fb(), LDELIM, RDELIM, single_decode(), str, x, and y.
Referenced by circle_in(), path_decode(), and point_in().
|
static |
Definition at line 256 of file geo_ops.c.
References appendStringInfo(), fb(), float8out_internal(), pfree(), str, x, and y.
Referenced by circle_out(), and path_encode().
| Datum path_add | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4442 of file geo_ops.c.
References ereport, errcode(), errmsg, ERROR, fb(), i, palloc(), PG_GETARG_PATH_P, PG_RETURN_NULL, PG_RETURN_PATH_P, result, and SET_VARSIZE().
| Datum path_add_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4491 of file geo_ops.c.
References fb(), i, PATH::npts, PATH::p, PG_GETARG_PATH_P_COPY, PG_GETARG_POINT_P, PG_RETURN_PATH_P, and point_add_point().
| Datum path_area | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1429 of file geo_ops.c.
References PATH::closed, fb(), float8_div(), float8_mi(), float8_mul(), float8_pl(), i, j, PATH::npts, PATH::p, PG_GETARG_PATH_P, PG_RETURN_FLOAT8, PG_RETURN_NULL, Point::x, and Point::y.
| Datum path_close | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1676 of file geo_ops.c.
References PATH::closed, PG_GETARG_PATH_P_COPY, and PG_RETURN_PATH_P.
|
static |
Definition at line 267 of file geo_ops.c.
References DELIM, ereturn, errcode(), errmsg, fb(), i, LDELIM, LDELIM_EP, pair_decode(), RDELIM, RDELIM_EP, str, Point::x, and Point::y.
Referenced by box_in(), line_in(), lseg_in(), path_in(), and poly_in().
| Datum path_distance | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1781 of file geo_ops.c.
References fb(), float8_lt(), i, j, lseg_closept_lseg(), PG_GETARG_PATH_P, PG_RETURN_FLOAT8, PG_RETURN_NULL, and statlseg_construct().
| Datum path_div_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4534 of file geo_ops.c.
References fb(), i, PATH::npts, PATH::p, PG_GETARG_PATH_P_COPY, PG_GETARG_POINT_P, PG_RETURN_PATH_P, and point_div_point().
Referenced by box_out(), lseg_out(), path_out(), point_out(), and poly_out().
Definition at line 341 of file geo_ops.c.
References appendStringInfoChar(), DELIM, fb(), i, initStringInfo(), LDELIM, LDELIM_EP, pair_encode(), PATH_CLOSED, PATH_NONE, PATH_OPEN, RDELIM, RDELIM_EP, and str.
| Datum path_in | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1451 of file geo_ops.c.
References PATH::closed, PATH::dummy, ereturn, errcode(), errmsg, fb(), LDELIM, PATH::npts, PATH::p, pair_count(), palloc(), path_decode(), PG_GETARG_CSTRING, PG_RETURN_NULL, PG_RETURN_PATH_P, RDELIM, SET_VARSIZE(), and str.
| Datum path_inter | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1703 of file geo_ops.c.
References Assert, box_ov(), fb(), float8_max(), float8_min(), i, j, lseg_interpt_lseg(), PG_GETARG_PATH_P, PG_RETURN_BOOL, and statlseg_construct().
| Datum path_isclosed | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1651 of file geo_ops.c.
References PATH::closed, PG_GETARG_PATH_P, and PG_RETURN_BOOL.
| Datum path_isopen | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1659 of file geo_ops.c.
References PATH::closed, PG_GETARG_PATH_P, and PG_RETURN_BOOL.
| Datum path_length | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1843 of file geo_ops.c.
References PATH::closed, fb(), float8_pl(), i, PATH::npts, PATH::p, PG_GETARG_PATH_P, PG_RETURN_FLOAT8, point_dt(), and result.
| Datum path_mul_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4521 of file geo_ops.c.
References fb(), i, PATH::npts, PATH::p, PG_GETARG_PATH_P_COPY, PG_GETARG_POINT_P, PG_RETURN_PATH_P, and point_mul_point().
| Datum path_n_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1620 of file geo_ops.c.
References fb(), PG_GETARG_PATH_P, and PG_RETURN_BOOL.
| Datum path_n_ge | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1638 of file geo_ops.c.
References fb(), PG_GETARG_PATH_P, and PG_RETURN_BOOL.
| Datum path_n_gt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1611 of file geo_ops.c.
References fb(), PG_GETARG_PATH_P, and PG_RETURN_BOOL.
| Datum path_n_le | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1629 of file geo_ops.c.
References fb(), PG_GETARG_PATH_P, and PG_RETURN_BOOL.
| Datum path_n_lt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1602 of file geo_ops.c.
References fb(), PG_GETARG_PATH_P, and PG_RETURN_BOOL.
| Datum path_npoints | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1667 of file geo_ops.c.
References PATH::npts, PG_GETARG_PATH_P, and PG_RETURN_INT32.
| Datum path_open | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1686 of file geo_ops.c.
References PATH::closed, PG_GETARG_PATH_P_COPY, and PG_RETURN_PATH_P.
| Datum path_out | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1523 of file geo_ops.c.
References PATH::closed, PATH::npts, PATH::p, PATH_CLOSED, path_encode(), PATH_OPEN, PG_GETARG_PATH_P, and PG_RETURN_CSTRING.
| Datum path_poly | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4548 of file geo_ops.c.
References PATH::closed, ereturn, errcode(), errmsg, fb(), i, make_bound_box(), PATH::npts, PATH::p, palloc(), PG_GETARG_PATH_P, PG_RETURN_POLYGON_P, SET_VARSIZE(), Point::x, and Point::y.
| Datum path_recv | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1537 of file geo_ops.c.
References buf, PATH::closed, PATH::dummy, ereport, errcode(), errmsg, ERROR, fb(), i, PATH::npts, PATH::p, palloc(), PG_GETARG_POINTER, PG_RETURN_PATH_P, pq_getmsgbyte(), pq_getmsgfloat8(), pq_getmsgint(), SET_VARSIZE(), Point::x, and Point::y.
| Datum path_send | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1575 of file geo_ops.c.
References buf, PATH::closed, i, PATH::npts, PATH::p, PG_GETARG_PATH_P, PG_RETURN_BYTEA_P, pq_begintypsend(), pq_endtypsend(), pq_sendbyte(), pq_sendfloat8(), pq_sendint32(), Point::x, and Point::y.
| Datum path_sub_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4504 of file geo_ops.c.
References fb(), i, PATH::npts, PATH::p, PG_GETARG_PATH_P_COPY, PG_GETARG_POINT_P, PG_RETURN_PATH_P, and point_sub_point().
Definition at line 5676 of file geo_ops.c.
References fb(), i, j, and point_eq_point().
Referenced by poly_same().
| Datum point_above | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1970 of file geo_ops.c.
References fb(), FPgt(), PG_GETARG_POINT_P, and PG_RETURN_BOOL.
Referenced by getQuadrant(), spg_quad_inner_consistent(), and spg_quad_leaf_consistent().
| Datum point_add | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4212 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_POINT_P, PG_RETURN_POINT_P, point_add_point(), and result.
|
inlinestatic |
Definition at line 4195 of file geo_ops.c.
References fb(), float8_pl_safe(), point_construct(), result, SOFT_ERROR_OCCURRED, x, and y.
Referenced by box_add(), circle_add_pt(), path_add_pt(), point_add(), and poly_to_circle().
| Datum point_below | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1979 of file geo_ops.c.
References fb(), FPlt(), PG_GETARG_POINT_P, and PG_RETURN_BOOL.
Referenced by getQuadrant(), spg_quad_inner_consistent(), and spg_quad_leaf_consistent().
| Datum point_box | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4395 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_POINT_P, and PG_RETURN_BOX_P.
Definition at line 1935 of file geo_ops.c.
Referenced by construct_point(), line_interpt_line(), point_add_point(), point_div_point(), point_mul_point(), and point_sub_point().
| Datum point_distance | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2044 of file geo_ops.c.
References fb(), PG_GETARG_POINT_P, PG_RETURN_FLOAT8, and point_dt().
Referenced by pt_in_widget().
| Datum point_div | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4289 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_POINT_P, PG_RETURN_POINT_P, point_div_point(), and result.
Definition at line 4275 of file geo_ops.c.
References fb(), float8_div(), float8_mi(), float8_mul(), float8_pl(), point_construct(), and result.
Referenced by box_div(), circle_div_pt(), path_div_pt(), and point_div().
Definition at line 2053 of file geo_ops.c.
References fb(), float8_mi_safe(), SOFT_ERROR_OCCURRED, unlikely, x, and y.
Referenced by box_circle(), box_distance(), circle_contain(), circle_contain_pt(), circle_contained(), circle_distance(), circle_overlap(), dist_cpoint(), dist_pc(), line_closept_point(), lseg_closept_point(), lseg_contain_point(), lseg_ge(), lseg_gt(), lseg_le(), lseg_length(), lseg_lt(), on_ppath(), path_length(), point_distance(), poly_to_circle(), and pt_contained_circle().
| Datum point_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2006 of file geo_ops.c.
References fb(), PG_GETARG_POINT_P, PG_RETURN_BOOL, and point_eq_point().
Referenced by spg_quad_leaf_consistent().
Definition at line 2028 of file geo_ops.c.
References fb(), float8_eq(), FPeq(), and unlikely.
Referenced by box_same(), circle_same(), line_construct_pp(), line_in(), lseg_eq(), lseg_interpt_line(), lseg_ne(), plist_same(), point_eq(), point_ne(), and touched_lseg_inside_poly().
| Datum point_horiz | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1997 of file geo_ops.c.
References fb(), FPeq(), PG_GETARG_POINT_P, and PG_RETURN_BOOL.
Referenced by getQuadrant().
| Datum point_in | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1882 of file geo_ops.c.
References fb(), pair_decode(), palloc_object, PG_GETARG_CSTRING, PG_RETURN_POINT_P, and str.
Definition at line 5558 of file geo_ops.c.
References Assert, fb(), float8_mi(), i, lseg_crossing(), POINT_ON_POLYGON, x, Point::x, y, and Point::y.
Referenced by dist_ppoly_internal(), lseg_inside_poly(), on_ppath(), poly_contain_pt(), poly_overlap_internal(), and pt_contained_poly().
Definition at line 2101 of file geo_ops.c.
References fb(), float8_div(), float8_mi(), FPeq(), and get_float8_infinity().
Referenced by lseg_closept_point(), and lseg_invsl().
| Datum point_left | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1952 of file geo_ops.c.
References fb(), FPlt(), PG_GETARG_POINT_P, and PG_RETURN_BOOL.
Referenced by getQuadrant(), spg_quad_inner_consistent(), and spg_quad_leaf_consistent().
| Datum point_mul | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4260 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_POINT_P, PG_RETURN_POINT_P, point_mul_point(), and result.
Definition at line 4250 of file geo_ops.c.
References fb(), float8_mi(), float8_mul(), float8_pl(), point_construct(), and result.
Referenced by box_mul(), circle_mul_pt(), path_mul_pt(), and point_mul().
| Datum point_ne | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2015 of file geo_ops.c.
References fb(), PG_GETARG_POINT_P, PG_RETURN_BOOL, and point_eq_point().
| Datum point_out | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1893 of file geo_ops.c.
References fb(), path_encode(), PATH_NONE, PG_GETARG_POINT_P, and PG_RETURN_CSTRING.
| Datum point_recv | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1904 of file geo_ops.c.
References buf, fb(), palloc_object, PG_GETARG_POINTER, PG_RETURN_POINT_P, and pq_getmsgfloat8().
| Datum point_right | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1961 of file geo_ops.c.
References fb(), FPgt(), PG_GETARG_POINT_P, and PG_RETURN_BOOL.
Referenced by getQuadrant(), spg_quad_inner_consistent(), and spg_quad_leaf_consistent().
| Datum point_send | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1919 of file geo_ops.c.
References buf, fb(), PG_GETARG_POINT_P, PG_RETURN_BYTEA_P, pq_begintypsend(), pq_endtypsend(), and pq_sendfloat8().
Definition at line 2085 of file geo_ops.c.
References fb(), float8_div(), float8_mi(), FPeq(), and get_float8_infinity().
Referenced by line_construct_pp(), lseg_sl(), and point_slope().
| Datum point_slope | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2070 of file geo_ops.c.
References fb(), PG_GETARG_POINT_P, PG_RETURN_FLOAT8, and point_sl().
| Datum point_sub | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4235 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_POINT_P, PG_RETURN_POINT_P, point_sub_point(), and result.
Definition at line 4227 of file geo_ops.c.
References fb(), float8_mi(), point_construct(), and result.
Referenced by box_sub(), circle_sub_pt(), path_sub_pt(), and point_sub().
| Datum point_vert | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1988 of file geo_ops.c.
References fb(), FPeq(), PG_GETARG_POINT_P, and PG_RETURN_BOOL.
Referenced by getQuadrant().
| Datum points_box | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4310 of file geo_ops.c.
References box_construct(), fb(), palloc_object, PG_GETARG_POINT_P, PG_RETURN_BOX_P, and result.
| Datum poly_above | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3755 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and result.
| Datum poly_below | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3709 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and result.
| Datum poly_box | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4618 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_POLYGON_P, and PG_RETURN_BOX_P.
| Datum poly_center | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4599 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_POLYGON_P, PG_RETURN_NULL, PG_RETURN_POINT_P, poly_to_circle(), result, and SOFT_ERROR_OCCURRED.
| Datum poly_circle | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5523 of file geo_ops.c.
References fb(), palloc_object, PG_GETARG_POLYGON_P, PG_RETURN_CIRCLE_P, PG_RETURN_NULL, poly_to_circle(), result, and SOFT_ERROR_OCCURRED.
| Datum poly_contain | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4050 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, poly_contain_poly(), and result.
Definition at line 4022 of file geo_ops.c.
References Assert, box_contain_box(), fb(), i, lseg_inside_poly(), and LSEG::p.
Referenced by poly_contain(), and poly_contained().
| Datum poly_contain_pt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4092 of file geo_ops.c.
References fb(), PG_GETARG_POINT_P, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and point_inside().
Referenced by gist_point_consistent().
| Datum poly_contained | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4072 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, poly_contain_poly(), and result.
| Datum poly_distance | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4111 of file geo_ops.c.
References fb(), float8_lt(), i, j, lseg_closept_lseg(), PG_GETARG_POLYGON_P, PG_RETURN_FLOAT8, PG_RETURN_NULL, poly_overlap_internal(), and statlseg_construct().
| Datum poly_in | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3499 of file geo_ops.c.
References ereturn, errcode(), errmsg, fb(), make_bound_box(), pair_count(), palloc0(), path_decode(), PG_GETARG_CSTRING, PG_RETURN_NULL, PG_RETURN_POLYGON_P, SET_VARSIZE(), and str.
| Datum poly_left | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3617 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and result.
| Datum poly_npoints | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4590 of file geo_ops.c.
References fb(), PG_GETARG_POLYGON_P, and PG_RETURN_INT32.
| Datum poly_out | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3543 of file geo_ops.c.
References fb(), PATH_CLOSED, path_encode(), PG_GETARG_POLYGON_P, and PG_RETURN_CSTRING.
| Datum poly_overabove | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3778 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and result.
| Datum poly_overbelow | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3732 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and result.
| Datum poly_overlap | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3885 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, poly_overlap_internal(), and result.
Definition at line 3828 of file geo_ops.c.
References Assert, box_ov(), fb(), lseg_interpt_lseg(), point_inside(), and result.
Referenced by poly_distance(), and poly_overlap().
| Datum poly_overleft | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3640 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and result.
| Datum poly_overright | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3686 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and result.
| Datum poly_path | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4664 of file geo_ops.c.
References PATH::closed, PATH::dummy, fb(), i, PATH::npts, PATH::p, palloc(), PG_GETARG_POLYGON_P, PG_RETURN_PATH_P, SET_VARSIZE(), Point::x, and Point::y.
| Datum poly_recv | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3559 of file geo_ops.c.
References buf, ereport, errcode(), errmsg, ERROR, fb(), i, make_bound_box(), palloc0(), PG_GETARG_POINTER, PG_RETURN_POLYGON_P, pq_getmsgfloat8(), pq_getmsgint(), and SET_VARSIZE().
| Datum poly_right | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3663 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and result.
| Datum poly_same | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3804 of file geo_ops.c.
References fb(), PG_FREE_IF_COPY, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, plist_same(), and result.
| Datum poly_send | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3594 of file geo_ops.c.
References buf, fb(), i, PG_GETARG_POLYGON_P, PG_RETURN_BYTEA_P, pq_begintypsend(), pq_endtypsend(), pq_sendfloat8(), and pq_sendint32().
Definition at line 5480 of file geo_ops.c.
References Assert, fb(), float8_div_safe(), float8_pl_safe(), i, point_add_point(), point_dt(), result, SOFT_ERROR_OCCURRED, and x.
Referenced by poly_center(), and poly_circle().
| Datum pt_contained_circle | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5215 of file geo_ops.c.
References fb(), PG_GETARG_CIRCLE_P, PG_GETARG_POINT_P, PG_RETURN_BOOL, and point_dt().
| Datum pt_contained_poly | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4101 of file geo_ops.c.
References fb(), PG_GETARG_POINT_P, PG_GETARG_POLYGON_P, PG_RETURN_BOOL, and point_inside().
|
static |
Definition at line 195 of file geo_ops.c.
References fb(), float8in_internal(), SOFT_ERROR_OCCURRED, and x.
Referenced by circle_in(), line_decode(), and pair_decode().
|
static |
Definition at line 204 of file geo_ops.c.
References appendStringInfoString(), fb(), float8out_internal(), pfree(), str, and x.
Referenced by circle_out().
Definition at line 2205 of file geo_ops.c.
References fb().
Referenced by box_closept_lseg(), box_closept_point(), box_diagonal(), box_interpt_lseg(), dist_ppath_internal(), inter_lb(), lseg_construct(), path_distance(), path_inter(), and poly_distance().
|
static |
Definition at line 3914 of file geo_ops.c.
References a, b, fb(), lseg_contain_point(), lseg_inside_poly(), LSEG::p, point_eq_point(), and start.
Referenced by lseg_inside_poly().