Моя проблема: Використовуючи ArcPy, я хочу перебирати буфери і вибирати geometry_features всередині кожного буфера і робити щось (оновлення) лише об'єктів, знайдених у цьому конкретному буфері. Код нижче пояснює, що я хочу зробити (більш-менш):
def _update_connections_inside_buffers(self):
buffers = arcpy.SearchCursor(self.__buffer_class_name)
in_layer = "connections"
for i_buffer in buffers:
shape = i_buffer.shape
# can not use a geometry to do a selection.. very inconvenient!!
connections = arcpy.SelectLayerByLocation_management(in_layer, "WITHIN", shape)
self._update_connections(connections)
Однак: це не буде працювати, оскільки SelectLayerByLocation_management () не приймає геометрію, "фігуру" в якості аргументу, але очікує, що буде вказано особливість_class_name (назва шару). Чи є метод arcpy, який може здійснити пошук, використовуючи просторовий предикат. Не вдалося знайти, як це зробити в посібнику з ESRI.