У меня есть карта Шейп-файла Мэриленда, разделенная почтовым индексом.Я хотел бы покрасить каждую область в зависимости от значения, которое я ищу в базе данных.В настоящее время я использую ASP.NET с пакетом SharpMap.Основные вопросы:
1) Как связать фигуру с ее почтовым индексом? Я могу сгенерировать список почтовых индексов, используя ExecuteIntersectionQuery в SharpMap с установленным BoundingBox в качестве экстента карты,но я понятия не имею, как затем связать каждую строку полученной таблицы с формой, которую она представляет.
2) Как только я получу доступ к отдельной фигуре и узнаю, какой цвет мне нужен, как мненазначить цвет фигуре? В SharpMap я могу покрасить VectorLayer, но VectorLayer генерируется из исходного файла .shp, а не фигуры.
Я открыт для использования других бесплатные карты пакетов, кроме SharpMap (поэтому нет ArcGIS), но по юридическим причинам я не могу использовать GoogleMaps.
Я чувствую, что это должно быть относительно просто, но попытка найти какой-либо достойный ресурс для SharpMap довольно трудна.
РЕДАКТИРОВАТЬ: Хорошо, я сделал много процесса, просто перечитавкакая документация есть.Установив FilterDelegate ShapeFile, я могу сделать слой, состоящий только из строк, где почтовый индекс соответствует определенному значению.Теперь моя единственная проблема - заставить фильтр делегатов каждый раз искать другой почтовый индекс.Могу ли я передать другой параметр, кроме FeatureDataRow?Стоит ли прибегать к глобальной переменной?