Я хотел бы, чтобы следующее выделило (выделило) слой "project", который пересекает сетку, а затем вытащил запись из выбранной "Grid". Мне не нужно сохранять слой.
Примечание. Запуск сценария из 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
команды занимает некоторое время.