GISarabia.org
PostGIS › الدليل الرسمي › 9. الطوبولوجيا › 9.7. دوال الوصول إلى الطوبولوجيا
PostGIS 3.6 · Official Manual · ترجمة عربية

GetFaceByPoint

الصفحة الأصلية بالإنجليزية postgis.net ↗

الاسم

GetFaceByPoint — تبحث عن الوجه الذي يتقاطع مع نقطة معطاة.

المختصر

bigint GetFaceByPoint(varchar atopology, geometry apoint, float8 tol1);

الوصف

تبحث عن وجه تشير إليه نقطة، ضمن تسامح معطاة.

تبحث الدالة فعليًا عن وجه يتقاطع مع دائرة مركزها النقطة ونصف قطرها التسامح.

إذا لم يتقاطع أي وجه مع موقع الاستعلام المعطى، تُعاد القيمة 0 (الوجه الكوني).

إذا تقاطع أكثر من وجه مع موقع الاستعلام فسيُطلق استثناء.

متاحة منذ: 2.0.0

حُسّنت في: 3.2.0 تنفيذ أكثر كفاءة وعقد استخدام أوضح، ولم تعد تعمل مع الطوبولوجيات غير الصالحة.

أمثلة

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