GetFaceByPoint
Prev | 10.7. Topology Accessors | Next

## Name

GetFaceByPoint — Finds face intersecting a given point.

## Synopsis

`integer GetFaceByPoint(`varchar atopology, geometry apoint, float8 tol1`)`;

## Description

Finds a face referenced by a Point, with given tolerance.

The function will effectively look for a face intersecting a circle having the point as center and the tolerance as radius.

If no face intersects the given query location, 0 is returned (universal face).

If more than one face intersect the query location an exception is thrown.

Availability: 2.0.0

Enhanced: 3.2.0 more efficient implementation and clearer contract, stops working with invalid topologies.

## Examples

    SELECT topology.GetFaceByPoint('ma_topo',geom, 10) As with1mtol, topology.GetFaceByPoint('ma_topo',geom,0) As withnotol
    	FROM ST_GeomFromEWKT('POINT(234604.6 899382.0)') As geom;

    	 with1mtol | withnotol
    	-----------+-----------
    			 1 |         0

    SELECT topology.GetFaceByPoint('ma_topo',geom, 1) As nearnode
    	FROM ST_GeomFromEWKT('POINT(227591.9 893900.4)') As geom;

    -- get error --
    ERROR:  Two or more faces found

## See Also

GetFaceContainingPoint, AddFace, GetNodeByPoint, GetEdgeByPoint

Prev | Up | Next
GetEdgeByPoint | Home | GetFaceContainingPoint