添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
  • api整理 https://segmentfault.com/a/1190000020297846
  • 常用api
  • feature.getProperties()获取marker私有属性数据
    初始化地图
  • 首先,引用ol.css和ol.js,因为我们已经下载了ol库,所以使用ol的本地路径就行了,如果网络方便,可以直接在从ol网站获取。
    1
    2
    3
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/openlayers/openlayers.github.io@master/en/v6.4.3/css/ol.css" type="text/css">
    <script src="https://cdn.jsdelivr.net/gh/openlayers/openlayers.github.io@master/en/v6.4.3/build/ol.js"></script>
    <script src="decision/static/js/jquery.min.js"></script>
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
      // 底图  高德地图  ol.layer.Tile 提供被切分为切片的图片地图数据
    var gaodeMapLayer = new ol.layer.Tile({
    source: new ol.source.XYZ({
    url: 'http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=7&x={x}&y={y}&z={z}'
    })
    });
    this.map = new ol.Map({
    target: "map",
    //图层 可以添加多个地图地图
    layers: [gaodeMapLayer],
    controls:[scaleLineControl],//也可以this.map.addControl
    view: new ol.View({
    center: [117.814635,36.402033],
    projection: 'EPSG:4326',
    zoom: 8,//地图缩放级别
    minZoom:5,
    maxZoom:12
    })
    });
    // 实例化比例尺控件
    var scaleLineControl = new ol.control.ScaleLine({
    // 设置比例尺单位为degrees、imperial、us、nautical或metric(度量单位)
    units: "metric"
    });
    this.map.addControl(scaleLineControl);
  • 这段代码的作用是在网页是显示一个地图;
  • 和leaflet一样,地图必须显示在一个div中,因此首先创建一个div;
  • target:’map’ 指定了地图要显示在id为map的div中;
  • new ol.layer.Tile({ source: new ol.source.OSM() }) 定义了一个图层,数据来源是OpenStreetMap提供的切片数据;
  • new ol.View({ center: ol.proj.fromLonLat([37.41, 8.82]), zoom: 4 }) 定义了地图的中心位置,范围和层级。
  • ol.proj.fromLonLat([37.41, 8.82]) 是将一个经纬度坐标转换成当前地图投影的坐标;
  • openlayers自定义图层