الاسم
ValidateTopology — تُعيد مجموعة من كائنات validatetopology_returntype تفصّل المشكلات في الطوبولوجيا.
المختصر
setof validatetopology_returntype ValidateTopology(varchar toponame, geometry bbox);
الوصف
تُعيد مجموعة من كائنات validatetopology_returntype تفصّل المشكلات في الطوبولوجيا، مع إمكانية قصر الفحص على المنطقة المحددة بالوسيط bbox.
فيما يلي قائمة بالأخطاء المحتملة ومعانيها وما تمثّله المعرّفات المُعادة:
| الخطأ | id1 | id2 | المعنى |
|---|---|---|---|
| coincident nodes (عقد متطابقة) | معرّف العقدة الأولى. | معرّف العقدة الثانية. | عقدتان لهما الشكل الهندسي نفسه. |
| edge crosses node (حافة تعبر عقدة) | معرّف الحافة. | معرّف العقدة. | توجد عقدة داخل حافة. انظر ST_Relate. |
| invalid edge (حافة غير صالحة) | معرّف الحافة. | الشكل الهندسي لحافة غير صالح. انظر ST_IsValid. | |
| edge not simple (حافة غير بسيطة) | معرّف الحافة. | الشكل الهندسي لحافة يتقاطع مع نفسه. انظر ST_IsSimple. | |
| edge crosses edge (حافة تعبر حافة) | معرّف الحافة الأولى. | معرّف الحافة الثانية. | حافتان بينهما تقاطع داخلي. انظر ST_Relate. |
| edge start node geometry mismatch (عدم تطابق الشكل الهندسي لعقدة بداية الحافة) | معرّف الحافة. | معرّف عقدة البداية المشار إليها. | الشكل الهندسي للعقدة المشار إليها كعقدة بداية لحافة لا يطابق النقطة الأولى من الشكل الهندسي للحافة. انظر ST_StartPoint. |
| edge end node geometry mismatch (عدم تطابق الشكل الهندسي لعقدة نهاية الحافة) | معرّف الحافة. | معرّف عقدة النهاية المشار إليها. | الشكل الهندسي للعقدة المشار إليها كعقدة نهاية لحافة لا يطابق النقطة الأخيرة من الشكل الهندسي للحافة. انظر ST_EndPoint. |
| face without edges (وجه بلا حواف) | معرّف الوجه اليتيم. | لا توجد حافة تشير إلى وجه موجود على أيٍّ من جانبيها (left_face، right_face). | |
| face has no rings (وجه بلا حلقات) | معرّف الوجه المعرّف جزئيًا. | الحواف التي تشير إلى وجه على جانبيها لا تشكّل حلقة. | |
| face has wrong mbr (وجه بمستطيل محيط أدنى خاطئ) | معرّف الوجه ذي ذاكرة mbr المؤقتة الخاطئة. | المستطيل المحيط الأدنى لوجه لا يطابق المستطيل المحيط الأدنى لمجموعة الحواف التي تشير إلى هذا الوجه على جانبيها. | |
| hole not in advertised face (ثقب ليس في الوجه المُعلَن) | المعرّف ذو الإشارة لحافة، يحدد الحلقة. انظر GetRingEdges. | حلقة من الحواف تشير إلى وجه على جانبها الخارجي محتواة في وجه مختلف. | |
| not-isolated node has not- containing_face (عقدة غير معزولة لها containing_face) | معرّف العقدة سيئة التعريف. | عقدة مُبلَّغ عنها بأنها على حدود حافة واحدة أو أكثر تشير إلى وجه حاوٍ. | |
| isolated node has containing_face (عقدة معزولة لها containing_face) | معرّف العقدة سيئة التعريف. | عقدة غير مُبلَّغ عنها بأنها على حدود أي حافة تفتقر إلى الإشارة إلى وجه حاوٍ. | |
| isolated node has wrong containing_face (عقدة معزولة لها containing_face خاطئ) | معرّف العقدة الممثَّلة بشكل خاطئ. | عقدة غير مُبلَّغ عنها بأنها على حدود أي حافة تشير إلى وجه حاوٍ ليس هو الوجه الذي يحتويها فعلًا. انظر GetFaceContainingPoint. | |
| invalid next_right_edge (قيمة next_right_edge غير صالحة) | معرّف الحافة الممثَّلة بشكل خاطئ. | المعرّف ذو الإشارة للحافة التي ينبغي الإشارة إليها كالحافة اليمنى التالية. | الحافة المشار إليها كالحافة التالية التي تُصادَف عند السير على الجانب الأيمن من حافة ما خاطئة. |
| invalid next_left_edge (قيمة next_left_edge غير صالحة) | معرّف الحافة الممثَّلة بشكل خاطئ. | المعرّف ذو الإشارة للحافة التي ينبغي الإشارة إليها كالحافة اليسرى التالية. | الحافة المشار إليها كالحافة التالية التي تُصادَف عند السير على الجانب الأيسر من حافة ما خاطئة. |
| mixed face labeling in ring (تسمية أوجه متضاربة في الحلقة) | المعرّف ذو الإشارة لحافة، يحدد الحلقة. انظر GetRingEdges. | تشير الحواف في حلقة ما إلى أوجه متضاربة على جانب السير. ويُعرف هذا أيضًا باسم "تعارض موقع الجانب" (Side Location Conflict). | |
| non-closed ring (حلقة غير مغلقة) | المعرّف ذو الإشارة لحافة، يحدد الحلقة. انظر GetRingEdges. | حلقة من الحواف تتكوّن باتباع الخاصيتين next_left_edge/next_right_edge تبدأ وتنتهي عند عقدتين مختلفتين. | |
| face has multiple shells (وجه له أكثر من غلاف) | معرّف الوجه المتنازَع عليه. | المعرّف ذو الإشارة لحافة، يحدد الحلقة. انظر GetRingEdges. | أكثر من حلقة حواف واحدة تشير إلى الوجه نفسه في داخلها. |
متاحة منذ: 1.0.0
حُسّنت في: 2.0.0 كشف أكثر كفاءة لعبور الحواف، وإصلاحات للنتائج الإيجابية الخاطئة التي كانت موجودة في الإصدارات السابقة.
تغيّرت في: 2.2.0 تم تبديل قيمتي id1 وid2 في الخطأ 'edge crosses node' لتتسق مع وصف الخطأ.
تغيّرت في: 3.2.0 أُضيف الوسيط الاختياري bbox، وتُجرى فحوص تسمية الأوجه وربط الحواف.
أمثلة
SELECT * FROM topology.ValidateTopology('ma_topo');
error | id1 | id2
-------------------+-----+-----
face without edges | 1 |