Как узнать слой зная выделенный объект

0 голосов
спросил 28 Янв, 08 от cyberface (1,380 баллов) в категории Программные продукты Esri
У меня есть IFeature - выделенный объект, как из него выйти на ILayer или IFeatureLayer? Заранее благодарен.

3 Ответы

0 голосов
ответил 29 Янв, 08 от new_sergei (2,660 баллов)
Наверяка есть какой-то быстрый способ, но на вскидку ничего такого не вижу.  Можно сделать так:
1) получаем из из IFeature тип геометрии объекта
2) в цикле проходим все слои карты на поиск слоёв с такой же геометрией (т.е. получаем какой-то ILayer).
3) из ILayer делаем IFeatureLayer 
4) в цикле проходим объекты (т.е. IFeature) нашего IFeatureLayer и сравниваем его атрибуты с эталонными. Если всё совпало - то мы получили требуемый IFeatureLayer.
 
P.S. Очень долго, конечно.
0 голосов
ответил 29 Янв, 08 от cyberface (1,380 баллов)
Нет, это слишком, долго, да и не надёжно, так как в нескольких слоях атрибуты объектов могут совпадать.
0 голосов
ответил 29 Янв, 08 от Tatkis (2,420 баллов)
Через ISelection и ISelectionFeature как-то можно побыстрее
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...