Masalah saya: Menggunakan ArcPy Saya ingin mengulang buffer dan memilih geometry_features di dalam setiap buffer dan melakukan sesuatu (perbarui) hanya objek yang ditemukan dalam buffer tertentu. Kode di bawah ini menjelaskan apa yang ingin saya lakukan (kurang lebih):
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)
Namun: ini tidak akan berfungsi karena SelectLayerByLocation_management () tidak menerima geometri, "bentuk" sebagai argumen tetapi mengharapkan feature_class_name (nama layer). Apakah ada metode arcpy yang dapat melakukan pencarian menggunakan predikat spasial. Saya tidak dapat menemukan cara melakukan ini dari manual ESRI.