คำถามติดแท็ก arcpy

แพคเกจไซต์ที่สร้างโดย Esri เพื่อแสดงตำแหน่งทางภูมิศาสตร์ของ ArcGIS Desktop (ArcMap และ ArcGIS Pro) การประมวลผลการทำแผนที่การทำแผนที่และ Python

2
วาดเส้นขนานในรูปหลายเหลี่ยม (Well Paths) โดยใช้ ArcGIS Desktop?
ฉันต้องการใช้คลาสคุณลักษณะรูปหลายเหลี่ยมที่มีรูปหลายเหลี่ยมไม่สม่ำเสมอหลายรูปแบบและมีส่วนโค้งที่ลากเส้นภายในของรูปหลายเหลี่ยมแต่ละอัน เป็นการดีที่มันจะดีสำหรับอาร์คที่จะหามุมของด้านที่ยาวที่สุดของรูปหลายเหลี่ยมและวาดเส้นขนานไปยังด้านนั้น แต่เพื่อให้มันง่ายฉันคิดว่าถ้าฉันสามารถป้อนหนึ่งมุมสำหรับเส้นขนานทั้งหมดนั่น จะง่ายขึ้น มุมของเส้นความกว้างระหว่างเส้นความยาวต่ำสุด / สูงสุดและความกว้างของบัฟเฟอร์จากด้านข้างของรูปหลายเหลี่ยมเป็นเกณฑ์พื้นฐานของฉัน ภาพที่แนบถ้าช่วยได้

3
การตั้งค่าแบบสอบถามความหมายในชั้น ArcPy จาก shapefile?
ฉันพยายามกำหนดตัวเลือกเพื่อตั้งค่าคิวรีเลเยอร์การกำหนดโดยใช้ ArcPy ฉันรู้ว่ามันเป็นไปได้เมื่อใช้ arcpy.mapping.ListLayers () อย่างไรก็ตามในสถานการณ์นี้ฉันกำลังโหลดในรูปร่างและใช้ arcpy.MakeFeatureLayer_management () ใน ArcPy ฉันต้องการตั้งค่าคิวรีการสืบค้นบนเลเยอร์ที่ฉันสร้างจากการใช้ตัวประมวลผลทางภูมิศาสตร์นี้ เป็นไปได้ไหม

2
การเขียนสคริปต์ที่สามารถโทรได้ทั้ง Arcpy และ PyQGIS?
ฉันใช้เวลาสักครู่เพื่อค้นหาคำตอบที่ชัดเจนในหัวข้อนี้และยังไม่สามารถบรรลุเป้าหมายของฉันในการเข้าถึง PyQGIS ในสคริปต์แบบสแตนด์อะโลนได้ มีการให้คำตอบบางส่วนไว้ในคำถามต่าง ๆ มากมายเช่น: แอปพลิเคชันแบบสแตนด์อโลนที่ใช้ QGIS และตัวแปรสภาพแวดล้อม pyQgis ในสคริปต์สแตนด์อะโลนข้อผิดพลาดในการโหลดเวกเตอร์ การเขียนสคริปต์ Python แบบสแตนด์อโลนโดยใช้ PyQGIS? ส่วนใหญ่ thourough คำตอบที่ฉันได้พบถูกจัดให้โดย @gene ที่นี่ สิ่งที่ฉันสนใจเป็นพิเศษคือสามารถเขียนสคริปต์ที่สามารถเรียกใช้ทั้ง Arcpy และ PyQGIS ฉันได้ตั้งค่าตัวแปรระบบทั้ง PATH และ PYTHONPATH ตามเอกสารประกอบตำรา PyQGIS เป็น: C:\OSGeo4W\apps\qgis\bin,%PATH%;C:\Python27\ArcGIS10.2\Lib\site-packages\PyQt4;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio …

