الاسم
ST_DumpRings — تُعيد مجموعة من صفوف geometry_dump للحلقات الخارجية والداخلية لمضلع.
المختصر
geometry_dump[] ST_DumpRings(geometry a_polygon);
الوصف
دالة مُعيدة لمجموعة (SRF) تستخرج حلقات المضلع. تُعيد مجموعة من صفوف geometry_dump، يحتوي كل منها على شكل هندسي (الحقل geom) ومصفوفة أعداد صحيحة (الحقل path).
يحتوي الحقل geom على كل حلقة بوصفها POLYGON. والحقل path مصفوفة أعداد صحيحة طولها 1 تحتوي على فهرس حلقة المضلع. للحلقة الخارجية (الغلاف) الفهرس 0، وللحلقات الداخلية (الثقوب) الفهارس 1 فما فوق.
|
|
|
تعمل هذه الدالة مع أشكال POLYGON فقط، ولا تعمل مع MULTIPOLYGONS |
متاحة منذ: PostGIS 1.1.3. تتطلب PostgreSQL 7.3 أو أحدث.
تدعم هذه الدالة الأبعاد الثلاثية ولا تُسقط قيمة Z.
أمثلة
الصيغة العامة للاستعلام.
SELECT polyTable.field1, polyTable.field1,
(ST_DumpRings(polyTable.geom)).geom As geom
FROM polyTable;
مضلع بثقب واحد.
SELECT path, ST_AsEWKT(geom) As geom
FROM ST_DumpRings(
ST_GeomFromEWKT('POLYGON((-8149064 5133092 1,-8149064 5132986 1,-8148996 5132839 1,-8148972 5132767 1,-8148958 5132508 1,-8148941 5132466 1,-8148924 5132394 1,
-8148903 5132210 1,-8148930 5131967 1,-8148992 5131978 1,-8149237 5132093 1,-8149404 5132211 1,-8149647 5132310 1,-8149757 5132394 1,
-8150305 5132788 1,-8149064 5133092 1),
(-8149362 5132394 1,-8149446 5132501 1,-8149548 5132597 1,-8149695 5132675 1,-8149362 5132394 1))')
) as foo;
path | geom
----------------------------------------------------------------------------------------------------------------
{0} | POLYGON((-8149064 5133092 1,-8149064 5132986 1,-8148996 5132839 1,-8148972 5132767 1,-8148958 5132508 1,
| -8148941 5132466 1,-8148924 5132394 1,
| -8148903 5132210 1,-8148930 5131967 1,
| -8148992 5131978 1,-8149237 5132093 1,
| -8149404 5132211 1,-8149647 5132310 1,-8149757 5132394 1,-8150305 5132788 1,-8149064 5133092 1))
{1} | POLYGON((-8149362 5132394 1,-8149446 5132501 1,
| -8149548 5132597 1,-8149695 5132675 1,-8149362 5132394 1))