выборка по атрибуту

0 голосов
спросил 15 Фев, 06 от Гость (210,080 баллов) в категории Программные продукты Esri
как на C# выбрать объект по атрибуту?

4 Ответы

0 голосов
ответил 20 Фев, 06 от Гость (210,080 баллов)

ну блин вообще image

вообще ктонибудь знает как выбрать объект на карте по атрибуту на c++, vb, delphi. Пробовал по аналогии с vba но ничего не получилось, может кто знает или сможет по аналогии. На vba это выглядит так:

Private Sub CommandButton1_Click()
  Dim pMxDoc As IMxDocument
  Dim pMap As IMap
  Dim pActiveView As IActiveView
  Dim pFeatureLayer As IFeatureLayer
  Dim pFeatureSelection As IFeatureSelection
  Dim pQueryFilter As IQueryFilter
 
  Set pMxDoc = Application.Document
  Set pMap = pMxDoc.FocusMap
  Set pActiveView = pMap

  If Not TypeOf pMap.Layer(0) Is IFeatureLayer Then Exit Sub
  Set pFeatureLayer = pMap.Layer(1)
  Set pFeatureSelection = pFeatureLayer   

  Set pQueryFilter = New QueryFilter
  pQueryFilter.WhereClause = "УЛИЦА = 'Пушкина'"
  
  pActiveView.PartialRefresh esriViewGeoSelection, Nothing, Nothing
  pFeatureSelection.SelectFeatures pQueryFilter, esriSelectionResultNew, False
  pActiveView.PartialRefresh esriViewGeoSelection, Nothing, Nothing
  End Sub

0 голосов
ответил 20 Фев, 06 от Alexander1 (32,520 баллов)

Неправильна сама постановка вопроса. Выборка по атрибуту работает. Это исторический факт. Значит, не работает твой код, в котором ты пытаешься сделать эту самую выборку. Следовательно надо опубликовать свой код и спросить:

"Пожалуйста, подскажите, что я делаю неправильно. Спасибо. user."

0 голосов
ответил 09 Март, 06 от filippov70 (5,320 баллов)
Set pQF = New QueryFilter
pQF.WhereClause = "Address_uch = '" & sQA & "'"
Set pFeatCur = pFeatureLayer.FeatureClass.Search(pQF, False)

Set pFeature = pFeatCur.NextFeature

If pFeature Is Nothing Then Exit Sub

pMxDoc.FocusMap.SelectFeature pLayer, pFeature
0 голосов
ответил 09 Март, 06 от filippov70 (5,320 баллов)
Как я понимаю в
Set pFeatCur = pFeatureLayer.FeatureClass.Search(pQF, False)
параметр Recycling определяет выбрать одну фичу в курсор (False) или все, которые удовлетворяют запросу(True) в QueryFilter?

С анлийским  слабовато у меня, мануал  трудно дается.
Спасибо за ответ.
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...