`
Classicning
  • 浏览: 255740 次
  • 性别: 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 添加标注 markers

    openlayers 添加标注 markers 怎么给Google地图添加标注

    Openlayers2扩展markers图层

    综上所述,"OpenLayers2扩展markers图层"涉及到的核心技术包括OpenLayers Marker的创建与管理、图层控制、事件处理以及动态效果的实现。通过学习这些知识点,开发者可以创建具有丰富交互性的地图应用,满足各种定制...

    openlayers-markers.zip

    OpenLayers3.x使用features集群实现同一markers层添加多marker标记,效果演示以及源代码,文章链接https://blog.csdn.net/YZero_cn/article/details/120385516

    OpenLayers

    **OpenLayers 开发指南** OpenLayers 是一个开源的JavaScript库,专门用于在Web浏览器中展示地理信息系统(GIS)数据。这个强大的工具允许开发者创建交互式的地图应用,支持多种地图服务,包括WMS、WFS、KML等。...

    openlayers3添加闪烁点

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

    openlayers中文.rar

    4. **OpenLayers与GIS数据**: - **GeoJSON支持**:OpenLayers可以直接读取和展示GeoJSON格式的数据,便于数据交换和处理。 - **WMS/WFS服务**:与OGC标准服务接口配合,获取远程地图服务或编辑地理数据。 - **...

    openlayers很多特效demo

    7. 地图服务集成:OpenLayers 可以与各种地图服务提供商(如Google Maps、Bing Maps、OpenStreetMap等)集成,展示不同来源的地图数据。 8. 数据源的动态加载和更新:OpenLayers 支持实时数据的加载和更新,这在...

    openLayers完整代码示例数据

    4. **图层加载**:在OpenLayers应用中,这些JSON数据可以通过`ol.source.Vector`和`ol.layer.Vector`进行加载和展示。通过读取JSON文件并创建相应的Source,然后将Source添加到地图的图层中。 5. **交互功能**:...

    OpenLayers动画效果显示路线

    var marker = new OpenLayers.Feature.Vector(points[index]); vectorLayer.addFeatures([marker]); if (index > 0) { vectorLayer.removeFeatures([lastMarker]); } lastMarker = marker; index++; } else ...

    openLayers-API中文

    5. **标记(Feature和Vector Layer)**:`OpenLayers.Feature`和`OpenLayers.Vector`用于在地图上添加点、线、面等矢量数据。这些标记可以具有样式、属性,并可以通过图层进行操作。 6. **事件(Event)**:OpenLayers...

    openLayers geoserver常见问题

    OpenLayers与Google Maps集成时可能出现标注错位问题,这通常与投影和地图坐标系统有关。 创建谷歌地图效果,OpenLayers提供了兼容Google Maps的图层类型。 OpenLayers API和类用于画点、线、面,如`OpenLayers....

    用Openlayers实现实时定位

    通过这种方式,OpenLayers不仅可以显示用户的实时位置,还可以与其他GeoJSON数据源集成,实现丰富的地理信息系统应用。 值得注意的是,实时定位需要用户的同意,并且可能会消耗大量电池,因此在实际应用中需要考虑...

    openLayers-API中文版.zip

    7. **高性能渲染**:使用VectorTile技术,OpenLayers 可以高效地渲染大量矢量数据,尤其是在移动设备上。 在压缩包中的"openLayers-API中文版"可能包含以下内容: - **API 文档**:详细的API参考指南,解释了...

    openlayers-官方完整包-v4.6.5

    2. **地图服务支持**:OpenLayers可以与各种地图服务进行交互,包括Web Map Service (WMS)、Web Map Tile Service (WMTS)、TileImage、XYZ、OSM等。这些服务允许开发者从远程服务器获取地图图像或者瓦片。 3. **...

    OpenLayers中文API

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

    openlayers3 多边形相交判断

    JSTS提供了一个与OpenLayers兼容的适配器,名为`ol.format.WKT`,它可以将OpenLayers的几何对象转换为JSTS可处理的形式,进行相交判断。 首先,引入JSTS库(假设已通过npm安装): ```html ...

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

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

    openlayers案例demo(详细注释)

    这个压缩包“openlayers个人案例demo”包含了详细注释的示例代码,是学习和理解OpenLayers功能与用法的良好资源。 1. **OpenLayers基本结构** OpenLayers应用通常由几个关键部分组成:地图(Map)对象、图层(Layer)...

    openlayers离线文档

    "投影"(Projections)是地理坐标系与屏幕坐标系之间的转换方式。OpenLayers支持多种投影,包括常见的EPSG:4326(纬度/经度)和EPSG:900913(Google Maps使用的Spherical Mercator)。在处理地图时,正确设置投影是...

Global site tag (gtag.js) - Google Analytics