OGRMERGE(1) GDAL OGRMERGE(1)

ogrmerge - ادغام چندین مجموعه داده برداری در یک مجموعه داده واحد

ogrmerge [--help] [--help-general]
            -o <out_dsname> <src_dsname> [<src_dsname>]...
            [-f format] [-single] [-nln <layer_name_template>]
            [-update | -overwrite_ds] [-append | -overwrite_layer]
            [-src_geom_type <geom_type_name>[,<geom_type_name>]...]
            [-dsco <NAME>=<VALUE>]... [-lco <NAME>=<VALUE>]...
            [-s_srs <srs_def>] [-t_srs <srs_def> | -a_srs <srs_def>]
            [-progress] [-skipfailures] [--help-general]

گزینه‌های مختص گزینهٔ -single:

[-field_strategy FirstLayer|Union|Intersection]
[-src_layer_field_name <name>]
[-src_layer_field_content <layer_name_template>]

دستور ogrmerge چندین مجموعه داده برداری را که هر کدام شامل یک یا چند لایه برداری هستند به عنوان ورودی دریافت کرده و آن‌ها را در یک مجموعه داده مقصد کپی می‌کند.

اساساً دو حالت کاری وجود دارد:

  • حالت پیش‌فرض، که در آن هر لایه برداری ورودی به صورت یک لایه مجزا در مجموعه داده مقصد کپی می‌شود.
  • حالت دیگر، که با سوییچ -single فعال می‌شود و محتوای تمام لایه‌های برداری ورودی را به یک لایه مقصد واحد الحاق می‌کند. این حالت فرض می‌کند که ساختار (schema) آن لایه‌های برداری کم‌وبیش یکسان است.

به صورت درونی، این دستور یک فایل VRT -- OGR Virtual Format تولید می‌کند، و اگر قالب خروجی VRT نباشد، تبدیل نهایی با ogr2ogr یا gdal.VectorTranslate() انجام می‌شود. بنابراین برای کاربردهای پیشرفته، می‌توان خروجی را در قالب VRT گرفت، در صورت نیاز آن را به صورت دستی ویرایش کرد و سپس ogr2ogr را اجرا نمود.

نکته:

ابزار ogrmerge یک ابزار پایتونی است و تنها در صورتی که بایندرهای پایتون GDAL در دسترس باشند کار می‌کند.

راهنمایی:

معادل در رابط خط فرمان جدید "gdal":

دستور gdal vector concat را ببینید.

نمایش این پیام راهنما و خروج.
--help-general
نمایش پیام راهنمای مختصر برای گزینه‌های عمومی خط فرمان GDAL و خروج.
نام مجموعه داده خروجی. الزامی است.
<src_dsname>
یک یا چند مجموعه داده برداری ورودی. الزامی است.
انتخاب قالب خروجی. در صورت عدم تعیین، قالب از روی پسوند فایل تشخیص داده می‌شود (پیش‌تر ESRI Shapefile بود). از نام کوتاه قالب استفاده کنید.
در صورت تعیین، تمام لایه‌های برداری ورودی در یک لایه واحد ادغام می‌شوند.
نام لایه برداری خروجی (در حالت single، که پیش‌فرض آن "merged" است)، یا الگویی برای نام‌گذاری لایه‌های برداری خروجی در حالت پیش‌فرض (مقدار پیش‌فرض {AUTO_NAME} است). الگو می‌تواند رشته‌ای شامل متغیرهای زیر باشد که با مقدار محاسبه‌شده از لایه ورودی در حال پردازش جایگزین می‌شوند:
  • {AUTO_NAME}: معادل {DS_BASENAME}_{LAYER_NAME} در صورتی که هر دو مقدار متفاوت باشند، یا {LAYER_NAME} در صورتی که یکسان باشند (مانند shapefile).
  • {DS_NAME}: نام مجموعه داده منبع
  • {DS_BASENAME}: نام پایه (base name) مجموعه داده منبع
  • {DS_INDEX}: اندیس مجموعه داده منبع
  • {LAYER_NAME}: نام لایه منبع
  • {LAYER_INDEX}: اندیس لایه منبع
