ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
-
Tereha
- Завсегдатай
- Сообщения: 423
- Зарегистрирован: 15 май 2010, 06:13
- Репутация: 7
Сообщение
Tereha » 31 дек 2014, 09:51
Уважаемые Гуру!
Решал эту задачу так.
xaml:
Код: Выделить всё
<esri:Map x:Name="myMap" >
<esri:ArcGISDynamicMapServiceLayer ID="BaseLayer"
Url="http://localhost:6080/ArcGIS/rest/services/streetRK/MapServer" />
<esri:FeatureLayer ID="routes_osm"
Url="http://localhost:6080/ArcGIS/rest/services/streetRK/MapServer/1" >
</esri:FeatureLayer>
</esri:Map>
Код:
Код: Выделить всё
public void OnLightRoadEvent(string code)
{
feature_code = code;
FeatureLayer featureLayer = myMap.Layers["routes_osm"] as FeatureLayer;
foreach (Graphic p in featureLayer.Graphics)
{
if (p.Attributes["REF"].ToString() == feature_code)
p.Selected = true;
else
p.Selected = false;
}
}
Как решить эту задачу только с помощью BaseLayer, не используя дополнительный routes_osm?
-
Monstria
- Активный участник
- Сообщения: 133
- Зарегистрирован: 17 май 2011, 06:22
- Репутация: 50
- Откуда: Нижний Новгород
Сообщение
Monstria » 31 дек 2014, 15:10
Я пишу на VB.NET - если это то что вам нужно -
http://youtu.be/a1dumcfu2E4
Обращайтесь в личку - поделюсь исходным кодом (правда на vb.net

)
-
novia
- Гуру
- Сообщения: 2261
- Зарегистрирован: 29 апр 2011, 15:06
- Репутация: 489
- Откуда: Тель-Авив
Сообщение
novia » 31 дек 2014, 16:14
в динамическом сервисе вы можете подсветить объект двумя способами: на сервере, как делает росреестр не отдавая геометрию на клиента, с помощью определяющего запроса к еще одному сервису, который показывает только выбранный объект.
либо можно получить графику для подсветки как результат операций query, find, identify и подсвечивать ее в составе graphicsLayer, добавленного поверх слоя динамического сервиса. тогда можно обойтись без featureLayer.
-
Tereha
- Завсегдатай
- Сообщения: 423
- Зарегистрирован: 15 май 2010, 06:13
- Репутация: 7
Сообщение
Tereha » 01 янв 2015, 11:56
Спасибо. Я поясню над чем я думал.
Я не исключал, что динамический слой содержит множество Graphics для каждого слоя, до которого можно добраться . Иногда нужно приводить объект к нужному типу, чтобы добраться до некоторых свойств.
-
novia
- Гуру
- Сообщения: 2261
- Зарегистрирован: 29 апр 2011, 15:06
- Репутация: 489
- Откуда: Тель-Авив
Сообщение
novia » 03 янв 2015, 22:13
динамический слой сам по себе это картинка, но он умеет отвечать за напросы query, identify и find с возвратом объектов типа graphic, с пустой или заполненной геометрией.
-
Tereha
- Завсегдатай
- Сообщения: 423
- Зарегистрирован: 15 май 2010, 06:13
- Репутация: 7
Сообщение
Tereha » 04 янв 2015, 08:34
Спасибо, ясно-понятно)
Сейчас этот форум просматривают: Semrush [Bot] и 3 гостя