GISarabia.org
PostGIS › الدليل الرسمي › 7. مرجع PostGIS › 7.5. دوال تحرير الأشكال الهندسية
PostGIS 3.6 · Official Manual · ترجمة عربية

ST_RemoveRepeatedPoints

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

الاسم

ST_RemoveRepeatedPoints — تُعيد نسخة من الشكل الهندسي بعد إزالة النقاط المكررة.

المختصر

geometry ST_RemoveRepeatedPoints(geometry geom, float8 tolerance = 0.0);

الوصف

تُعيد نسخة من الشكل الهندسي المُعطى بعد إزالة النقاط المكررة المتتالية. تعالج الدالة فقط الخطوط (والخطوط المتعددة) والمضلعات (والمضلعات المتعددة) وMultiPoint، لكن يمكن استدعاؤها مع أي نوع من الأشكال. تُعالج عناصر GeometryCollection كلٌّ على حدة. ويُحافظ على نقطتي طرفي الخطوط.

إذا مُرِّر معامل tolerance غير صفري، فتُعدّ الرؤوس الواقعة ضمن مسافة التسامح بعضها من بعض مكررة. تُحسب المسافة في بعدين (المستوى XY).

حُسّنت في: 3.2.0

متاحة منذ: 2.2.0

تدعم هذه الدالة الأسطح متعددة الوجوه (Polyhedral surfaces).

تدعم هذه الدالة الأبعاد الثلاثية ولا تُسقط قيمة Z.

أمثلة

SELECT ST_AsText( ST_RemoveRepeatedPoints( 'MULTIPOINT ((1 1), (2 2), (3 3), (2 2))'));
-------------------------
 MULTIPOINT(1 1,2 2,3 3)
SELECT ST_AsText( ST_RemoveRepeatedPoints( 'LINESTRING (0 0, 0 0, 1 1, 0 0, 1 1, 2 2)'));
---------------------------------
 LINESTRING(0 0,1 1,0 0,1 1,2 2)

مثال: تُعالج عناصر المجموعة كلٌّ على حدة.

SELECT ST_AsText( ST_RemoveRepeatedPoints( 'GEOMETRYCOLLECTION (LINESTRING (1 1, 2 2, 2 2, 3 3), POINT (4 4), POINT (4 4), POINT (5 5))'));
------------------------------------------------------------------------------
 GEOMETRYCOLLECTION(LINESTRING(1 1,2 2,3 3),POINT(4 4),POINT(4 4),POINT(5 5))

مثال: إزالة النقاط المكررة مع تسامح مسافة.

SELECT ST_AsText( ST_RemoveRepeatedPoints( 'LINESTRING (0 0, 0 0, 1 1, 5 5, 1 1, 2 2)', 2));
-------------------------
 LINESTRING(0 0,5 5,2 2)

انظر أيضًا

ST_Simplify