Для мене, як підказує ваше запитання, я багато використовую Python для автоматизації пакетної обробки, зокрема, а також для створення будь-яких повторюваних підрахунків спеціалістів. Сьогодні я не використовую ArcPy, тому що не можу дозволити ліцензії ESRI як позаштатний консультант з ГІС. Я багато використовую GDAL / OGR, Shapely, PostGIS, Numpy та SciPy, хоча все, що в моєму списку, можна зробити за допомогою ArcPy (і деякі з них були). Приклади включають:
- Отримання зонної статистики для всієї Великобританії, що спочатку вимагає мозаїки растрових плиток на 20 км двох різних типів даних, виконуючи деякі "мапематики" на цих растрах, об'єднуючи еквівалентну площу 10-кілометрової плитки з багатокутниками, обчислюючи зональну статистику результату растрова мапематика та приєднання таблиці статистичних даних до вихідних векторних даних перед виведенням у filefiles у структурі логічного каталогу та запису на компакт-диск для клієнта.
- Виконуючи послідовні обчислення видимості кожні 100 м уздовж дороги чи колії, а потім присвоюють результати обчислення як значення M назад у даних маршруту.
- Автоматизований процес створення 3D-ландшафтних моделей шляхом мозаїки / об'єднання плиток растрових та векторних даних, відсікання до потрібної області та перетворення в фірмовий (не-ГІС) 3D-формат. Я багато використовую маленьку бібліотеку Python, яку я розробив для цього у своїй позаштатній роботі.
- Один з величезних проектів, над якими я працював у команді, використовував ArcPy для створення пакетних процесів для перетворення або отримання нових даних із даних ГІС у формат з функціями, які може використовуватися процедурним генератором комп'ютерних ігор-активів. Сценарії геообробки були названі пакетною обробкою «підлеглого водія», також написаного на Python та проходження через Django.
- Python дуже корисний навіть для невеликих завдань, особливо там, де є повторення (наприклад, функція при обробці функції). Модель ArcGIS 'Builder Model значно покращується за допомогою засобів управління потоками, що надійшли у версії 10, але навіть так, він все ще часто не може забезпечити необхідний контроль та / або швидше і простіше просто записати процес в ArcPy, ніж намагатися примусовий конструктор моделей.
- Я створив інструмент в Python для аналізу розгорнутого контуру (щоб підрахувати, чи може дуже довгий транспортний засіб рухатись за певним маршрутом і де причіп, швидше за все, вріжеться в тісні повороти між будівлями. Це ще один фахівець, який займеться позаштатним арсенал
- Отримання результатів від Mapnik
- Перш ніж ArcGIS став багатопотоковим, я використовував Python, щоб дозволити мені нерести підпроцеси, які іноді могли пришвидшити довгі, повільні обчислення без накладних витрат ArcMap, що захаращувало пам'ять.
Python в комерційній геопроцедурі чудовий тим, що у вас є вся швидкість і стислість сценаріїв, які забезпечує Python, і швидкість обробки компільованого коду в стилі C, оскільки, хоча Python інтерпретується, він здебільшого викликає складений код C-стилю під кришкою. Python надає клей, який може вмістити багато послідовних завдань з геообробки, і перелік вище - лише невеликий знімок деяких речей, для яких я особисто його використовую. У «Старих добрих днях» ми створили файл Watch і мали б ArcInfo записати наш вхід командного рядка, а потім очистити AML (хто пам’ятає мову макроса Arc!), Щоб зробити процес багаторазового використання викликів геопроцедури, склеєних разом з AML. У наші дні це не так інакше, за винятком того, що ми використовуємо Python або C # як клей.