GetFaceByPoint — Hitta en yta som skär en given punkt.
bigint GetFaceByPoint(
varchar atopology, geometry apoint, float8 tol1)
;
Hittar en yta som refereras av en punkt, med given tolerans.
Funktionen letar effektivt efter en yta som skär en cirkel med punkten som centrum och toleransen som radie.
Om ingen yta korsar den angivna sökplatsen returneras 0 (universell yta).
Om mer än en yta korsar den plats där frågan ställs uppstår ett undantag.
Tillgänglighet: 2.0.0
Förbättrad: 3.2.0 effektivare implementering och tydligare kontrakt, slutar fungera med ogiltiga topologier.
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