将传单图标样式设置为开放图层功能

时间:2019-02-22 20:30:10

标签: leaflet icons openlayers-3

我正试图开始使用Leaflet而非开放层来管理开放式街道地图。所有设置都非常顺利,但是我无法移动向其添加标记的功能。

在openlayer中,我能够基于地理位置创建一个feature,并向其中添加样式列表。可以为Leaflet图标制作相同的东西吗?

为简单起见,假设我有2种样式-针形(可以是蓝色或绿色的圆圈)和照片样式。样式是根据用户执行的某些操作动态选择的。

我如何创建特征的代码片段:

const style_1 = new ol.style.Style(
{
    image: new ol.style.Icon((
        {
            src: url_1
        }))
});
const style_2 = new ol.style.Style(
{
    image: new ol.style.Icon((
        {
            src: url_2
        }))
});
let photo_style = const photo = new ol.style.Style(
{
    image: new ol.style.Icon((
        {
            src: photo_url // this is dynamic
        }))
});

const styles = {'state_1': style_1, 'state_2': style_2}
let feature = new ol.Feature({geometry: new ol.geom.Point(ol.proj.transform([lon, lan]))});
style = styles[dynamic_state]
if(some_flag) {
    style = [style, photo_style]
}
else {
    style = [style]
}
feature.setStyle(style);

0 个答案:

没有答案