أكثر

حسابات حقل البيانات الجدولية المتسلسلة بقيم خالية باستخدام Arcpy

حسابات حقل البيانات الجدولية المتسلسلة بقيم خالية باستخدام Arcpy


لدي سلسلة من إحداثيات x و y محولة من ملف .ply. لقد تمكنت من استخراج الملف إلى تنسيق x ، y مناسب لـ arcmap ، المشكلة التي لدي هي أنها نقاط تنسيق تمثل 90 مضلعًا. إذن في خريطة arcmap لدي إحداثيات للمضلع 1 ، ثم سلسلة من الصفوف الفارغة ، ثم إحداثيات لـ poly 2 وما إلى ذلك. لقد قمت بإدخال رقم المضلع يدويًا باستخدام آلة حاسبة للمجال ولكن مع 91 يستغرق مني وقتًا طويلاً ، لذلك اعتقدت أنه يمكنني استخدام نص العمليات الحسابية المتسلسلة. كل صف فارغ هو نفس عدد الصفوف بين كل بولي (7). ما أحتاجه هو برنامج نصي يقوم بتحديث حقل بالمضلع 1 ، ويتخطى 7 صفوف حقل فارغة ، مضلع 2 ، إلخ.

المشكلة الأخرى هي أن عدد النقاط في كل مضلع مختلف ، وبالتالي فإن الطريقة الوحيدة للتمييز بين كل مضلع هي الصفوف الفارغة الواقعة بينهما.

قصدت هذا السيناريو على وجه الخصوص

http://help.arcgis.com/AR/ARCGISDESKTOP/10.0/HELP/index.html#//005s0000002m000000

الحسابات التراكمية والمتسلسلة


إليك طريقة واحدة لترقيم المضلعات:

import arcpy fc = "C:  temp  data.gdb  points" polygon = 1 nulls = 0 with arcpy.da.UpdateCursor (fc، ("x"، "Polygon")) كمؤشر: للصف في المؤشر: إذا كان الصف [0] ليس بلا: row [1] = polygon cursor.updateRow (row) else: nulls + = 1 if nulls == 7: polygon + = 1 nulls = 0

غير الناديمتغير إلى موقع فئة ميزة النقطة الخاصة بك. يمكنك تشغيل هذا مباشرة في نافذة Python في ArcMap.


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

import arcpy featureClass = "C:  path  to  your  geodatabase_and  featureclass" الحقول = ("x"، "y"، "Polygon") مع arcpy.da.UpdateCursor (featureClass ، الحقول) كـ المؤشر: aUniqueID = 1 مجمدة = خطأ للصف في المؤشر: إذا كان الصف [0]: إذا كان مجمدًا: مجمدة = صف خاطئ [2] = aUniqueID إذا لم يكن صفًا [0]: إذا لم يتم تجميده: aUniqueID + = 1 مجمد = مؤشر حقيقي .updateRow (صف)

شاهد الفيديو: Python: Map Automation in ArcGIS Pro