bk2011 python i arc gis 10
TRANSCRIPT
Python i ArcGIS 10
Av Torgrim Høydahl
Python i ArcGIS 10
• ESRI har omfavnet Python i ArcGIS 10
• Python rammeverket i ArcGIS inkluderer:
– ArcPy (ny i ArcGIS 10)
– Python window (ny i ArcGIS 10)
– Python script tool rammeverk
• En ting til som er nytt med ArcGIS 10 og geoprosessering……
VBA støtte• Fra versjon 10.1 så vil man ikke kunne kjøre VBA-skripter i
ArcGIS
• Kan fortsatt kjøres i 10.0 med egen lisens
• Legge en plan for porting til .Net (arcobjects) eller python
(ArcPy)
ArcPy– ESRI’s python bibliotek (site package)
– ArcPy-biblioteket er måten ArcGIS leverer GIS-funksjonalitet til python
– Erstatter arcgisscripting-modulen
• …men bruker fortsatt denne i bunn
• Bakoverkompatibel
– Dagens versjon bygger på Python-versjon 2.6 (installert med ArcGIS)
– To viktige moduler:
• Mapping-modul (arcpy.mapping) for interaksjon med ArcMap (mxd, lyr) og for å
automatisere prosessen for å lage kartbøker
• Spatial Analyst modul (arcpy.sa) for map algebra kalkulasjoner.
ArcPy
• Ved å importere arcpy får vi…– Code completion
– Direktekobling til referanse-dokumentasjon
– Liste over påkrevde parametere
Python vinduet• Python aksess and interaksjon med ArcGIS
• Mye brukt til å teste ut kodesnutter mot dataene
• Bra til å teste ut ArcPy, kjøre GP verktøy samt teste ut
pythonfunksjonalitet
• Eksekvere en eller flere linjer med kode
• Laste inn scripter for raskt eksekvering i ArcGIS og lagre
skripter til senere bruk
Demo• Python vinduet
ArcPy Mapping• Ny kartproduksjonsmodul som er en del av gp ArcPy biblioteket
• Et pythonskripting API som lar brukere:
– Håndtere kartdokumenter, lyr-filer og data
• Finne lag med datakilde x og bytte ut med datakilde y
• Oppdatere et kartlags symbolisering for flere mxd-filer
• Generere rapporter som lister opp informasjon om mxd-filer
– Datakilder, brutte stier, osv
– Automatisere eksport og printing av kartdokumenter
– Automatisere kartproduksjon og lage PDF kartblader
Demo
• Mapping module– Layout-elementer
– Export to pdf, data driven pages• Use ReportLab-related links:
• Main: http://www.reportlab.com/software/opensource/rl-toolkit/
• API reference:http://www.reportlab.com/apis/reportlab/2.4/
• User Guide: http://www.reportlab.com/docs/reportlab-userguide.pdf
Geoprocessing Model and Script Tool Gallery
– http://resources.arcgis.com/gallery/file/geoprocessing
Felt kalkulatoren
• Har blitt forbedret til å fungere med python-skripting
• Ikke lenger støtte for VBA “code blocks”
• Numeriske-, streng- og dato-funksjoner blir populert i liste
basert på skriptespråket man velger (python eller vb script)
Mens vi venter på 10.1
• Noen spennende drypp fra ESRI– Bruke Python for å lage ArcGIS Desktop Add-Ins
• ArcGIS 10.1 vil ha støtte for å bruke python til å tilrettelegge Desktop add-ins (samling av verktøy på en
verktøylinje).
– Python Toolboxes
• Mulighet for å lage script-tools i ren python (ikke separat tbx og .py-skript), hvor man setter parameter
definisjoner, valideringskode og kildekode, alt på et sted. Forenkler måten vi lager og vedlikeholder
skritpeverktøyene.
– Data Access Module (da)
• Ny pythonmodul for å jobbe med data. Forbedret cursor-støtte (raskere ytelse), tillater kontroll på
redigeringssesjoner og støtte for versjonering og replikerings-arbeidsflyter.
Kurs hos Geodata
• Geoprosessering med skripting i Python
– 23 - 25 februar
– 9 - 11 mai