أكثر

كيف يمكنني إزالة الفجوة بين حدي مضلعين في QGIS؟

كيف يمكنني إزالة الفجوة بين حدي مضلعين في QGIS؟


لدي حدود مضلعة فوضوية (بيانات نموذجية) يجب أن تشترك في حد ولكن لا:

لقد ألقيت نظرة على بعض الأدوات المقترحة لمشكلة مماثلة باستخدام ArcGIS في سؤال منفصل ولكني بحاجة إلى طريقة ما لـ QGIS (أو حل FOSS4G آخر).

بعض الاحتمالات:

  • يبدو أن v.clean مع "snap" يعمل فقط على الخطوط (لذلك ربما يعمل polys-to-line + v.clean / snap + lines-to-polys؟) ؛
  • مزيج من خطوات المعالجة الجغرافية ، ربما تخزين كل مضلع مؤقتًا (ملء الفجوة) ثم تقاطعها؟

إذا كان عدد المضلعات أصغر نسبيًا وتفضل الاحتفاظ بالحد الأكثر تفصيلاً ، فمن المحتمل أن أجعلها شبه آلية على النحو التالي:

  1. إزالة تداخلات المضلع الأقل تفصيلاً مع البرنامج المساعد Clipper - يمكنك تحديد مضلع أكثر تفصيلاً واستخدام أداة القص التي ستزيل جميع تداخلات المضلعات الأخرى.

  2. استعمال المكون الإضافي AutoTrace لإنشاء مضلع سريعًا يتبع الحدود الأكثر تفصيلاً ، وملء جميع الفجوات بين المضلعين المتجاورين والتداخل الآمن مع المضلع الأقل تفصيلاً - أعتقد في معظم الحالات أن هذا يجب أن يستغرق نقرات قليلة فقط

  3. استخدام دمج الميزات المحددة أداة من الرقمنة المتقدمة لدمج مضلع التتبع التلقائي مع المضلع الأقل تفصيلاً

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


يمكن حلها عن طريق البرنامج الإضافي GRASS أو QGIS GRASS. انظر: https://grasswiki.osgeo.org/wiki/Vector_topology_cleaning

خطوة بخطوة (GRASS 6.4) 1. ابدأ GRASS مع واجهة المستخدم الرسومية

العشب -gui

  1. إنشاء موقع جديد دفع معالج الموقع زر. حدد الإسقاط بواسطة epsg (32736) لا تحتاج إلى إعداد مدى المنطقة الافتراضي.

  2. صحافة بدء جلسة GRASS زر (يجب تحديد الموقع الجديد ، مجموعة الخرائط بيرمانين على ما يرام)

  3. استيراد ملف الشكل الخاص بك

v.in.ogr dsn = / path_to_file / polygon_gap.shp الناتج = polygon_gap snap = 2000

(لقد قمت بقياس أكبر فجوة (حوالي 2 كم) من قبل لمعلمة المفاجئة)

5. تصدير البيانات النظيفة إلى الشكل

v.out.ogr input = polygon_gap type = area dsn = / path_to / polygon_clean.shp

نتيجة


شاهد الفيديو: Digitizing shapefile QGIS