是 OpenLayers 的核心组件。用于初始化地图对象。
初始化地图(Map),需要一个视图(view)、一个或多个图层( layer),和一个地图加载的目标 HTML 标签(target)。
controls 添加到地图上的控件。默认加载 ol/control 下 defaults,默认控件组。
pixelRatio 设备上物理像素与设备无关像素(下降)之间的比率。
interactions 添加到地图的交互事件。默认加载 ol/interaction 下 defaults,默认交互组。
keyboardEventTarget 监听键盘事件的元素。这决定了KeyboardPan和 KeyboardZoom互动的触发时间。例如,如果将此选项设置为 document键盘,则交互将始终触发。如果未指定此选项,则库在其上侦听键盘事件的元素是地图目标(即,用户为地图提供的div)。如果不是 document,则需要重点关注目标元素以发出关键事件,这要求目标元素具有tabindex属性。
layers 图层。没定义图层,也会加载,显示空白图层。图层是按顺序加载的,想要在最上层需要放在最后面。
maxTilesLoading 同时加载的最大瓦片数。默认16。
moveTolerance 光标必须移动的最小距离(以像素为单位)才能被检测为地图移动事件,而不是单击。增大此值可以使单击地图更容易。
overlays 覆盖物。默认情况下,不添加任何覆盖物。
target 地图的容器,元素本身或id元素的 。必须指定,不指定无法加载地图。
view 视图。需要在构造时或通过方法(setView)指定,否则不会加载图层。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<style type="text/css">
.map {
height: 500px;
width: 100%;
}
</style>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/openlayers/openlayers.github.io@master/en/v6.6.1/css/ol.css" />
<script src="https://cdn.jsdelivr.net/gh/openlayers/openlayers.github.io@master/en/v6.6.1/build/ol.js"></script>
<body>
<div id="map" class="map"></div>
</body>
<script>
var map = new ol.Map({
target: 'map'
})
// 图层
var layerTile = new ol.layer.Tile({
source: new ol.source.XYZ({
url: 'https://webrd01.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}'
})
})
// 视图
var view = new ol.View({
center: ol.proj.fromLonLat([37.41, 8.82]),
zoom: 4
})
map.setView(view)
map.setLayerGroup(layerTile)
</script>
</html>