Lisää

Valitse monikulmioita yksitellen ja vie ne arcpy: n avulla

Valitse monikulmioita yksitellen ja vie ne arcpy: n avulla


Minulla on muototiedosto, joka sisältää yli 200 pääkaupunkia. Jokaisessa kaupungissa on joitain traktorin polygoneja. Dbf-taulukko näyttää tältä:

tract city xvar 1 0040 20 2 0040 12 3 0040 45… 5 5602 22 6 5602 44…

Tavoitteenani on valita kaupunki ja tallentaa se erilliseksi muototiedostoksi, jonka nimi on sama kuin kaupungin koodi:

0040.shp

tract city xvar 1 0040 20 2 0040 12 3 0040 45…

5602.shp

tract city xvar 5 5602 22 6 5602 44…

Kuinka minun pitäisi automatisoida tämä prosessi kaikille kaupungeille arcpy-ohjelmalla?


Voit käyttää tätä toimintoa valitsemalla Valitse (Analyysi). Tällä menetelmällä on lisäetuna attribuuttien säilyttäminen. On kaksi päävaihetta:

  1. Luettele kaikki yksilölliset kaupunkikoodit generaattorin avulla
  2. Selaa yksittäisten kaupunkikoodien läpi ja lisää koodi Select SQL -lausekkeeseen

Tuo arcpy, os # Määritä lähtötyötila outws = r'C:  temp  out '# Aseta syötteen muotoinen tiedosto shp = r'C:  temp  test.shp' # Hae luettelo yksilöllisistä kaupunkikoodeista generaattorikaupunkien avulla = set (rivi [0] riville arcpy.da.SearchCursorissa (shp, "kaupunki")) # Valitse yksilölliset kaupungit ja vie c: n uusiin muototiedostoihin kaupungeissa: out_fc = os.path.join (outws, c) # Määritä lähdön nimi missä_clause = '"kaupunki" = '% s  "% c # Valitse kaupungin nimen perusteella arcpy.Select_analysis (shp, out_fc, where_clause) # Suorita Select

Mallien rakennustyökalun avulla voit toistaa ominaisuuksia ja viedä ne erillisenä ominaisuusluokkana. Jos napsautat hiiren kakkospainikkeella avointa tilaa hiiren kakkospainikkeella mallinrakennusohjelmassa, voit valita iteraattorit ja myös vain mallin työkalun jäsentämispolun. Avaa jäsennyspolku ja valitse avattavasta valikosta nimi. Yhdistä kaikki kuten minulla on alla olevasta kuvasta, käytä muuttuvaa korvaamista siirtääksesi ominaisuuden nimi ominaisuusluokan ominaisuusluokan työkaluun. Tämän pitäisi tehdä juuri se, mitä yrität saavuttaa.


Jos tämä on kertaluonteinen työ, suosittelen, että käytät tällöin split by attributes -työkalua.

http://www.umesc.usgs.gov/management/dss/split_by_attribute_tool.html

Jos haluat rakentaa oman työkalun arcpy: n avulla, tässä on ehdotukseni.

  1. Löydä kaikki kaupunkien ainutlaatuiset arvot
  2. Valitse pääkerros näiden kaupunkien ainutlaatuisten arvojen perusteella ja vie se kansioon.

Liuotan traktorit kaupunkikohtaisesti ja käytän sitä sitten analyysityökaluryhmän Split-työkalun kanssa erottaaksesi raidat.


Katso video: ArcGIS для разработчиков - обзор новейших технологий Esri., Дата+