أكثر

كيف أتقاطع نقطة مع شكل؟

كيف أتقاطع نقطة مع شكل؟


لدي جدول في Postgresql / PostGIS يحتوي على هندسة المقاطعات. تم إنشاء هذا الجدول عن طريق استيراد ملف شكل. لقد تحققت من استيراد الشكل الهندسي بنجاح عن طريق استيراد الجدول إلى QGIS لعرض مواضع المضلع والتأكد من أن كل شيء كان يرسم بشكل صحيح. لذا ، لدي الآن هندسة في طاولة.

الآن ، أريد كتابة استعلام SQL لإرجاع المضلع الذي تتقاطع فيه النقاط. على سبيل المثال ، عند تحديد خط العرض / الطول 35 ، 80 ، يجب إعادة صف المقاطعة الذي يحتوي على النقطة عند 35 ، 80.

الهندسة موجودة في قاعدة البيانات مع SRID EPSG: 2810 ، "NAD83 (HARN) / مينيسوتا الشمالية". النقطة موجودة في WGS84 - إحداثيات نموذجية مأخوذة من مستقبل GPS.

كيف أحدد الصف الذي تتقاطع معه النقطة؟ الهندسة في عمود GEOM لهندسة النوع.

إليك استعلام بدأته ولكنه لا يُرجع أي صفوف:

حدد * من المقاطعة حيث ST_Intersects (geom، ST_GeometryFromText ('SRID = 4326؛ POINT (47.000000 -91.000000)')) ؛

كما أشار فينس:

حدد * من المقاطعة حيث ST_Intersects (geom ، ST_Transform (ST_GeometryFromText ('POINT (-91.0 47.0)' ، 4326) ، 2810)) ؛

يمكنك أيضًا استخدام ST_MakePoint () إذا كان ذلك أسهل مع مصدرك من إنشاء WKT.


شاهد الفيديو: كيف تجد X و y اعتراض والرسوم البيانية