Я хотів би, щоб наступним чином вибрати (виділити) шар "проект", який перетинає сітку, а потім витягнути запис із вибраного "Сітки". Мені не потрібно зберігати шар.
Примітка. Запуск сценарію з ArcMap у вікні консолі Python.
import arcpy
# Make a layer from the feature class
arcpy.MakeFeatureLayer_management("project","project_lyr")
# Then add a selection to the layer based on location to features in another feature class
arcpy.SelectLayerByLocation_management("project_lyr","INTERSECT","Grid")
Цей код запускається і помилок не наводиться, проте він не вибирає (виділяє) жодних функцій. Будь-яка ідея чому? Також працює дуже повільно.
В основному я намагаюся це зробити:
Це працює дуже швидко майже миттєво, але я хочу зробити те саме, використовуючи python. Мені просто потрібно значення з таблиці вибраних функцій, мені не потрібна копія шару.
Частиною рішення може бути використання робочої області в пам'яті, яка є
Запис даних у робочу область пам'яті часто значно швидше, ніж запис у інші формати ...
Просто не впевнений, як реалізувати робочу область в пам'яті
arcpy.MakeFeatureLayer()
рядок вам не потрібен , оскільки project
це вже шар. Просто роби arcpy.SelectLayerByLocation_management("project","INTERSECT","Grid")
.
import arcpy
команда запускає деякий час.