Conversie AML naar Python

Met ArcGIS 10.1 is een einde gekomen aan de beschikbaarheid van ArcInfo Workstation bij een ArcGIS installatie. Bestaande AML's kunnen dan dus niet meer gebruikt worden. Het kan de moeite lonen om AML-scripts om te zetten naar Python-scripts zodat bestaande processen ook in de nieuwe ArcGIS omgeving uitgevoerd kunnen worden.

 

AML en GRID

Een eerste omzetting is reeds gedaan voor een omvangrijk model, dat oorspronkelijk bestond uit 17 AML routines. Binnen deze routines vinden uitgebreide analyses en controles plaats. De analyses bestonden voornamelijk uit GRID-bewerkingen. Om de module te kunnen gebruiken onder ArcGIS 10.1 is de AML code omgezet naar Python. Vanwege de vele GRID-bewerkingen is er in Python gebruik gemaakt van de Spatial Analyst module van ArcPy.

 

Van AML naar Python

Tijdens de conversie is uitgebreid aandacht besteed aan het zoeken naar de juiste Python equivalenten voor de gebruikte AML functies. Zo zijn er:

  • Commando's die van naam veranderd zijn. Soms betreft dit alleen de hoofdlettergevoeligheid:
    isnull → IsNull
  • Commando's waarvan de parameters veranderd zijn:
    zonalmax → ZonalStatistics

 

AML naar Python conversie

 

 

Performance

De Python-scripts worden achter elkaar gedraaid, net zoals dat oorspronkelijk in de AML-versie was. Daarnaast is gezocht naar performance-verbetering. Om meerdere scripts tegelijkertijd te kunnen laten draaien is gebruik gemaakt van subprocesses in een processlist. Dit werkt alleen als er meerdere processoren beschikbaar zijn.

 

ArisFlow

Om de aansturing van de Python-scripts eenvoudiger te maken, kunnen de scripts ingebouwd worden in een ArisFlow-schema. Dit is echter niet noodzakelijk voor het draaien van de scripts.

 

AML naar Python in ArisFlow

 


Wilt u ook AML's naar Python om laten zetten door ARIS?
U kunt meer informatie aanvragen over de conversie van AML naar Python door ARIS.