3
การสร้างรายการตัวเลือกหลายค่าใน ArcGIS โดยใช้การตรวจสอบเครื่องมือโดยไม่ใช้ความถี่?
ฉันกำลังพยายามปรับรูปแบบและชุดสคริปต์ที่พบในเว็บไซต์บล็อกของ ESRI ชื่อ 'การสร้างรายการตัวเลือกหลายค่า' อย่างไรก็ตามฉันได้ข้อสรุปว่าส่วนหนึ่งของการตรวจสอบความถูกต้องที่ใช้ในสคริปต์ฝังตัวนั้นอาศัยเครื่องมือ 'ความถี่' เพื่อให้สามารถทำงานได้อย่างถูกต้อง แต่สามารถใช้งานได้เฉพาะกับสิทธิ์การใช้งานขั้นสูง (อ่อนแอ) โพสต์บล็อกอธิบายเวิร์กโฟลว์และสถานที่ในการดาวน์โหลดแบบจำลองและสคริปต์ (แต่ฉันจะโพสต์ไว้ที่นี่ตามคำร้องขอ) เท่าที่ฉันสามารถบอกได้ว่าเป็นหน้าที่หลักของฉันในการสร้างรายการตัวเลือกหลายค่า: .. เป็นที่สคริปต์การตรวจสอบความถูกต้องทำงานอย่างถูกต้อง หากไม่มีการตรวจสอบความถูกต้องฉันไม่สามารถรับค่าจากฟิลด์ให้ปรากฏเป็นรายการได้ มีสิ่งใดบ้างที่ฉันสามารถลบออกจากสคริปต์ตรวจสอบนี้เพื่อรับฟังก์ชั่นที่ฉันใช้อยู่หรือมีวิธีแก้ไขชั่วคราว ฉันไม่คุ้นเคยกับกระบวนการตรวจสอบ นี่คือรหัสสำหรับการตรวจสอบความถูกต้อง (ฉันกำลังจะโพสต์เป็นตัวอย่างโค้ด แต่ดูเหมือนว่าจะติดตามได้ง่ายกว่า): [ หมายเหตุบรรณาธิการ:นี่คือรหัสการตรวจสอบจริงภาพไม่ถูกต้อง] import arcpy class ToolValidator(object): """Class for validating a tool's parameter values and controlling the behavior of the tool's dialog.""" def __init__(self): """Setup arcpy and the list of tool …

4
การรีเฟรชตารางแอตทริบิวต์เปิดใน ArcMap โดยใช้ ArcPy แทนที่จะเป็น ArcObjects?
ฉันกำลังใช้เครื่องมือคำนวณฟิลด์ GP จากอาร์คpyใน ArcMap เมื่ออัปเดตค่าแถวแล้วจะไม่ปรากฏจนกว่าฉันจะใช้เครื่องมือ Reload Cache (ตัวเลือกตาราง> โหลดแคชใหม่) ฉันจะรีเฟรชตารางแอตทริบิวต์โดยอัตโนมัติโดยไม่ต้องใช้ ArcObjects ได้อย่างไร ฉันได้ลองอัปเดตการค้นหาคำจำกัดความตามที่แนะนำโดย @ blah238 โดยใช้ python คุณจะ "reload cache" ตาราง Attribute ที่เปิดได้อย่างไร แต่วิธีนี้ไม่ได้ช่วย การรีเซ็ตแหล่งข้อมูลไม่ใช่ตัวเลือกเนื่องจากคลาสคุณลักษณะอาจอยู่ในเซสชันแก้ไขและฉันไม่ต้องการสูญเสียการเชื่อมต่อไปยังแหล่งข้อมูล

2
ค้นหา Python script เพื่อสร้างไฟล์. mdd หรือไม่
ฉันใหม่สำหรับทั้ง ArcGIS และ Python ความต้องการของฉันคือการดำเนินการด้วยตนเองด้านล่างโดยอัตโนมัติ: การสร้างเลเยอร์ใน ArcGIS สำหรับเดสก์ท็อป หากต้องการใส่ไว้ในคำอื่นให้สร้างเอกสาร ArcMap (.mxd) เผยแพร่เอกสาร ArcMap ที่สร้างขึ้น (ในขั้นตอนที่ 1) เป็นบริการไปยัง ArcGIS Server ขณะนี้เรากำลังดำเนินการด้วยตนเอง ฉันเจอสคริปต์เพื่อทำให้ขั้นตอนที่ 2 ใช้ Python โดยอัตโนมัติ ฉันจะทำให้ขั้นตอนที่ 1 และขั้นตอนที่ 2 เป็นอัตโนมัติได้อย่างไร

4
การสร้างเส้นจากพิกัดจุดจับคู่กับ ArcPy?
ฉันมีบางจุดที่จับคู่พิกัด (จุดเริ่มต้นและจุดสิ้นสุด) ซึ่งฉันต้องแปลงเป็นเส้น จนถึงตอนนี้ฉันใช้ส่วนต่อท้ายของพิกัดทั้งสองใน a pippo.Point(), a pippo.CalculateGeometry()เพื่อกำหนดรูปทรงเรขาคณิตของแต่ละ piont และpippo.append(defined geometry)เพื่อระบุคู่ของจุดแล้ว PointsToLine เพื่อรับสายของฉัน นี่เป็นเวลาค่อนข้างแพงในการทำหลายร้อยบรรทัด มีวิธีที่สั้นกว่านี้หรือไม่? ตัวอย่างเช่นวางจุดเริ่มต้นและจุดสิ้นสุดของแต่ละบรรทัดในเขตข้อมูลที่แตกต่างกันของตารางเดียวและนำเข้าบรรทัดโดยตรงโดยไม่ผ่านสำหรับจุดเรขาคณิต

5
กำลังรับเส้นทางเต็มของเลเยอร์ที่เลือกในกล่องดรอปดาวน์สำหรับเครื่องมือสคริปต์ ArcGIS Python หรือไม่
ฉันมีเครื่องมือที่ใช้สคริปต์ Python ใน ArcGIS หนึ่งในพารามิเตอร์สำหรับเครื่องมือคือไฟล์อินพุตแรสเตอร์ซึ่งฉันได้ตั้งค่าไว้ (โดยใช้คุณสมบัติของเครื่องมือภายในกล่องเครื่องมือ) ให้เป็นเลเยอร์แบบแรสเตอร์ ซึ่งหมายความว่าเมื่อฉันรันเครื่องมือฉันจะได้รับตัวเลือกให้เลือกพารามิเตอร์นั้นจากรายการดรอปดาวน์ของเลเยอร์แรสเตอร์ที่โหลดในปัจจุบันหรือโดยการนำทางเพื่อค้นหาเลเยอร์แรสเตอร์ใหม่ภายในระบบไฟล์ ฉันใช้arcpy.GetParameterAsText(0)รหัสมาตรฐานเพื่อรับพารามิเตอร์ลงในสคริปต์ Python ของฉัน สิ่งนี้ใช้ได้ดีเมื่อฉันเลือกไฟล์โดยเรียกดูผ่านระบบไฟล์เนื่องจากข้อความในกล่องโต้ตอบเป็นเส้นทางแบบเต็มไปยังไฟล์ แต่เมื่อฉันเลือกจากรายการแบบเลื่อนลงข้อความที่ฉันได้รับกลับเป็นเพียงชื่อไฟล์ (เช่นfile.tif) . รหัสที่ฉันกำลังเรียกใช้จำเป็นต้องทราบเส้นทางแบบเต็มไปยังไฟล์ - ฉันจะได้รับสิ่งนี้ได้อย่างไร หากฉันสามารถสันนิษฐานได้ว่าไฟล์นั้นอยู่ในพื้นที่ทำงานเสมอฉันก็สามารถต่อท้ายชื่อไฟล์ได้arcpy.env.workspaceแต่ฉันไม่สามารถสรุปได้ ฉันจำเป็นต้องวนซ้ำทุกเลเยอร์ที่โหลดจนกว่าฉันจะหาชื่อที่มีชื่อเดียวกันแล้วค้นหาเส้นทางแบบเต็มหรือมีวิธีที่ง่ายกว่าหรือไม่

3
ลบล็อคในระดับคุณลักษณะ
เมื่อฉันพยายามลบคลาสฟีเจอร์หลังจากหรือระหว่างการใช้งานแอป Arcgis engine ซึ่งใช้คลาสฟีเจอร์เดียวกันฉันพบข้อผิดพลาดเกี่ยวกับการล็อคดังนั้นฉันจึงไม่สามารถล็อคได้จนกว่าจะรีสตาร์ทคอมพิวเตอร์ ฉันต้องการทราบวิธีลบการล็อกโดยใช้ arcpy หรือ arcobjects 10.1 มันจะสมบูรณ์แบบถ้าฉันสามารถขี่ล็อกในแอพ arcengine ซึ่งยังล็อคฐานข้อมูลทางภูมิศาสตร์ฉันได้เห็นโพสต์ที่แตกต่างกันใน SE เกี่ยวกับล็อค แต่ไม่มีใคร ของพวกเขาให้โซลูชั่นเพื่อล็อคฟรีโดยใช้ ArcObjects

5
แยกรูปหลายเหลี่ยมกับเส้นโดยใช้ ArcPy?
ในการดูการบัฟเฟอร์ด้วยสิ่งกีดขวางทางกายภาพโดยใช้ ArcGIS for Desktop? มันเกิดขึ้นกับฉันว่าฉันไม่แน่ใจว่าจะใช้เครื่องมือประมวลผลทางภูมิศาสตร์ใน ArcGIS เพื่อแยกรูปหลายเหลี่ยมด้วยเส้นโดยใช้โปรแกรมอย่างไร คุณจะใช้เครื่องมือ Cut Polygonsหรือเครื่องมือSplit Polygons บนแถบเครื่องมือ Topologyแต่คุณจะทำภารกิจเดียวกันให้สำเร็จได้อย่างไรโดยใช้ modelbuilder หรือ python groprocessing tools ในการสร้างสคริปต์ ทันทีที่ฉันนึกถึงเครื่องมือทั้งหมดในการวิเคราะห์ tooboxเช่น Union, Identity ฯลฯ แต่เครื่องมือเหล่านี้เป็นเครื่องมือรูปหลายเหลี่ยมหลายเหลี่ยมไม่ใช่เครื่องมือรูปหลายเหลี่ยม แม้แต่เครื่องมือ Splitก็คือ Polygon-Polygon ความคิดใด ๆ

4
หลีกเลี่ยงข้อผิดพลาดล็อคคีมาแบบเอกสิทธิ์ด้วย ArcPy?
ฉันมีสคริปต์สำหรับอัปเดตคุณสมบัติบางอย่างในฐานข้อมูลของฉันทุกคืน (เพียงเพื่อคัดลอกและแทนที่คุณสมบัติบางอย่าง) คุณสมบัตินี้เป็น "อ่านอย่างเดียว" ปัญหาของฉันคือฉันไม่สามารถหลีกเลี่ยงได้ว่าคุณลักษณะเหล่านี้เปิดโดยผู้ใช้และสคริปต์ของฉันสามารถแสดงข้อผิดพลาดต่อไปนี้: ExecuteError: ERROR 000464: Cannot get exclusive schema lock. Either being edited or in use by another application. ฉันสามารถบังคับใช้สคริปต์ phyton ผ่านคำสั่งบางคำคัดลอกไฟล์แม้กระทั่งเปิดโดยผู้ใช้บางคนได้หรือไม่ ฉันสามารถลบการเชื่อมต่อทั้งหมดในฐานข้อมูลของฉันก่อนที่จะเรียกใช้สคริปต์ได้หรือไม่

2
กำลังคำนวณคุณลักษณะใหม่โดยอิงตามการเปลี่ยนแปลงในแอตทริบิวต์อื่นโดยใช้ ArcGIS Desktop กับ Python หรือไม่
ฉันกำลังพยายามจำแนกชุดข้อมูล gps ที่เข้ารหัสเวลาเป็นพฤติกรรมตามคุณลักษณะที่แตกต่างกัน ฉันสร้างคุณลักษณะที่เป็น 0 สำหรับบ้านและ 1 สำหรับออกไปตามสถานที่และตอนนี้ต้องการกำหนดจำนวนการเดินทางออกจากบ้าน (ชุดของคะแนน01111111111110จะเป็นการเดินทางหนึ่งครั้งเพราะเริ่มต้นและสิ้นสุดที่บ้าน) ฉันได้เพิ่มฟิลด์แอททริบิวที่จะมีหมายเลขการเดินทาง แต่ไม่ทราบวิธีการคำนวณฟิลด์ดังนั้นจึงเป็นไปตามฟิลด์บ้าน / ออกไป นี่คือตัวอย่างของข้อมูล GPS (ใช้ "*" เพื่อระบุข้อมูลที่ไม่เกี่ยวข้องและเพียงทำดัชนีครั้งที่ 1, 2 ฯลฯ ) ตัวบ่งชี้ "บ้าน / ออกไป" ที่อธิบายไว้ข้างต้นและตัวบ่งชี้การเดินทางที่ต้องการ "การเดินทาง" ซึ่งฉันต้องคำนวณ: Time Lat Lon Home/Away Trip 1 * * 0 0 2 * * 1 1 3 * * 1 1 .... …

1
Python Script เพื่อสร้างตารางโดยใช้ Data Driven Pages
ฉันพยายามแปลงสคริปต์ python เพื่อแสดงตาราง (ตาม dbf) ของคุณสมบัติที่อยู่ภายในหน้าข้อมูลที่ขับเคลื่อนด้วย จนถึงตอนนี้ฉันมีสคริปต์ที่สามารถรีเฟรชแผนที่ไปยังตารางที่ระบุได้สำเร็จ แต่ไม่ได้อัปเดตตาราง ฉันได้ตั้งค่าเป็นกล่องข้อความสามกล่องที่ควรปรับปรุงด้วยฟิลด์เฉพาะสามฟิลด์เมื่อผู้ใช้เรียกใช้สคริปต์จาก ArcToolbox ข้อเสนอแนะใด ๆ เกี่ยวกับสาเหตุที่ตารางของฉันไม่อัพเดท import arcpy, sys, os #Reference current MXD mxd = arcpy.mapping.MapDocument("current") #Get input parameter Name = arcpy.GetParameterAsText(0) #Reference data frames mapatlasDF = arcpy.mapping.ListDataFrames(mxd, "Layers")[0] locatorDF = arcpy.mapping.ListDataFrames(mxd, "Locator Map")[0] #Reference appropriate layers atlasLyr = arcpy.mapping.ListLayers(mxd, "PinalCreekMapAtlas_HalfMile", mapatlasDF)[0] locatorLyr …

4
การล็อคไฟล์ ArcGIS Python SearchCursor?
ฉันมีสคริปต์ที่ได้รับค่าจากเขตข้อมูลของ shapefile เพื่อกลับไปที่ผู้ใช้ ดูเหมือนว่าเฉพาะเมื่อ arcpy.SearchCursor เรียกว่า ArcMap 10.0 ล็อคไฟล์และจะไม่ถูกลบหลังจากสคริปต์ทำงานเสร็จ เพื่อปิดล็อคฉันต้องปิด ArcMap ในสคริปต์ฉันลบวัตถุ SearchCursor หลังจากใช้งานเช่นเดียวกับวัตถุแถว วิธีที่ฉันใช้งานสคริปต์ก็คือพยายามที่จะลบโฟลเดอร์เวิร์กสเปซในการทำงานครั้งต่อไป แต่ไม่สามารถทำได้เพราะล็อค ... จนกว่าจะปิด ArcMap แน่นอน มีคำแนะนำใด ๆ ในการทำให้ล็อคนี้หายไปหรือไม่?

2
รายการคลาสคุณลักษณะในฐานข้อมูล Geod หลายรายการในโฟลเดอร์ที่ใช้ ArcPy?
ฉันมีโฟลเดอร์ที่มีฐานข้อมูลทางภูมิศาสตร์มากมายอยู่ในนั้น ภายในฐานข้อมูลทางภูมิศาสตร์เป็นชั้นเรียนคุณลักษณะ ฉันต้องการรับรายการคุณลักษณะคลาสในฐานข้อมูลภูมิศาสตร์เหล่านี้โดยใช้สคริปต์ Python ฉันเพิ่งได้รับเท่าที่แสดงรายการฐานข้อมูลภูมิศาสตร์ ไม่มีใครมีข้อเสนอแนะในการแสดงคลาสของคุณลักษณะในฐานข้อมูลภูมิศาสตร์หรือไม่ บรรทัดรายการพิมพ์ในสคริปต์ของฉันให้ผลลัพธ์ต่อไปนี้แก่ฉัน: C:\output\data.gdb C:\output\otherdata.gdb C:\output\somethingelse.gdb ฉันต้องการสร้างรายการคุณลักษณะคลาสในฐานข้อมูลภูมิศาสตร์ด้านบน ข้างล่างนี้เป็นสคริปต์ของฉันจนถึงตอนนี้ import arcpy, os, sys from arcpy import env arcpy.env.workspace = "D:\\output" inWorkspace = arcpy.env.workspace workspaces = arcpy.ListWorkspaces("*", "FileGDB") for item in workspaces: print item #This part gives me the print statements I shared above # fcList = arcpy.ListFeatureClasses() …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.