openlayers封装和使用汇总

这篇博客详细介绍了如何封装和使用OpenLayers,包括整体封装、站点交互、图层管理、绘制操作、行政边界处理等功能,同时展示了如何在地图上进行画线、圈选、显示GeoJSON数据等操作,并提供了鼠标点击获取属性信息及高亮区域的方法。
摘要由CSDN通过智能技术生成

目录

整体封装openlayers(最新)

整体封装openlayers

站点移入显示详情

站点点击弹出图表

封装组件化openlayers(一)

封装组件化openlayers(二)

移除指定name图层 

绘制画线区域 

取消当前绘制

绘制圈选区域

绘制圈选区域并拿到这个区域内的feature(不准确)

绘制圈选区域并拿到这个选区内的feature(通过坐标是否在几何内,准确) 

不显示控件

生成行政边界

单击地图获取所点击feature和属性并弹框

设置图层显示和隐藏

叠加图片,图片会跟随层级变大变小

地图显示geojson文件

行政边界添加样式

鼠标点击某个行政区域高亮

鼠标点击某个区域,该区域高亮,其余变暗


整体封装openlayers(最新)

// 转换为web merctor投影
var destinationPro = "EPSG:3857";
// 地理原始投影
var sourcePro = 'EPSG:4326';

var centerPoint = [121.55, 29.88];
var defaultZoom = 14;

// 地图函数对象
var mapObj = {
  geojsonFormat: new ol.format.GeoJSON({
    dataProjection: sourcePro,
    featureProjection: destinationPro
  }), 
  overlay: new ol.Overlay({
    id: 'popup',
    element: $('#station-popup').get(0),
    autoPan: true, // 弹窗全部显示在地图中
    positioning: 'center-center',
    autoPanAnimation: {
      duration: 250
    }
  }),
  // 初始化地图
  initMap: function 
OpenLayers 是一个用于地理信息系统应用的开源JavaScript库,它提供了丰富的地图功能和工具。其中,OpenLayers也提供了距离量测和面积量测的封装。 在 OpenLayers 中,我们可以使用 Measure 类来实现距离和面积的量测。首先,我们需要创建一个 Measure 对象,并指定量测类型(距离或面积)。然后,我们可以将该对象添加到地图上,并通过交互(interaction)让用户进行量测操作。 量测操作包括点击地图来创建量测点(对于距离量测)或量测多边形(对于面积量测)。当用户完成量测操作后,我们可以获取量测结果,并进行相应的处理和显示。 例如,对于距离量测,我们可以使用 Measure 类的 `Measure.Type.LINE` 参数来创建一个距离量测对象。然后,将该对象添加到地图上并监听 `measureend` 事件,在事件回调函数中获取距离结果并进行显示。 对于面积量测,我们可以使用 Measure 类的 `Measure.Type.POLYGON` 参数来创建一个面积量测对象。同样,将该对象添加到地图上并监听 `measureend` 事件,在事件回调函数中获取面积结果并进行显示。 需要注意的是,在量测过程中,OpenLayers 会自动根据地图的投影和缩放级别将地理坐标转换为像素坐标,以方便量测操作。此外,OpenLayers 还提供了丰富的配置选项,以满足不同的需求,例如设置单位、计算精度等。 综上所述,OpenLayers 封装了距离量测和面积量测的功能,我们可以通过使用 Measure 类和相应的交互来实现距离和面积的量测,并将结果进行显示和处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风里有诗句哈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值