#openlayers
#openlayers
Вопрос:
Я относительный новичок в OpenLayers. Мое приложение включает в себя отображение отдельных точек GPS на карте. До сих пор я делал это с OpenLayers.Извлеките.Векторные объекты, добавленные в векторный слой с помощью addFeatures, и векторный слой имеет стиль. Кроме того, каждая из точек GPS должна иметь некоторые метаданные, такие как имя, дата и время и т. Д., Для этого я использую атрибуты. Пока это работает нормально для простого отображения точек.
Но одно из моих требований — это возможность иногда визуально выделять один конкретный объект, возможно, изменяя его цвет. Я не могу понять, как это сделать с моим текущим подходом. Должен ли я использовать маркеры вместо этого? Могут ли маркеры также иметь атрибуты?
Спасибо?
Ответ №1:
Я рекомендую заглянуть в StyleMaps . Там вы можете определить, как объект должен выглядеть в разных состояниях, например «выбран». Стиль может быть задан разными цветами, размерами или значками.
Когда вы выбираете объект либо с помощью действия пользователя, либо программно, объекты будут соответствовать вашему «стилю выбора»
Комментарии:
1. Спасибо, сейчас читаю StyleMaps. Я не хочу менять стиль объекта только при наведении на него курсора мыши — я также захочу изменить объект, когда событие происходит в другом месте dom, например, при наведении курсора на что-то другое. Мне будет интересно узнать, может ли он поддерживать это требование. еще раз спасибо.
2. Хорошо, я думаю, что хорошо использовать этот подход, а затем сосредоточиться на том, чтобы «синхронизировать выбор» между вашей другой разметкой и функциями OpenLayers. Таким образом, вы разделяете функциональность и позволяете OL работать с такими деталями, как отмена выбора и тому подобное.