باز کردن یک مجموعه داده موجود در حالت به‌روزرسانی (update).
بازنویسی مجموعه داده موجود در صورت وجود (برای مجموعه‌های داده مبتنی بر فایل).
باز کردن یک مجموعه داده موجود در حالت به‌روزرسانی، و در صورتی که لایه‌های خروجی از قبل وجود داشته باشند، الحاق محتوای لایه‌های ورودی به آن‌ها.
باز کردن یک مجموعه داده موجود در حالت به‌روزرسانی، و در صورتی که لایه‌های خروجی از قبل وجود داشته باشند، جایگزینی محتوای آن‌ها با محتوای لایه ورودی.
فقط در نظر گرفتن لایه‌های ورودی که نوع هندسه (geometry) آن‌ها با نوع یا انواع مشخص‌شده مطابقت دارد. مقادیر معتبر برای geom_type_name عبارتند از: GEOMETRY، POINT، LINESTRING، POLYGON، MULTIPOINT، MULTILINESTRING، MULTIPOLYGON، GEOMETRYCOLLECTION، CIRCULARSTRING، CURVEPOLYGON، MULTICURVE، MULTISURFACE، CURVE، SURFACE، TRIANGLE، POLYHEDRALSURFACE و TIN.
گزینه ایجاد مجموعه داده (مختص قالب).
گزینه ایجاد لایه (مختص قالب).
انتساب یک سامانه مرجع مکانی (SRS) به خروجی.
بازتصویر/تبدیل مختصات به این SRS در خروجی.
بازنویسی و نادیده گرفتن SRS منبع.
نمایش درصد پیشرفت در ترمینال. تنها در صورتی کار می‌کند که لایه‌های ورودی قابلیت "fast feature count" را داشته باشند.
ادامه عملیات پس از بروز خطا، با نادیده گرفتن عارضه (feature) با خطا مواجه‌شده.
تنها همراه با -single استفاده می‌شود. تعیین می‌کند که ساختار (schema) لایه مقصد چگونه از ساختارهای لایه‌های ورودی ساخته شود. می‌تواند FirstLayer برای استفاده از فیلدهای نخستین لایه یافت‌شده، Union برای استفاده از اجتماع تمام فیلدهای همه لایه‌های منبع، یا Intersection برای استفاده از اشتراک فیلدهای مشترک همه لایه‌های منبع باشد. مقدار پیش‌فرض Union است.
تنها همراه با -single استفاده می‌شود. در صورت تعیین، ساختار لایه مقصد با یک فیلد جدید به نام 'name' گسترش می‌یابد که محتوای آن توسط -src_layer_field_content مشخص می‌شود. بخش مثال ۳ را ببینید.
تنها همراه با -single استفاده می‌شود. در صورت تعیین، ساختار لایه مقصد با یک فیلد جدید گسترش می‌یابد (که نام آن با -src_layer_field_name، یا در غیر این صورت با 'source_ds_lyr' تعیین می‌شود) و محتوای آن توسط layer_name_template مشخص می‌گردد. نحوِ نگارش layer_name_template همانند -nln است.

این برنامه در صورت موفقیت کد وضعیت 0 و در صورت بروز خطا مقداری غیر صفر برمی‌گرداند (خطاهای غیرمسدودکننده‌ای که به صورت هشدار صادر می‌شوند به عنوان اجرای موفقیت‌آمیز در نظر گرفته می‌شوند).

ogrmerge -o merged.vrt *.shp

ogrmerge -o merged.gpkg *.shp

الحاق محتوای france.shp و germany.shp در merged.shp، و افزودن یک فیلد 'country' به هر عارضه که مقدار آن بر اساس لایه منبع 'france' یا 'germany' خواهد بود:

ogrmerge -single -o merged.shp france.shp germany.shp -src_layer_field_name country

Even Rouault <even.rouault@spatialys.com>

1998-2026

August 18, 2026