أكثر

ArcMap 10 ؛ بناء الجملة لأدنى عامل في حاسبة المسح


أرغب في التمديد الخطي لصيغة الشبكة النقطية التي تحتوي على عمود / صفوف 3128 ، 3503 بدقة 30 مترًا باستخدام الصيغة التالية في الآلة الحاسبة النقطية لـ arcmap 10.1.

("نقطية" - FocalStatistics ("raster"، NbrRectangle، 30، 30، "Minimum") / (FocalStatistics ("raster"، NbrRectangle، 30، 30، "Maximum") - FocalStatistics ("raster"، NbrRectangle، 30، 30 ، "الحد الأدنى"))

لكن هذا يعطيني الخطأ أثناء التنفيذ. لقد جربت أيضًا المعادلة البسيطة ولكنها لم تنجح.

("نقطية" - دقيقة ("نقطية")) * 1.0 / (حد أقصى ("نقطية") - دقيقة ("نقطية")) + 0.0

تم عرض الخطأ:

000539: رسالة خطأ من Python. ArcGIS 10.1 تحديد موقع الموضوع الوصف الحساب المستخدم بواسطة أداة حساب الحقل أو حساب القيمة غير صالح. رسالة الخطأ هذه ستدرج خطأ Python المحدد. الحل يغطي رمز الخطأ هذا عددًا من أخطاء Python: خطأ المثال 1: الاستثناءات. TypeError: لا يمكن ربط كائنين 'str' و 'int' ، أعلاه خطأ خاص بـ Python. تحاول العملية الحسابية إضافة أو تسلسل سلسلة ورقم. مثال الخطأ 2: شكل حقل غير صالح @ مسافة أعلاه خطأ في استخدام كائن الهندسة. طريقة المسافة ليست طريقة صالحة للكائن الهندسي. بالنسبة إلى مشكلات Python المحددة ، استشر تعليمات Python الخارجية لمزيد من المعلومات ، أو استشر تعليمات حساب الحقل أو حساب القيمة لمزيد من المعلومات حول هذه الأدوات.

ما هي الصيغة الصحيحة.


تعبير المستطيل غير صحيح ، يجب تحديد الحي الخاص بك على النحو التالي:

FocalStatistics ("نقطية" ، NbrRectangle (30،30) ، "MINIMUM")

نظرًا لأن NbrRectangle هو كائن… لتحديد أول استخدام للحساب:

("نقطية" - FocalStatistics ("raster"، NbrRectangle (30،30)، "MINIMUM")) / ((FocalStatistics ("raster"، NbrRectangle (30،30)، "MAXIMUM")) - (FocalStatistics ("raster) "، NbrRectangle (30،30) ،" MINIMUM ")))

المعادلة "البسيطة" هي أي شيء ولكن ... لا يمكن الحصول على الحد الأدنى والحد الأقصى إلا عند إنشاء الإحصائيات ، وإذا لم تكن كذلك ، فستتلقى خطأ يقول"قيمة لا يمكن الحصول عليها"او هناك شيء ما على طول هذه الخطوط. استخدام الحد الأدنى والحد الأقصى للخطوط النقطية بالكامل:

Con (IsNull ("raster")، - 9999، ("raster" / (float (arcpy.GetRasterProperties_management ("raster"، "MAXIMUM"). getOutput (0)) - float (arcpy.GetRasterProperties_management ("raster"، " MINIMUM "). getOutput (0))) * 100))


شاهد الفيديو: GIS Tutorial 1: How To Georeference a Scanned Map (شهر اكتوبر 2021).