OpenLayers View(二)

一.属性:

let view = new View({
            center: transform(:[12679405.484039215, 2549477.9604217946],'EPSG:4326', 'EPSG:3857'),
            extent:[12679405.484039215, 2549477.9604217946, 12681608.190268839, 2550532.276580661],
            projection:'EPSG:3857',
            zoom: 17,
            minZoom: 17,
            maxZoom: 20,
            rotation: 0.32,
            resolution:10
});

-center:表示地图视图的中心位置
-extent:地图可是范围
-projection:规定地图使用坐标系
-zoom:当前显示层级
-minZoom:可缩放最小层级
-maxZoom:可缩放最大层级
-rotation: 地图的旋转角度;
-resolution:地图的分辨率,单位并不是普通的单位面积的像素,而是单位像素表示的距离单位,比如 米/像素;

二.方法

1.旋转:rotate(rotation , opt_anchor )

-rotation 旋转角度数,为数值,单位不是度,180度对应数值PI,且正数表示顺时针旋转
-opt_anchor 地图将围绕 opt_anchor 旋转(可选)

let view = map.getView();
view.rotate(Math.PI /3);
2.移动:setCenter(center)

-center 接受一个参数:中心坐标

let   view = map.getView();
let   mapCenter = view.getCenter();
// 让地图中心的x值增加,即可使得地图向左移动
mapCenter[0] += 50000;
view.setCenter(mapCenter);
map.render();
// 让地图中心的x值减少,即可使得地图向右移动
mapCenter[0] -= 50000;
view.setCenter(mapCenter);
map.render();
 // 让地图中心的y值减少,即可使得地图向上移动
mapCenter[1] -= 50000;
view.setCenter(mapCenter);
map.render();
 // 让地图中心的y值增加,即可使得地图向下移动
mapCenter[1] += 50000;
view.setCenter(mapCenter);
map.render();
3.缩放1: setZoom(zoom)

-zoom 接受一个数值参数,将地图的缩放级别设置为相应的数值代表的缩放级别,数值范围minZoom<=zoom<=maxZoom。

let  view = map.getView();
 // 让地图的zoom增加1,从而实现地图放大
view.setZoom(view.getZoom() + 1);
// 让地图的zoom减小1,从而实现地图缩小
view.setZoom(view.getZoom() - 1);
4.缩放2:fitExtent(extent, size)

-extent:extent类型是 ol.Extent – [left, bottom, right, top]
-size:由map.getSize()获取
功能:将地图的view 缩放到 extent 区域可见的合适尺度

let  view = map.getView();
view.fitExtent(ol.proj.transformExtent([12679405.484039215, 2549477.9604217946, 12681608.190268839, 2550532.276580661],'EPSG:4326', 'EPSG:3857'),map.getSize());
5.缩放3:fitGeometry(geometry, size, opt_options)

-geometry:地理要素 feature.getGeometry()
-size:地图尺寸
-opt_options:可选参数
根据给定的地理要素,将 view 缩放到适合地理要素显示的尺寸

let  view = map.getView();
let  feature = vectorLayer.getSource().getFeatures()[1];
//vectorLayer.getSource().getFeatures()获取feature 集合,取其中一个feature 
let  polygon = feature.getGeometry();
view.fitGeometry(polygon,map.getSize());
6.获取层级:getZoom()
let  view = map.getView();
let  zoom= view .getZoom();
7.获取中心坐标:getCenter()
let  view = map.getView();
let  center= view .getCenter();
8.获取投影坐标系统:getCode()
let  view = map.getView();
let code = view.getProjection().getCode();
9.设置分辨率:setResolution()
let  view = map.getView();
view.setResolution(10);
10.获取分辨率:getResolution()
let  view = map.getView();
let  resolution= view.getResolution();
11.获取旋转的角度:getRotation()
let  view = map.getView();
let  rotation= view.getRotation();
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Openlayers API整理 openlayers 发布于 2019-09-05 一、创建地图 1、地图Map...
    不玩了啊阅读 9,176评论 0 2
  • 工具 高德坐标选取[https://lbs.amap.com/tools/picker] 基础概念 GeoJSON...
    Ricoywang阅读 9,069评论 0 0
  • View是一个地图组件,在初始化Map的时候需要指定一个View,创建View对象的时候,在构造函数中可以传递一个...
    写前端的大叔阅读 7,990评论 2 0
  • 通过前面几篇文章的介绍后,对Openlayers的基本用法都有所了解了,从这篇开始主要来介绍API的使用,介绍完A...
    写前端的大叔阅读 29,709评论 0 15
  • 本文主要针对plotly的参数含义进行说明,随着plotly版本的迭代更新,部分参数的用法会有细微变化,具体参加官...
    惑也阅读 51,104评论 0 34

友情链接更多精彩内容