Работа с SharpMap
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 12 авг 2011, 11:14
- Репутация: 0
Работа с SharpMap
Есть ли возможность в SharpMap обработки только той части карты которая помещается в окно просмоторщика? Или необходимо всегда обрабатывать всю карту?
-
- Гуру
- Сообщения: 588
- Зарегистрирован: 30 мар 2009, 21:53
- Репутация: 55
- Откуда: Королев
Re: Работа с SharpMap
Если под словом "обработка" вы подразумеваете отрисовку карты, то по умолчанию SM именно эту часть и рендерит, предварительно выбрав из БД/файла/сервиса только те данные, которые попадают на эту территорию.
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 12 авг 2011, 11:14
- Репутация: 0
Re: Работа с SharpMap
Просто как то подозрительно долго это все происходит. Может можно как то ускорить процесс не теряя при этом детализации карты
-
- Гуру
- Сообщения: 588
- Зарегистрирован: 30 мар 2009, 21:53
- Репутация: 55
- Откуда: Королев
Re: Работа с SharpMap
Возможно все. Было бы желание.
Вы не пробовали профилировать ваше приложение и найти узкое место?
Вы не пробовали профилировать ваше приложение и найти узкое место?
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 12 авг 2011, 11:14
- Репутация: 0
Re: Работа с SharpMap
Спасибо за ответ, установил в опциях быстрый режим стало намного лучше. И у меня тогда сразу возникает вопрос можно ли по географическим координатам разместить на карте некий рисунок скажем gif?
-
- Гуру
- Сообщения: 588
- Зарегистрирован: 30 мар 2009, 21:53
- Репутация: 55
- Откуда: Королев
Re: Работа с SharpMap
1) Создаете векторный источник данных SharpMap.Data.Providers.GeometryFeatureProvider
2) Добавляете в него точку(и) с координатами, в которой вам необходимо отобразить гиф
3) Создаете векторный слой SharpMap.Layers.VectorLayer с указанием ранее созданного источника в конструкторе, хотя источник можно и позже присвоить.
4) Создаете SharpMap.Styles.VectorStyle, задаете Symbol (ваш гиф), SymbolScale SymbolOffset и SymbolRotation - по желанию. Созданный стиль присваиваете созданному выше векторному слою.
5) Добавляете слой на карту.
2) Добавляете в него точку(и) с координатами, в которой вам необходимо отобразить гиф
3) Создаете векторный слой SharpMap.Layers.VectorLayer с указанием ранее созданного источника в конструкторе, хотя источник можно и позже присвоить.
4) Создаете SharpMap.Styles.VectorStyle, задаете Symbol (ваш гиф), SymbolScale SymbolOffset и SymbolRotation - по желанию. Созданный стиль присваиваете созданному выше векторному слою.
5) Добавляете слой на карту.
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 12 авг 2011, 11:14
- Репутация: 0
Re: Работа с SharpMap
Спасибо за очень подробный ответ буду пробовать
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 12 авг 2011, 11:14
- Репутация: 0
Re: Работа с SharpMap
Спасибо за ответы. Все получилось. Но теперь возник следующий вопрос: можно ли размещенный на карте рисунок сделать интерактивным? Иными словами подсвечивать при наведении мыши и перетаскивать по карте мышью.
-
- Гуру
- Сообщения: 588
- Зарегистрирован: 30 мар 2009, 21:53
- Репутация: 55
- Откуда: Королев
Re: Работа с SharpMap
Стандартными механизмами SM - нет.
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 12 авг 2011, 11:14
- Репутация: 0
Re: Работа с SharpMap
Спасибо за ответ
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 11 гостей