فصل 7. مرجع PostGIS
- 7.1. أنواع بيانات PostGIS: Geometry وGeography وBox
- 7.2. دوال إدارة الجداول
- 7.3. دوال إنشاء الأشكال الهندسية
- 7.4. دوال الوصول إلى الأشكال الهندسية
- 7.5. دوال تحرير الأشكال الهندسية
- 7.6. التحقق من صلاحية الأشكال الهندسية
- 7.7. دوال النظام المرجعي المكاني
- 7.8. إدخال الأشكال الهندسية
- 7.9. إخراج الأشكال الهندسية
- 7.10. العوامل
- 7.11. العلاقات المكانية
- 7.12. دوال القياس
- 7.13. دوال التراكب
- 7.14. معالجة الأشكال الهندسية
- 7.15. التغطيات
- 7.16. التحويلات التآلفية (Affine)
- 7.17. دوال العنقدة (Clustering)
- 7.18. دوال المستطيل المحيط
- 7.19. الإسناد الخطي
- 7.20. دوال المسارات (Trajectory)
- 7.21. دوال الإصدار
- 7.22. المتغيرات المخصصة الموحّدة الكبرى (GUCs)
- 7.23. دوال استكشاف الأخطاء
الدوال الواردة أدناه هي التي يُرجّح أن يحتاجها مستخدم PostGIS. وهناك دوال أخرى تُعد دوال دعم ضرورية لكائنات PostGIS لكنها لا تفيد المستخدم العام.
|
|
|
بدأ PostGIS الانتقال من اصطلاح التسمية القائم إلى اصطلاح يتمحور حول SQL-MM. ونتيجة لذلك، أُعيدت تسمية معظم الدوال التي تعرفها وتحبها باستخدام البادئة القياسية للنوع المكاني (ST). لا تزال الدوال السابقة متاحة، لكنها غير مدرجة في هذا المستند حيث توجد دوال محدّثة مكافئة لها. والدوال التي لا تبدأ بـ ST_ وغير المدرجة في هذا التوثيق مُهملة وستُزال في إصدار مستقبلي، لذا توقّف عن استخدامها. |
7.1. أنواع بيانات PostGIS: Geometry وGeography وBox
يسرد هذا القسم أنواع بيانات PostgreSQL المخصصة التي تثبّتها PostGIS لتمثيل البيانات المكانية.
يصف كل نوع بيانات سلوك التحويل بين الأنواع (casting) الخاص به. يحوّل تحويل النوع قيمًا من نوع بيانات إلى نوع آخر. تسمح PostgreSQL بتعريف سلوك التحويل للأنواع المخصصة، إلى جانب الدوال المستخدمة لتحويل قيم الأنواع. يمكن أن يكون للتحويلات سلوك تلقائي، يتيح التحويل التلقائي لوسيط الدالة إلى نوع تدعمه الدالة.
بعض التحويلات ذات سلوك صريح، أي يجب تحديد التحويل باستخدام الصيغة CAST(myval As sometype) أو myval::sometype. يتجنّب التحويل الصريح مشكلة التحويلات الملتبسة التي قد تحدث عند استخدام دالة مُحمَّلة بأكثر من تعريف (overloaded) لا تدعم نوعًا معيّنًا. على سبيل المثال، قد تقبل دالة box2d أو box3d لكن لا تقبل geometry. ولأن geometry له تحويل تلقائي إلى كلا نوعي الصندوق، ينتج عن ذلك خطأ "دالة ملتبسة" (ambiguous function). لمنع الخطأ استخدم تحويلًا صريحًا إلى نوع الصندوق المطلوب.
يمكن تحويل جميع أنواع البيانات إلى text، لذا لا حاجة إلى تحديد ذلك صراحةً.
- box2d — النوع الذي يمثّل مستطيلًا محيطًا ثنائي الأبعاد.
- box3d — النوع الذي يمثّل مستطيلًا محيطًا ثلاثي الأبعاد.
- geometry — النوع الذي يمثّل المعالم المكانية في أنظمة الإحداثيات المستوية.
- geometry_dump — نوع مركّب يُستخدم لوصف أجزاء شكل هندسي معقّد.
- geography — النوع الذي يمثّل المعالم المكانية في أنظمة الإحداثيات الجيوديسية (الإهليلجية).
7.2. دوال إدارة الجداول
تساعد هذه الدوال في تعريف الجداول التي تحتوي على أعمدة geometry.
- AddGeometryColumn — تضيف عمود geometry إلى جدول موجود.
- DropGeometryColumn — تحذف عمود geometry من جدول مكاني.
- DropGeometryTable — تحذف جدولًا وجميع مراجعه في geometry_columns.
- Find_SRID — تُعيد SRID المعرّف لعمود geometry.
- Populate_Geometry_Columns — تضمن تعريف أعمدة geometry بمُعدِّلات نوع أو احتواءها على قيود مكانية مناسبة.
- UpdateGeometrySRID — تحدّث SRID لجميع المعالم في عمود geometry، والبيانات الوصفية للجدول.
7.3. دوال إنشاء الأشكال الهندسية
- ST_Collect — تُنشئ مجموعة أشكال GeometryCollection أو شكلًا هندسيًا متعددًا Multi* من مجموعة أشكال هندسية.
- ST_LineFromMultiPoint — تُنشئ خطًا (LineString) من شكل هندسي MultiPoint.
- ST_MakeEnvelope — تُنشئ مضلعًا مستطيلًا من الإحداثيات الدنيا والقصوى.
- ST_MakeLine — تُنشئ خطًا (LineString) من أشكال هندسية من نوع Point أو MultiPoint أو LineString.
- ST_MakePoint — تُنشئ نقطة ثنائية الأبعاد أو ثلاثية الأبعاد (3DZ) أو رباعية الأبعاد.
- ST_MakePointM — تُنشئ نقطة من قيم X وY وM.
- ST_MakePolygon — تُنشئ مضلعًا من غلاف خارجي وقائمة اختيارية من الثقوب.
- ST_Point — تُنشئ نقطة بقيم X وY وSRID.
- ST_PointZ — تُنشئ نقطة بقيم X وY وZ وSRID.
- ST_PointM — تُنشئ نقطة بقيم X وY وM وSRID.
- ST_PointZM — تُنشئ نقطة بقيم X وY وZ وM وSRID.
- ST_Polygon — تُنشئ مضلعًا من خط (LineString) مع SRID محدد.
- ST_TileEnvelope — تُنشئ مضلعًا مستطيلًا في نظام Web Mercator (SRID:3857) باستخدام نظام البلاطات XYZ.
- ST_HexagonGrid — تُعيد مجموعة من السداسيات وفهارس الخلايا التي تغطي حدود الشكل الهندسي المُدخل تغطية كاملة.
- ST_Hexagon — تُعيد سداسيًا واحدًا، باستخدام طول الحافة وإحداثي الخلية المُعطيين ضمن فضاء الشبكة السداسية.
- ST_SquareGrid — تُعيد مجموعة من مربعات الشبكة وفهارس الخلايا التي تغطي حدود الشكل الهندسي المُدخل تغطية كاملة.
- ST_Square — تُعيد مربعًا واحدًا، باستخدام طول الحافة وإحداثي الخلية المُعطيين ضمن فضاء الشبكة المربعة.
- ST_Letters — تُعيد الحروف المُدخلة مرسومة شكلًا هندسيًا، مع موضع بداية افتراضي عند الأصل وارتفاع نص افتراضي قدره 100.
7.4. دوال الوصول إلى الأشكال الهندسية
- GeometryType — تُعيد نوع الشكل الهندسي كنص.
- ST_Boundary — تُعيد حدود الشكل الهندسي.
- ST_BoundingDiagonal — تُعيد قطر المستطيل المحيط بالشكل الهندسي.
- ST_CoordDim — تُعيد بُعد الإحداثيات للشكل الهندسي.
- ST_Dimension — تُعيد البُعد الطوبولوجي للشكل الهندسي.
-
ST_Dump
— تُعيد مجموعة من صفوف
geometry_dumpلمكونات الشكل الهندسي. -
ST_DumpPoints
— تُعيد مجموعة من صفوف
geometry_dumpللإحداثيات في الشكل الهندسي. -
ST_DumpSegments
— تُعيد مجموعة من صفوف
geometry_dumpللقطع المستقيمة في الشكل الهندسي. -
ST_DumpRings
— تُعيد مجموعة من صفوف
geometry_dumpللحلقات الخارجية والداخلية لمضلع. - ST_EndPoint — تُعيد النقطة الأخيرة من خط (LineString) أو خط دائري (CircularLineString).
- ST_Envelope — تُعيد شكلًا هندسيًا يمثل المستطيل المحيط بالشكل الهندسي.
- ST_ExteriorRing — تُعيد خطًا (LineString) يمثل الحلقة الخارجية لمضلع.
- ST_GeometryN — تُعيد عنصرًا من مجموعة أشكال هندسية.
- ST_GeometryType — تُعيد نوع SQL-MM للشكل الهندسي كنص.
- ST_HasArc — تختبر ما إذا كان الشكل الهندسي يحتوي على قوس دائري
- ST_InteriorRingN — تُعيد الحلقة الداخلية (الثقب) رقم N لمضلع.
- ST_NumCurves — تُعيد عدد المنحنيات المكوِّنة في منحنى مركّب (CompoundCurve).
- ST_CurveN — تُعيد المنحنى المكوِّن رقم N من منحنى مركّب (CompoundCurve).
- ST_IsClosed — تختبر ما إذا كانت نقطتا بداية الخط (LineString) ونهايته متطابقتين. وبالنسبة إلى السطح متعدد الوجوه (PolyhedralSurface) تختبر ما إذا كان مغلقًا (حجميًا).
- ST_IsCollection — تختبر ما إذا كان الشكل الهندسي من أنواع مجموعات الأشكال الهندسية.
- ST_IsEmpty — تختبر ما إذا كان الشكل الهندسي فارغًا.
- ST_IsPolygonCCW — تختبر ما إذا كانت الحلقات الخارجية للمضلعات موجهة عكس اتجاه عقارب الساعة والحلقات الداخلية موجهة مع اتجاه عقارب الساعة.
- ST_IsPolygonCW — تختبر ما إذا كانت الحلقات الخارجية للمضلعات موجهة مع اتجاه عقارب الساعة والحلقات الداخلية موجهة عكس اتجاه عقارب الساعة.
- ST_IsRing — تختبر ما إذا كان الخط (LineString) مغلقًا وبسيطًا.
- ST_IsSimple — تختبر ما إذا كان الشكل الهندسي خاليًا من نقاط التقاطع الذاتي أو التماس الذاتي.
- ST_M — تُعيد إحداثي M لنقطة.
- ST_MemSize — تُعيد مقدار مساحة الذاكرة التي يشغلها الشكل الهندسي.
- ST_NDims — تُعيد بُعد الإحداثيات للشكل الهندسي.
- ST_NPoints — تُعيد عدد النقاط (الرؤوس) في الشكل الهندسي.
- ST_NRings — تُعيد عدد الحلقات في شكل هندسي مضلعي.
- ST_NumGeometries — تُعيد عدد العناصر في مجموعة أشكال هندسية.
- ST_NumInteriorRings — تُعيد عدد الحلقات الداخلية (الثقوب) لمضلع.
- ST_NumInteriorRing — تُعيد عدد الحلقات الداخلية (الثقوب) لمضلع. اسم بديل للدالة ST_NumInteriorRings
- ST_NumPatches — تُعيد عدد الوجوه في سطح متعدد الوجوه. وتُعيد null للأشكال الهندسية غير متعددة الوجوه.
- ST_NumPoints — تُعيد عدد النقاط في خط (LineString) أو قوس دائري (CircularString).
- ST_PatchN — تُعيد الشكل الهندسي (الوجه) رقم N من سطح متعدد الوجوه (PolyhedralSurface).
- ST_PointN — تُعيد النقطة رقم N في أول خط (LineString) أو خط دائري في الشكل الهندسي.
- ST_Points — تُعيد نقطة متعددة (MultiPoint) تحتوي على إحداثيات الشكل الهندسي.
- ST_StartPoint — تُعيد النقطة الأولى من خط (LineString).
- ST_Summary — تُعيد ملخصًا نصيًا لمحتويات الشكل الهندسي.
- ST_X — تُعيد إحداثي X لنقطة.
- ST_Y — تُعيد إحداثي Y لنقطة.
- ST_Z — تُعيد إحداثي Z لنقطة.
- ST_Zmflag — تُعيد رمزًا يشير إلى بُعد إحداثيات ZM للشكل الهندسي.
- ST_HasZ — تتحقق مما إذا كان للشكل الهندسي بُعد Z.
- ST_HasM — تتحقق مما إذا كان للشكل الهندسي بُعد M (القياس).
7.5. دوال تحرير الأشكال الهندسية
تُنشئ هذه الدوال أشكالًا هندسية معدّلة بتغيير النوع أو البنية أو الرؤوس.
- ST_AddPoint — إضافة نقطة إلى خط (LineString).
- ST_CollectionExtract — تُعيد، من مجموعة أشكال مُعطاة، شكلًا هندسيًا متعددًا يحتوي فقط على عناصر من نوع محدد.
- ST_CollectionHomogenize — تُعيد أبسط تمثيل لمجموعة أشكال.
- ST_CurveToLine — تحوّل شكلًا هندسيًا يحتوي على منحنيات إلى شكل خطي.
- ST_Scroll — تغيير نقطة بداية خط (LineString) مغلق.
- ST_FlipCoordinates — تُعيد نسخة من الشكل الهندسي مع تبديل المحورين X وY.
- ST_Force2D — فرض "الوضع ثنائي الأبعاد" على الأشكال الهندسية.
- ST_Force3D — فرض وضع XYZ على الأشكال الهندسية. وهي اسم بديل لـ ST_Force3DZ.
- ST_Force3DZ — فرض وضع XYZ على الأشكال الهندسية.
- ST_Force3DM — فرض وضع XYM على الأشكال الهندسية.
- ST_Force4D — فرض وضع XYZM على الأشكال الهندسية.
- ST_ForceCollection — تحويل الشكل الهندسي إلى GEOMETRYCOLLECTION.
- ST_ForceCurve — رفع الشكل الهندسي إلى نوعه المنحني، إن أمكن.
- ST_ForcePolygonCCW — توجّه جميع الحلقات الخارجية عكس اتجاه عقارب الساعة وجميع الحلقات الداخلية مع اتجاه عقارب الساعة.
- ST_ForcePolygonCW — توجّه جميع الحلقات الخارجية مع اتجاه عقارب الساعة وجميع الحلقات الداخلية عكس اتجاه عقارب الساعة.
- ST_ForceSFS — فرض استخدام أنواع الأشكال الهندسية الواردة في SFS 1.1 فقط.
- ST_ForceRHR — فرض اتباع اتجاه رؤوس المضلع لقاعدة اليد اليمنى.
- ST_LineExtend — تُعيد خطًا ممدَّدًا إلى الأمام والخلف بمسافات محددة.
- ST_LineToCurve — تحوّل شكلًا هندسيًا خطيًا إلى شكل منحنٍ.
- ST_Multi — إعادة الشكل الهندسي في صورة شكل MULTI*.
- ST_Normalize — إعادة الشكل الهندسي في صيغته القانونية.
- ST_Project — تُعيد نقطة مُسقطة من نقطة بداية بمسافة واتجاه (سمت).
- ST_QuantizeCoordinates — تعيّن البتات الأقل أهمية في الإحداثيات إلى صفر
- ST_RemovePoint — إزالة نقطة من خط.
- ST_RemoveRepeatedPoints — تُعيد نسخة من الشكل الهندسي بعد إزالة النقاط المكررة.
- ST_RemoveIrrelevantPointsForView — تزيل النقاط غير المؤثرة في رسم عرض مستطيل محدد لشكل هندسي.
- ST_RemoveSmallParts — تزيل الأجزاء الصغيرة (حلقات المضلعات أو الخطوط) من شكل هندسي.
- ST_Reverse — إعادة الشكل الهندسي مع عكس ترتيب رؤوسه.
- ST_Segmentize — تُعيد geometry/geography معدّلًا لا تزيد فيه أي قطعة عن مسافة مُعطاة.
- ST_SetPoint — استبدال نقطة من خط بنقطة مُعطاة.
- ST_ShiftLongitude — تُزيح إحداثيات خطوط الطول في شكل هندسي بين -180..180 و0..360.
- ST_WrapX — التفاف شكل هندسي حول قيمة X.
- ST_SnapToGrid — التقاط جميع نقاط الشكل المُدخل إلى شبكة منتظمة.
- ST_Snap — التقاط قطع الشكل المُدخل ورؤوسه إلى رؤوس شكل مرجعي.
- ST_SwapOrdinates — تُعيد نسخة من الشكل الهندسي المُعطى مع تبديل قيم الإحداثيات المحددة.
7.6. التحقق من صلاحية الأشكال الهندسية
تختبر هذه الدوال ما إذا كانت الأشكال الهندسية صالحة وفق معيار OGC SFS. كما توفّر معلومات عن طبيعة عدم الصلاحية وموقعها. وهناك أيضًا دالة لإنشاء شكل هندسي صالح من شكل غير صالح.
- ST_IsValid — تختبر ما إذا كان الشكل الهندسي سليم البنية في البعدين.
-
ST_IsValidDetail
— تُعيد صفًا من نوع
valid_detailيبيّن ما إذا كان الشكل الهندسي صالحًا، وإن لم يكن فالسبب والموقع. - ST_IsValidReason — تُعيد نصًا يبيّن ما إذا كان الشكل الهندسي صالحًا، أو سبب عدم صلاحيته.
- ST_MakeValid — تحاول جعل شكل هندسي غير صالح صالحًا دون فقدان أي رؤوس.
7.7. دوال النظام المرجعي المكاني
تعمل هذه الدوال مع النظام المرجعي المكاني للأشكال الهندسية كما هو معرّف في الجدول spatial_ref_sys.
- ST_InverseTransformPipeline — تُعيد شكلًا هندسيًا جديدًا بإحداثيات محوّلة إلى نظام مرجعي مكاني مختلف باستخدام معكوس خط تحويل إحداثيات (pipeline) معرّف.
- ST_SetSRID — تعيّن SRID لشكل هندسي.
- ST_SRID — تُعيد معرّف النظام المرجعي المكاني لشكل هندسي.
- ST_Transform — تُعيد شكلًا هندسيًا جديدًا بإحداثيات محوّلة إلى نظام مرجعي مكاني مختلف.
- ST_TransformPipeline — تُعيد شكلًا هندسيًا جديدًا بإحداثيات محوّلة إلى نظام مرجعي مكاني مختلف باستخدام خط تحويل إحداثيات (pipeline) معرّف.
- postgis_srs_codes — تُعيد قائمة رموز الأنظمة المرجعية المكانية (SRS) المرتبطة بالجهة المرجعية المعطاة.
- postgis_srs — تُعيد سجل بيانات وصفية للجهة المرجعية وSRID المطلوبين.
- postgis_srs_all — تُعيد سجلات البيانات الوصفية لكل نظام مرجعي مكاني في قاعدة بيانات Proj الأساسية.
- postgis_srs_search — تُعيد سجلات البيانات الوصفية لأنظمة الإحداثيات المُسقَطة التي تحتوي مناطق استخدامها بالكامل على معامل الحدود.
7.8. إدخال الأشكال الهندسية
تُنشئ هذه الدوال كائنات geometry من صيغ نصية أو ثنائية مختلفة.
7.8.1. النص المعروف (WKT)
- ST_BdPolyFromText — تُنشئ مضلعًا من مجموعة عشوائية من الخطوط المغلقة ممثَّلة بصيغة النص المعروف (WKT) لـ MultiLineString.
- ST_BdMPolyFromText — تُنشئ مضلعًا متعددًا (MultiPolygon) من مجموعة عشوائية من الخطوط المغلقة ممثَّلة بصيغة النص المعروف (WKT) لـ MultiLineString.
- ST_GeogFromText — تُعيد قيمة geography محددة من تمثيل النص المعروف (WKT) أو الموسّع.
- ST_GeographyFromText — تُعيد قيمة geography محددة من تمثيل النص المعروف (WKT) أو الموسّع.
- ST_GeomCollFromText — تُنشئ مجموعة أشكال (geometry) من WKT لمجموعة أشكال باستخدام SRID المعطى. وإذا لم يُعطَ SRID فقيمته الافتراضية 0.
- ST_GeomFromEWKT — تُعيد قيمة ST_Geometry محددة من تمثيل النص المعروف الموسّع (EWKT).
- ST_GeomFromMARC21 — تأخذ بيانات جغرافية بصيغة MARC21/XML مدخلًا وتُعيد كائن geometry في PostGIS.
- ST_GeometryFromText — تُعيد قيمة ST_Geometry محددة من تمثيل النص المعروف (WKT). هذه الدالة اسم بديل لـ ST_GeomFromText
- ST_GeomFromText — تُعيد قيمة ST_Geometry محددة من تمثيل النص المعروف (WKT).
- ST_LineFromText — تُنشئ geometry من تمثيل WKT باستخدام SRID المعطى. وإذا لم يُعطَ SRID فقيمته الافتراضية 0.
- ST_MLineFromText — تُعيد قيمة ST_MultiLineString محددة من تمثيل WKT.
- ST_MPointFromText — تُنشئ geometry من WKT باستخدام SRID المعطى. وإذا لم يُعطَ SRID فقيمته الافتراضية 0.
- ST_MPolyFromText — تُنشئ geometry من نوع MultiPolygon من WKT باستخدام SRID المعطى. وإذا لم يُعطَ SRID فقيمته الافتراضية 0.
- ST_PointFromText — تُنشئ geometry من نوع نقطة من WKT باستخدام SRID المعطى. وإذا لم يُعطَ SRID فقيمته الافتراضية غير معروفة.
- ST_PolygonFromText — تُنشئ geometry من WKT باستخدام SRID المعطى. وإذا لم يُعطَ SRID فقيمته الافتراضية 0.
- ST_WKTToSQL — تُعيد قيمة ST_Geometry محددة من تمثيل النص المعروف (WKT). هذه الدالة اسم بديل لـ ST_GeomFromText
7.8.2. الثنائي المعروف (WKB)
- ST_GeogFromWKB — تُنشئ نسخة geography من تمثيل geometry بصيغة الثنائي المعروف (WKB) أو الثنائي المعروف الموسّع (EWKB).
- ST_GeomFromEWKB — تُعيد قيمة ST_Geometry محددة من تمثيل الثنائي المعروف الموسّع (EWKB).
- ST_GeomFromWKB — تُنشئ نسخة geometry من تمثيل geometry بصيغة الثنائي المعروف (WKB) مع SRID اختياري.
-
ST_LineFromWKB
— تُنشئ
LINESTRINGمن WKB باستخدام SRID المعطى - ST_LinestringFromWKB — تُنشئ geometry من WKB باستخدام SRID المعطى.
- ST_PointFromWKB — تُنشئ geometry من WKB باستخدام SRID المعطى
- ST_WKBToSQL — تُعيد قيمة ST_Geometry محددة من تمثيل الثنائي المعروف (WKB). هذه الدالة اسم بديل لـ ST_GeomFromWKB لا يأخذ srid
7.8.3. صيغ أخرى
- ST_Box2dFromGeoHash — تُعيد BOX2D من سلسلة GeoHash.
- ST_GeomFromGeoHash — تُعيد geometry من سلسلة GeoHash.
- ST_GeomFromGML — تأخذ تمثيل GML لشكل هندسي مدخلًا وتُخرج كائن geometry في PostGIS
- ST_GeomFromGeoJSON — تأخذ تمثيل GeoJSON لشكل هندسي مدخلًا وتُخرج كائن geometry في PostGIS
- ST_GeomFromKML — تأخذ تمثيل KML لشكل هندسي مدخلًا وتُخرج كائن geometry في PostGIS
- ST_GeomFromTWKB — تُنشئ نسخة geometry من تمثيل شكل هندسي بصيغة TWKB ("الثنائي المعروف المصغّر - Tiny Well-Known Binary").
- ST_GMLToSQL — تُعيد قيمة ST_Geometry محددة من تمثيل GML. هذه الدالة اسم بديل لـ ST_GeomFromGML
- ST_LineFromEncodedPolyline — تُنشئ LineString من خط متعدد مرمّز (Encoded Polyline).
- ST_PointFromGeoHash — تُعيد نقطة من سلسلة GeoHash.
- ST_FromFlatGeobufToTable — تُنشئ جدولًا بناءً على بنية بيانات FlatGeobuf.
- ST_FromFlatGeobuf — تقرأ بيانات FlatGeobuf.
7.9. إخراج الأشكال الهندسية
تحوّل هذه الدوال كائنات geometry إلى صيغ نصية أو ثنائية متنوعة.
7.9.1. النص المعروف (WKT)
7.9.2. الثنائي المعروف (WKB)
- ST_AsBinary — تُعيد تمثيل الثنائي المعروف (WKB) وفق OGC/ISO لقيمة geometry/geography دون بيانات SRID الوصفية.
- ST_AsEWKB — تُعيد تمثيل الثنائي المعروف الموسَّع (EWKB) للشكل الهندسي مع بيانات SRID الوصفية.
- ST_AsHEXEWKB — تُعيد شكلًا هندسيًا بصيغة HEXEWKB (كنص) باستخدام ترميز little-endian (NDR) أو big-endian (XDR).
7.9.3. صيغ أخرى
- ST_AsEncodedPolyline — تُعيد خطًا متعدد الأجزاء مُرمَّزًا (Encoded Polyline) من شكل هندسي من نوع LineString.
- ST_AsFlatGeobuf — تُعيد تمثيل FlatGeobuf لمجموعة من الصفوف.
- ST_AsGeobuf — تُعيد تمثيل Geobuf لمجموعة من الصفوف.
- ST_AsGeoJSON — تُعيد شكلًا هندسيًا أو معلمًا (feature) بصيغة GeoJSON.
- ST_AsGML — تُعيد الشكل الهندسي كعنصر GML من الإصدار 2 أو 3.
- ST_AsKML — تُعيد الشكل الهندسي كعنصر KML.
- ST_AsLatLonText — تُعيد تمثيل الدرجات والدقائق والثواني للنقطة المعطاة.
- ST_AsMARC21 — تُعيد الشكل الهندسي كسجل MARC21/XML يحتوي على حقل بيانات جغرافي (034).
- ST_AsMVTGeom — تحوّل شكلًا هندسيًا إلى فضاء إحداثيات بلاطة MVT.
- ST_AsMVT — دالة تجميعية تُعيد تمثيل MVT لمجموعة من الصفوف.
- ST_AsSVG — تُعيد بيانات مسار SVG لشكل هندسي.
- ST_AsTWKB — تُعيد الشكل الهندسي بصيغة TWKB، أي "Tiny Well-Known Binary"
- ST_AsX3D — تُعيد شكلًا هندسيًا بصيغة عنصر عقدة X3D xml: ISO-IEC-19776-1.2-X3DEncodings-XML
- ST_GeoHash — تُعيد تمثيل GeoHash للشكل الهندسي.
7.10. العوامل
7.10.1. عوامل المستطيل المحيط
-
&&
— تُعيد
TRUEإذا تقاطع المستطيل المحيط ثنائي الأبعاد لـ A مع المستطيل المحيط ثنائي الأبعاد لـ B. -
&&(geometry,box2df)
— تُعيد
TRUEإذا تقاطع المستطيل المحيط ثنائي الأبعاد (المخزَّن مؤقتًا) لشكل هندسي مع مستطيل محيط ثنائي الأبعاد بدقة float (BOX2DF). -
&&(box2df,geometry)
— تُعيد
TRUEإذا تقاطع مستطيل محيط ثنائي الأبعاد بدقة float (BOX2DF) مع المستطيل المحيط ثنائي الأبعاد (المخزَّن مؤقتًا) لشكل هندسي. -
&&(box2df,box2df)
— تُعيد
TRUEإذا تقاطع مستطيلان محيطان ثنائيا الأبعاد بدقة float (BOX2DF) أحدهما مع الآخر. -
&&&
— تُعيد
TRUEإذا تقاطع المستطيل المحيط متعدد الأبعاد (n-D) لـ A مع المستطيل المحيط متعدد الأبعاد لـ B. -
&&&(geometry,gidx)
— تُعيد
TRUEإذا تقاطع المستطيل المحيط متعدد الأبعاد (n-D) (المخزَّن مؤقتًا) لشكل هندسي مع مستطيل محيط متعدد الأبعاد بدقة float (GIDX). -
&&&(gidx,geometry)
— تُعيد
TRUEإذا تقاطع مستطيل محيط متعدد الأبعاد (n-D) بدقة float (GIDX) مع المستطيل المحيط متعدد الأبعاد (المخزَّن مؤقتًا) لشكل هندسي. -
&&&(gidx,gidx)
— تُعيد
TRUEإذا تقاطع مستطيلان محيطان متعددا الأبعاد (n-D) بدقة float (GIDX) أحدهما مع الآخر. -
&<
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A يتداخل مع المستطيل المحيط لـ B أو يقع على يساره. -
&<|
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A يتداخل مع المستطيل المحيط لـ B أو يقع أسفله. -
&>
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A يتداخل مع المستطيل المحيط لـ B أو يقع على يمينه. -
<<
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A يقع تمامًا على يسار المستطيل المحيط لـ B. -
<<|
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A يقع تمامًا أسفل المستطيل المحيط لـ B. -
=
— تُعيد
TRUEإذا كانت إحداثيات geometry/geography A وترتيبها مطابقة لإحداثيات geometry/geography B وترتيبها. -
>>
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A يقع تمامًا على يمين المستطيل المحيط لـ B. -
@
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A محتوًى في المستطيل المحيط لـ B. -
@(geometry,box2df)
— تُعيد
TRUEإذا كان المستطيل المحيط ثنائي الأبعاد لشكل هندسي محتوًى في مستطيل محيط ثنائي الأبعاد بدقة float (BOX2DF). -
@(box2df,geometry)
— تُعيد
TRUEإذا كان مستطيل محيط ثنائي الأبعاد بدقة float (BOX2DF) محتوًى في المستطيل المحيط ثنائي الأبعاد لشكل هندسي. -
@(box2df,box2df)
— تُعيد
TRUEإذا كان مستطيل محيط ثنائي الأبعاد بدقة float (BOX2DF) محتوًى في مستطيل محيط آخر ثنائي الأبعاد بدقة float. -
|&>
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A يتداخل مع المستطيل المحيط لـ B أو يقع أعلاه. -
|>>
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A يقع تمامًا أعلى المستطيل المحيط لـ B. -
~
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A يحتوي المستطيل المحيط لـ B. -
~(geometry,box2df)
— تُعيد
TRUEإذا كان المستطيل المحيط ثنائي الأبعاد لشكل هندسي يحتوي مستطيلًا محيطًا ثنائي الأبعاد بدقة float (GIDX). -
~(box2df,geometry)
— تُعيد
TRUEإذا كان مستطيل محيط ثنائي الأبعاد بدقة float (BOX2DF) يحتوي المستطيل المحيط ثنائي الأبعاد لشكل هندسي. -
~(box2df,box2df)
— تُعيد
TRUEإذا كان مستطيل محيط ثنائي الأبعاد بدقة float (BOX2DF) يحتوي مستطيلًا محيطًا آخر ثنائي الأبعاد بدقة float (BOX2DF). -
~=
— تُعيد
TRUEإذا كان المستطيل المحيط لـ A مطابقًا للمستطيل المحيط لـ B.
7.10.2. عوامل المسافة
7.11. العلاقات المكانية
تحدد هذه الدوال العلاقات المكانية بين الأشكال الهندسية.
7.11.1. العلاقات الطوبولوجية
- ST_3DIntersects — تختبر ما إذا كان شكلان هندسيان يتقاطعان مكانيًا في الأبعاد الثلاثية - فقط للنقاط والخطوط والمضلعات والأسطح متعددة الوجوه (المساحة)
- ST_Contains — تختبر ما إذا كانت كل نقطة من B تقع في A، وما إذا كان لداخليهما نقطة مشتركة
- ST_ContainsProperly — تختبر ما إذا كانت كل نقطة من B تقع في داخل A
- ST_CoveredBy — تختبر ما إذا كانت كل نقطة من A تقع في B
- ST_Covers — تختبر ما إذا كانت كل نقطة من B تقع في A
- ST_Crosses — تختبر ما إذا كان لشكلين هندسيين بعض النقاط الداخلية المشتركة، لا كلها
- ST_Disjoint — تختبر ما إذا كان شكلان هندسيان لا يشتركان في أي نقطة
- ST_Equals — تختبر ما إذا كان شكلان هندسيان يضمّان مجموعة النقاط نفسها
- ST_Intersects — تختبر ما إذا كان شكلان هندسيان يتقاطعان (لهما نقطة مشتركة واحدة على الأقل)
- ST_LineCrossingDirection — تُعيد رقمًا يشير إلى سلوك العبور بين خطين (LineString)
- ST_OrderingEquals — تختبر ما إذا كان شكلان هندسيان يمثلان الشكل نفسه ولهما نقاط بترتيب الاتجاه نفسه
- ST_Overlaps — تختبر ما إذا كان لشكلين هندسيين البعد نفسه ويتقاطعان، مع امتلاك كل منهما نقطة واحدة على الأقل ليست في الآخر
- ST_Relate — تختبر ما إذا كان لشكلين هندسيين علاقة طوبولوجية تطابق نمط مصفوفة تقاطع، أو تحسب مصفوفة التقاطع الخاصة بهما
- ST_RelateMatch — تختبر ما إذا كانت مصفوفة تقاطع DE-9IM تطابق نمط مصفوفة تقاطع
- ST_Touches — تختبر ما إذا كان لشكلين هندسيين نقطة مشتركة واحدة على الأقل، دون أن يتقاطع داخلاهما
- ST_Within — تختبر ما إذا كانت كل نقطة من A تقع في B، وكان لداخليهما نقطة مشتركة
7.11.2. علاقات المسافة
- ST_3DDWithin — تختبر ما إذا كان شكلان هندسيان ثلاثيا الأبعاد ضمن مسافة ثلاثية الأبعاد معيّنة
- ST_3DDFullyWithin — تختبر ما إذا كان شكلان هندسيان ثلاثيا الأبعاد يقعان بالكامل ضمن مسافة ثلاثية الأبعاد معيّنة
- ST_DFullyWithin — تختبر ما إذا كان شكل هندسي يقع بالكامل ضمن مسافة معيّنة من شكل آخر
- ST_DWithin — تختبر ما إذا كان شكلان هندسيان ضمن مسافة معيّنة
- ST_PointInsideCircle — تختبر ما إذا كان شكل هندسي نقطي يقع داخل دائرة معرّفة بمركز ونصف قطر
7.12. دوال القياس
تحسب هذه الدوال قياسات المسافة والمساحة والزوايا. وتوجد أيضًا دوال تحسب قيمًا هندسية تُحدَّد بناءً على القياسات.
- ST_Area — تُعيد مساحة شكل هندسي مضلعي.
- ST_Azimuth — تُعيد السمت المرجعي إلى الشمال لخط بين نقطتين.
- ST_Angle — تُعيد الزاوية بين متجهين معرّفين بـ 3 أو 4 نقاط، أو بخطين.
- ST_ClosestPoint — تُعيد النقطة ثنائية الأبعاد على g1 الأقرب إلى g2. وهي النقطة الأولى من أقصر خط من أحد الشكلين إلى الآخر.
- ST_3DClosestPoint — تُعيد النقطة ثلاثية الأبعاد على g1 الأقرب إلى g2. وهي النقطة الأولى من أقصر خط ثلاثي الأبعاد.
- ST_Distance — تُعيد المسافة بين قيمتين من نوع geometry أو geography.
- ST_3DDistance — تُعيد أقل مسافة ديكارتية ثلاثية الأبعاد (بناءً على النظام المرجعي المكاني) بين شكلين بوحدات الإسقاط.
- ST_DistanceSphere — تُعيد أقل مسافة بالمتر بين شكلين بإحداثيات خط الطول/خط العرض باستخدام نموذج كروي للأرض.
- ST_DistanceSpheroid — تُعيد أقل مسافة بين شكلين بإحداثيات خط الطول/خط العرض باستخدام نموذج إهليلجي للأرض.
- ST_FrechetDistance — تُعيد مسافة فريشيه (Fréchet) بين شكلين.
- ST_HausdorffDistance — تُعيد مسافة هاوسدورف (Hausdorff) بين شكلين.
- ST_Length — تُعيد الطول ثنائي الأبعاد لشكل هندسي خطي.
-
ST_Length2D
— تُعيد الطول ثنائي الأبعاد لشكل هندسي خطي. اسم بديل لـ
ST_Length - ST_3DLength — تُعيد الطول ثلاثي الأبعاد لشكل هندسي خطي.
- ST_LengthSpheroid — تُعيد الطول/المحيط ثنائي أو ثلاثي الأبعاد لشكل بإحداثيات خط الطول/خط العرض على شكل إهليلجي.
- ST_LongestLine — تُعيد أطول خط ثنائي الأبعاد بين شكلين.
- ST_3DLongestLine — تُعيد أطول خط ثلاثي الأبعاد بين شكلين
- ST_MaxDistance — تُعيد أكبر مسافة ثنائية الأبعاد بين شكلين هندسيين بوحدات الإسقاط.
- ST_3DMaxDistance — تُعيد المسافة الديكارتية القصوى ثلاثية الأبعاد (بحسب النظام المرجعي المكاني) بين شكلين هندسيين بوحدات الإسقاط.
- ST_MinimumClearance — تُعيد الخلوص الأدنى (minimum clearance) لشكل هندسي، وهو مقياس لمتانة الشكل الهندسي.
- ST_MinimumClearanceLine — تُعيد خطًا (LineString) من نقطتين يمتد عبر الخلوص الأدنى للشكل الهندسي.
- ST_Perimeter — تُعيد طول حدود شكل مضلعي من نوع geometry أو geography.
-
ST_Perimeter2D
— تُعيد المحيط ثنائي الأبعاد لشكل هندسي مضلعي. اسم بديل لـ
ST_Perimeter. - ST_3DPerimeter — تُعيد المحيط ثلاثي الأبعاد لشكل هندسي مضلعي.
- ST_ShortestLine — تُعيد أقصر خط ثنائي الأبعاد بين شكلين هندسيين
- ST_3DShortestLine — تُعيد أقصر خط ثلاثي الأبعاد بين شكلين هندسيين
7.13. دوال التراكب
تحسب هذه الدوال النتائج الناشئة عن تراكب شكلين هندسيين. وتُعرف أيضًا بالعمليات المنطقية في نظرية مجموعات النقاط. كما تتوفر بعض الدوال ذات الصلة.
- ST_ClipByBox2D — تحسب جزء الشكل الهندسي الواقع داخل مستطيل.
- ST_Difference — تحسب شكلًا هندسيًا يمثّل جزء الشكل الهندسي A الذي لا يتقاطع مع الشكل الهندسي B.
- ST_Intersection — تحسب شكلاً هندسياً يمثّل الجزء المشترك بين الشكلين A وB.
- ST_MemUnion — دالة تجميعية تحسب اتحاد الأشكال الهندسية بطريقة موفّرة للذاكرة لكنها أبطأ
- ST_Node — تُنشئ العُقد لمجموعة من الخطوط.
- ST_Split — تُعيد مجموعة من الأشكال الهندسية الناتجة عن تقسيم شكل هندسي بشكل آخر.
- ST_Subdivide — تحسب تقسيماً متعامد الخطوط لشكل هندسي.
- ST_SymDifference — تحسب شكلاً هندسياً يمثّل أجزاء الشكلين A وB التي لا تتقاطع.
- ST_UnaryUnion — تحسب اتحاد مكوّنات شكل هندسي واحد.
- ST_Union — تحسب شكلاً هندسياً يمثّل اتحاد مجموعات نقاط الأشكال المُدخلة.
7.14. معالجة الأشكال الهندسية
تحسب هذه الدوال إنشاءات هندسية، أو تغيّر حجم الشكل الهندسي أو هيئته.
- ST_Buffer — تحسب شكلاً هندسياً يغطي جميع النقاط الواقعة ضمن مسافة معيّنة من شكل هندسي.
- ST_BuildArea — تُنشئ شكلاً مضلّعياً مكوّناً من خطوط شكل هندسي.
- ST_Centroid — تُعيد المركز الهندسي لشكل هندسي.
- ST_ChaikinSmoothing — تُعيد نسخة منعّمة من شكل هندسي باستخدام خوارزمية Chaikin
- ST_ConcaveHull — تحسب شكلاً هندسياً قد يكون مقعّراً يحتوي على جميع رؤوس الشكل المُدخل
- ST_ConvexHull — تحسب الغلاف المحدب لشكل هندسي.
- ST_DelaunayTriangles — تُعيد تثليث ديلوناي (Delaunay) لرؤوس شكل هندسي.
- ST_FilterByM — تُزيل الرؤوس بناءً على قيمة M الخاصة بها
- ST_GeneratePoints — تُولّد نقاطاً متعددة (multipoint) من نقاط عشوائية واقعة داخل Polygon أو MultiPolygon.
- ST_GeometricMedian — تُعيد الوسيط الهندسي لـ MultiPoint.
- ST_LineMerge — تُعيد الخطوط المتكوّنة من خياطة MultiLineString معاً.
- ST_MaximumInscribedCircle — تحسب أكبر دائرة محتواة داخل شكل هندسي.
- ST_LargestEmptyCircle — تحسب أكبر دائرة لا تتداخل مع شكل هندسي.
- ST_MinimumBoundingCircle — تُعيد أصغر مضلع دائري يحتوي على شكل هندسي.
- ST_MinimumBoundingRadius — تُعيد النقطة المركزية ونصف القطر لأصغر دائرة تحتوي على شكل هندسي.
- ST_OrientedEnvelope — تُعيد مستطيلاً بأصغر مساحة يحتوي على شكل هندسي.
- ST_OffsetCurve — تُعيد خطاً مُزاحاً على مسافة وجانب معيّنين من خط مُدخل.
- ST_PointOnSurface — تحسب نقطة مضمونة الوقوع داخل مضلع أو على شكل هندسي.
- ST_Polygonize — تحسب مجموعة من المضلعات المتكوّنة من خطوط مجموعة من الأشكال الهندسية.
- ST_ReducePrecision — تُعيد شكلاً هندسياً صالحاً بنقاط مقرّبة إلى تسامح شبكة.
- ST_SharedPaths — تُعيد مجموعة تحتوي على المسارات المشتركة بين الخطين/الخطين المتعددين المُدخلين.
- ST_Simplify — تُعيد تمثيلاً مبسّطاً لشكل هندسي باستخدام خوارزمية Douglas-Peucker.
- ST_SimplifyPreserveTopology — تُعيد تمثيلاً مبسّطاً وصالحاً لشكل هندسي باستخدام خوارزمية Douglas-Peucker.
- ST_SimplifyPolygonHull — تحسب غلافاً خارجياً أو داخلياً مبسّطاً يحافظ على الطوبولوجيا لشكل مضلّعي.
- ST_SimplifyVW — تُعيد تمثيلاً مبسّطاً لشكل هندسي باستخدام خوارزمية Visvalingam-Whyatt
- ST_SetEffectiveArea — تضبط المساحة الفعّالة لكل رأس باستخدام خوارزمية Visvalingam-Whyatt.
- ST_TriangulatePolygon — تحسب تثليث ديلوناي المقيَّد للمضلعات
- ST_VoronoiLines — تُعيد حدود مخطط فورونوي (Voronoi) لرؤوس شكل هندسي.
- ST_VoronoiPolygons — تُعيد خلايا مخطط فورونوي (Voronoi) لرؤوس شكل هندسي.
7.15. التغطيات
تعمل هذه الدوال على مجموعات من الأشكال المضلعية التي تشكّل "تغطيات ضمنية". ولكي تشكّل المضلعات تغطية صالحة يجب ألا تتداخل، وأن تتطابق رؤوس الحواف المتجاورة تطابقًا تامًا. تتميز التغطيات بسرعة معالجتها، ويمكن العمل عليها بدوال النافذة التي تحافظ على طوبولوجيا التغطية داخل قسم النافذة أثناء تعديل الحواف.
- ST_CoverageInvalidEdges — دالة نافذة تحدد المواضع التي تخفق فيها المضلعات في تشكيل تغطية صالحة.
- ST_CoverageSimplify — دالة نافذة تبسّط حواف تغطية مضلعية.
- ST_CoverageUnion — تحسب اتحاد مجموعة من المضلعات التي تشكّل تغطية بإزالة الحواف المشتركة.
- ST_CoverageClean — تحسب تغطية مضلعية نظيفة (متطابقة الحواف، غير متداخلة، خالية من الفجوات) انطلاقًا من مُدخل غير نظيف.
7.16. التحويلات التآلفية (Affine)
تغيّر هذه الدوال موضع الأشكال الهندسية وشكلها باستخدام التحويلات التآلفية.
- ST_Affine — تطبّق تحويلًا تآلفيًا ثلاثي الأبعاد على شكل هندسي.
- ST_Rotate — تُدير شكلًا هندسيًا حول نقطة أصل.
- ST_RotateX — تُدير شكلًا هندسيًا حول المحور X.
- ST_RotateY — تُدير شكلًا هندسيًا حول المحور Y.
- ST_RotateZ — تُدير شكلًا هندسيًا حول المحور Z.
- ST_Scale — تغيّر مقياس شكل هندسي بمعاملات معيّنة.
- ST_Translate — تُزيح شكلًا هندسيًا بإزاحات معيّنة.
- ST_TransScale — تُزيح شكلًا هندسيًا وتغيّر مقياسه بإزاحات ومعاملات معيّنة.
7.17. دوال العنقدة (Clustering)
تطبّق هذه الدوال خوارزميات العنقدة على مجموعات من الأشكال الهندسية.
- ST_ClusterDBSCAN — دالة نافذة تُعيد معرّف عنقود لكل شكل هندسي مُدخل باستخدام خوارزمية DBSCAN.
- ST_ClusterIntersecting — دالة تجميعية تُعنقد الأشكال الهندسية المُدخلة في مجموعات متصلة.
- ST_ClusterIntersectingWin — دالة نافذة تُعيد معرّف عنقود لكل شكل هندسي مُدخل، بعنقدة الأشكال الهندسية المُدخلة في مجموعات متصلة.
- ST_ClusterKMeans — دالة نافذة تُعيد معرّف عنقود لكل شكل هندسي مُدخل باستخدام خوارزمية K-means.
- ST_ClusterWithin — دالة تجميعية تُعنقد الأشكال الهندسية حسب مسافة الفصل.
- ST_ClusterWithinWin — دالة نافذة تُعيد معرّف عنقود لكل شكل هندسي مُدخل، بالعنقدة حسب مسافة الفصل.
7.18. دوال المستطيل المحيط
تُنتج هذه الدوال مستطيلات محيطة أو تعمل عليها. ويمكنها أيضًا تقديم قيم geometry وقبولها، باستخدام التحويلات التلقائية أو الصريحة.
انظر أيضًا قسم 13.7, “دوال الصناديق (Box) في PostGIS”.
- Box2D — تُعيد BOX2D يمثل الامتداد ثنائي الأبعاد للشكل الهندسي.
- Box3D — تُعيد BOX3D يمثل الامتداد ثلاثي الأبعاد للشكل الهندسي.
- ST_EstimatedExtent — تُعيد الامتداد التقديري لجدول مكاني.
- ST_Expand — تُعيد مستطيلًا محيطًا موسّعًا من مستطيل محيط آخر أو من شكل هندسي.
- ST_Extent — دالة تجميعية تُعيد المستطيل المحيط بالأشكال الهندسية.
- ST_3DExtent — دالة تجميعية تُعيد المستطيل المحيط ثلاثي الأبعاد بالأشكال الهندسية.
- ST_MakeBox2D — تُنشئ BOX2D معرّفًا بنقطتين ثنائيتي الأبعاد.
- ST_3DMakeBox — تُنشئ BOX3D معرّفًا بنقطتين ثلاثيتي الأبعاد.
- ST_XMax — تُعيد القيمة القصوى لـ X لمستطيل محيط ثنائي أو ثلاثي الأبعاد أو لشكل هندسي.
- ST_XMin — تُعيد القيمة الدنيا لـ X لمستطيل محيط ثنائي أو ثلاثي الأبعاد أو لشكل هندسي.
- ST_YMax — تُعيد القيمة القصوى لـ Y لمستطيل محيط ثنائي أو ثلاثي الأبعاد أو لشكل هندسي.
- ST_YMin — تُعيد القيمة الدنيا لـ Y لمستطيل محيط ثنائي أو ثلاثي الأبعاد أو لشكل هندسي.
- ST_ZMax — تُعيد القيمة القصوى لـ Z لمستطيل محيط ثنائي أو ثلاثي الأبعاد أو لشكل هندسي.
- ST_ZMin — تُعيد القيمة الدنيا لـ Z لمستطيل محيط ثنائي أو ثلاثي الأبعاد أو لشكل هندسي.
7.19. الإسناد الخطي
- ST_LineInterpolatePoint — تُعيد نقطة مُستكمَلة على امتداد خط عند موقع كسري.
- ST_3DLineInterpolatePoint — تُعيد نقطة مُستكمَلة على امتداد خط ثلاثي الأبعاد عند موقع كسري.
- ST_LineInterpolatePoints — تُعيد نقاطًا مُستكمَلة على امتداد خط عند فاصل كسري.
- ST_LineLocatePoint — تُعيد الموقع الكسري لأقرب نقطة على خط إلى نقطة.
- ST_LineSubstring — تُعيد جزء الخط الواقع بين موقعين كسريين.
- ST_LocateAlong — تُعيد النقطة (أو النقاط) على شكل هندسي التي تطابق قيمة قياس معيّنة.
- ST_LocateBetween — تُعيد أجزاء الشكل الهندسي التي تطابق نطاق قياس معيّنًا.
- ST_LocateBetweenElevations — تُعيد أجزاء الشكل الهندسي الواقعة ضمن نطاق ارتفاع (Z).
- ST_InterpolatePoint — تُعيد القياس المُستكمَل لشكل هندسي عند أقرب موقع إلى نقطة.
- ST_AddMeasure — تستكمل القياسات على امتداد شكل هندسي خطي.
7.20. دوال المسارات (Trajectory)
تدعم هذه الدوال العمل مع المسارات. المسار شكل هندسي خطي ذو قياسات (قيم M) متزايدة على كل إحداثي. ويمكن نمذجة البيانات الزمانية المكانية باستخدام أزمنة نسبية (مثل epoch) قيمًا للقياس.
- ST_IsValidTrajectory — تختبر ما إذا كان الشكل الهندسي مسارًا صالحًا.
- ST_ClosestPointOfApproach — تُعيد القياس عند نقطة أقرب اقتراب بين مسارين.
- ST_DistanceCPA — تُعيد المسافة عند نقطة أقرب اقتراب بين مسارين.
- ST_CPAWithin — تختبر ما إذا كانت نقطة أقرب اقتراب بين مسارين ضمن المسافة المحددة.
7.21. دوال الإصدار
تُبلغ هذه الدوال عن إصدارات PostGIS وتُرقّيها.
- PostGIS_Extensions_Upgrade — تحزم امتدادات PostGIS (مثل postgis_raster وpostgis_topology وpostgis_sfcgal) وتُرقّيها إلى الإصدار المحدد أو إلى أحدث إصدار.
- PostGIS_Full_Version — تُبلغ عن إصدار PostGIS الكامل ومعلومات إعدادات البناء.
- PostGIS_GEOS_Version — تُعيد رقم إصدار مكتبة GEOS.
- PostGIS_GEOS_Compiled_Version — تُعيد رقم إصدار مكتبة GEOS التي بُني PostGIS عليها.
- PostGIS_Liblwgeom_Version — تُعيد رقم إصدار مكتبة liblwgeom. يجب أن يطابق إصدار PostGIS.
- PostGIS_LibXML_Version — تُعيد رقم إصدار مكتبة libxml2.
- PostGIS_LibJSON_Version — تُعيد رقم إصدار مكتبة libjson-c.
- PostGIS_Lib_Build_Date — تُعيد تاريخ بناء مكتبة PostGIS.
- PostGIS_Lib_Version — تُعيد رقم إصدار مكتبة PostGIS.
- PostGIS_PROJ_Version — تُعيد رقم إصدار مكتبة PROJ4.
- PostGIS_PROJ_Compiled_Version — تُعيد رقم إصدار مكتبة PROJ التي بُني PostGIS عليها.
- PostGIS_Wagyu_Version — تُعيد رقم إصدار مكتبة Wagyu الداخلية.
- PostGIS_Scripts_Build_Date — تُعيد تاريخ بناء سكربتات PostGIS.
- PostGIS_Scripts_Installed — تُعيد إصدار سكربتات PostGIS المثبّتة في قاعدة البيانات هذه.
- PostGIS_Scripts_Released — تُعيد رقم إصدار السكربت postgis.sql الصادر مع مكتبة PostGIS المثبّتة.
- PostGIS_Version — تُعيد رقم إصدار PostGIS وخيارات وقت الترجمة.
7.22. المتغيرات المخصصة الموحّدة الكبرى (GUCs)
يسرد هذا القسم المتغيرات المخصصة الموحّدة الكبرى (GUC) الخاصة بـ PostGIS. ويمكن ضبطها على المستوى العام، أو لكل قاعدة بيانات، أو لكل جلسة، أو لكل معاملة. والأفضل ضبطها على المستوى العام أو مستوى قاعدة البيانات.
لمزيد من أمثلة الاستخدام راجع SQL SET وSQL ALTER SYSTEM
- postgis.gdal_datapath — خيار إعداد لتعيين قيمة الخيار GDAL_DATA في GDAL. إذا لم يُضبط، فيُستخدم المتغير GDAL_DATA المضبوط في البيئة.
- postgis.gdal_enabled_drivers — خيار إعداد لضبط مشغّلات GDAL المفعّلة في بيئة PostGIS. يؤثر في متغير إعداد GDAL GDAL_SKIP.
- postgis.enable_outdb_rasters — خيار إعداد منطقي (boolean) لتفعيل الوصول إلى نطاقات الرستر المخزّنة خارج قاعدة البيانات (out-db).
- postgis.gdal_vsi_options — إعداد نصي لضبط الخيارات المستخدمة عند التعامل مع رستر مخزّن خارج قاعدة البيانات (out-db).
- postgis.gdal_cpl_debug — إعداد منطقي (boolean) لتشغيل تسجيل رسائل تصحيح الأخطاء الخاصة بـ GDAL وإيقافه.
7.23. دوال استكشاف الأخطاء
هذه الدوال أدوات مساعدة لاستكشاف أخطاء بيانات الأشكال الهندسية وإصلاحها. ولا حاجة إليها إلا إذا تلفت بيانات الأشكال الهندسية بطريقة ما، وهو أمر لا ينبغي أن يحدث في الظروف العادية.
- PostGIS_AddBBox — إضافة المستطيل المحيط إلى الشكل الهندسي.
- PostGIS_DropBBox — حذف ذاكرة المستطيل المحيط المخبأة من الشكل الهندسي.
- PostGIS_HasBBox — تُعيد TRUE إذا كان المستطيل المحيط لهذا الشكل الهندسي مخبأً، وFALSE خلاف ذلك.