$geoIntersects (تقاطع الأشكال الهندسية)

آخر تحديث: 2026-10-09

$geoIntersects (تقاطع الأشكال الهندسية)

يجد $geoIntersects المستندات التي يتقاطع شكلها الهندسي GeoJSON مع الشكل المعطى. `{ loc: { $geoIntersects: { $geometry: { type: 'Polygon', coordinates: [...] } } } }`. وعلى خلاف $geoWithin (نقطة داخل منطقة)، يختبر $geoIntersects ما إذا كان الشكلان الهندسيان — نقطتان أو خطان أو مضلعان — يتقاطعان. يتطلب فهرس 2dsphere.

الفئةالمكاني
إصدار MongoDB2.4+
لغة المثالmongosh (الطرفية)

📝 الصيغة

{ <location field>: { $geoIntersects: { $geometry: <GeoJSON geometry> } } }

⚙️ المعلمات

حقل الموضعالحقل الذي يخزّن الموقع.
هندسة GeoJSONكائن GeoJSON: ‏Point أو LineString أو Polygon وما إلى ذلك.

القيمة المرجعة:مؤشر المستندات المطابقة

▶ مثال

نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):

// $geoIntersects: المحطات المتقاطعة مع مسار
db.stops.find({
  loc: { $geoIntersects: {
    $geometry: { type: 'LineString', coordinates: [[0, 0], [1, 1]] }
  } }
})

المخرجات:

// يُرجع المحطات المتقاطعة مع LineString (مثل نقطة على المقطع)

📌 ملاحظات

مزيد من الحالات العملية قريبًا.

📚 دروس ذات صلة

❓ الأسئلة الشائعة

Qكيف يرتبط $geoIntersects بـ $geoWithin؟
A$geoWithin يعني نقطة داخل شكل؛ بينما $geoIntersects يعني تقاطع أشكال — أوسع نطاقًا.
Qهل يمكن لنقطة على حدود المضلع أن تُطابق؟
Aنعم، تُحتسب الحدود كتقاطع.
Qأي فهرس يحتاجه $geoIntersects؟
Aفهرس 2dsphere.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%