PostGIS
2.5.7dev-r@@SVN_REVISION@@
|
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include "../postgis_config.h"
#include "lwgeom_log.h"
#include "liblwgeom_internal.h"
Go to the source code of this file.
Functions | |
LWGEOM * | pta_unstroke (const POINTARRAY *points, int srid) |
LWGEOM * | lwline_unstroke (const LWLINE *line) |
LWGEOM * | lwpolygon_unstroke (const LWPOLY *poly) |
LWGEOM * | lwmline_unstroke (const LWMLINE *mline) |
LWGEOM * | lwmpolygon_unstroke (const LWMPOLY *mpoly) |
LWGEOM * | lwcollection_unstroke (const LWCOLLECTION *c) |
LWGEOM * | lwgeom_unstroke (const LWGEOM *geom) |
int | lwgeom_has_arc (const LWGEOM *geom) |
static double | interpolate_arc (double angle, double a1, double a2, double a3, double zm1, double zm2, double zm3) |
static int | lwarc_linearize (POINTARRAY *to, const POINT4D *p1, const POINT4D *p2, const POINT4D *p3, double tol, LW_LINEARIZE_TOLERANCE_TYPE tolerance_type, int flags) |
Segmentize an arc. More... | |
static LWLINE * | lwcircstring_linearize (const LWCIRCSTRING *icurve, double tol, LW_LINEARIZE_TOLERANCE_TYPE tolerance_type, int flags) |
static LWLINE * | lwcompound_linearize (const LWCOMPOUND *icompound, double tol, LW_LINEARIZE_TOLERANCE_TYPE tolerance_type, int flags) |
LWLINE * | lwcompound_stroke (const LWCOMPOUND *icompound, uint32_t perQuad) |
static LWPOLY * | lwcurvepoly_linearize (const LWCURVEPOLY *curvepoly, double tol, LW_LINEARIZE_TOLERANCE_TYPE tolerance_type, int flags) |
LWPOLY * | lwcurvepoly_stroke (const LWCURVEPOLY *curvepoly, uint32_t perQuad) |
static LWMLINE * | lwmcurve_linearize (const LWMCURVE *mcurve, double tol, LW_LINEARIZE_TOLERANCE_TYPE type, int flags) |
static LWMPOLY * | lwmsurface_linearize (const LWMSURFACE *msurface, double tol, LW_LINEARIZE_TOLERANCE_TYPE type, int flags) |
static LWCOLLECTION * | lwcollection_linearize (const LWCOLLECTION *collection, double tol, LW_LINEARIZE_TOLERANCE_TYPE type, int flags) |
LWGEOM * | lwcurve_linearize (const LWGEOM *geom, double tol, LW_LINEARIZE_TOLERANCE_TYPE type, int flags) |
LWGEOM * | lwgeom_stroke (const LWGEOM *geom, uint32_t perQuad) |
static double | lw_arc_angle (const POINT2D *a, const POINT2D *b, const POINT2D *c) |
Return ABC angle in radians TODO: move to lwalgorithm. More... | |
static int | pt_continues_arc (const POINT4D *a1, const POINT4D *a2, const POINT4D *a3, const POINT4D *b) |
Returns LW_TRUE if b is on the arc formed by a1/a2/a3, but not within that portion already described by a1/a2/a3. More... | |
static LWGEOM * | linestring_from_pa (const POINTARRAY *pa, int srid, int start, int end) |
static LWGEOM * | circstring_from_pa (const POINTARRAY *pa, int srid, int start, int end) |
static LWGEOM * | geom_from_pa (const POINTARRAY *pa, int srid, int is_arc, int start, int end) |