`
Classicning
  • 浏览: 258304 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

OpenLayers的Vector与Markers

    博客分类:
  • GIS
阅读更多
OpenLayers在2.4版本中历史性地添加了Vector图层的支持。这个功能分别在不同的浏览器上用SVG/VML实现,其难度可以想象。Vector的出现可能大大增加开源WebGIS客户端的功能。

不过问题也随之而来,在使用Vector的时候,我们通常还要添加一个SelectFeature控件。这个控件的功能是使矢量的Feature可选,或是响应其他鼠标事件。问题就在于添加了SelectFeature之后,原本的Marker就不能再捕捉到事件,导致Popup之类的功能失效(包括Popup本身也不能捕捉到事件)。

鱼和熊掌不能兼得,不过OpenLayers 2.4中已经给Vector图层里增加了createMarker和createPopup两个方法,它的注释是“HACK - we need to decide if all vector features should be able to create markers”。料想利用这两个方法构造的marker和应该是可以解决前面的问题。

Vector的Marker的冲突可能还是会继续一段时间,看起来确实是一个小小的缺陷。
分享到:
评论
2 楼 Classicning 2007-09-20  
这个Vector是说矢量图层,在IE上用VML,Firefox上有SVG实现的
我觉得还是首选PNG,不过svg是否会高效一些我也不太清楚
1 楼 sinoly 2007-09-20  
呵呵,openlayers,确实不错。
看到你的blog才知道新版本支持了Vector,
这个要好好看看。。。
我现在正在为svg的问题发愁呢。
到底使用svg还是png,这个。。。效率上我还在犹豫

相关推荐

    openLayers_geoserver常见问题.

    OpenLayers 提供了多种方式来解决 Maker 一多,客户端就死掉问题,例如使用 `OpenLayers.Layer.Vector` 或 `OpenLayers.Layer.Markers`。以下代码示例使用 `OpenLayers.Layer.Markers` 解决问题: ```javascript var...

    openlayers3添加闪烁点

    在这个场景中,我们主要关注如何在地图上添加自定义的标记(Markers)。 闪烁点的实现通常涉及到两部分:一是创建和添加标记,二是使用Canvas进行动画效果的绘制。以下是具体步骤: 1. **创建地图**:首先,我们...

    OpenLayers中文API

    - `OpenLayers.Marker`用于在地图上放置标记,通常与`OpenLayers.Icon`一起使用,自定义标记图标。 12. **图例(Legend)** - `OpenLayers.Control.Legend`可以生成图层的图例,帮助用户理解地图内容。 13. **...

    openlayers实现本地图片作为背景,添加marker标记

    它支持多种数据源,包括WMS、WFS、TMS等,并且可以方便地与各种地图服务进行集成。在这个例子中,我们将讨论如何利用OpenLayers将本地图片作为地图背景,并添加marker标记。 首先,为了将本地图片用作背景,我们...

    openlayers-map

    5. **标记(Markers)**:可以使用OpenLayers的Vector图层和几何对象(如Point)来添加自定义标记,显示地理位置信息。 6. **矢量图层(Vector Layers)**:允许动态绘制和编辑地理数据,如线条、多边形等。 7. **...

Global site tag (gtag.js) - Google Analytics