首页 > 其他分享 >openlayers 入门教程(三):view 篇

openlayers 入门教程(三):view 篇

时间:2024-03-22 15:04:48浏览次数:21  
标签:缩放 分辨率 入门教程 示例 视图 openlayers view

还是大剑师兰特:曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;CSDN知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技术开发,欢迎加底部微信(gis-dajianshi),一起交流。

在这里插入图片描述

No.内容链接
1Openlayers 【入门教程】 - 【源代码+示例300+】
2Leaflet 【入门教程】 - 【源代码+图文示例 150+】
3Cesium 【入门教程】 - 【源代码+图文示例200+】
4MapboxGL【入门教程】 - 【源代码+图文示例150+】
5前端就业宝典 【面试题+详细答案 1000+】

在这里插入图片描述

文章目录


view表示地图的简单 2D 视图。可以用来控制地图在容器中移动,还可以更改地图的中心,分辨率,旋转等。主要会用到两种projection:球面墨卡托 (EPSG:3857)和wgs84(EPSG:4326)[ 查看两者的概念和区别]

3857坐标系下的地图

view 核心API

view 属性参数

  • center 视图的初始中心。
  • zoom 仅在resolution未定义时使用。缩放级别用于计算视图的初始分辨率。
  • projection 投射方式,默认为EPSG:3857
  • extent 限制视图的范围。值表示范围的数字数组:[minx, miny, maxx, maxy]。
  • constrainRotation 旋转约束。 false意味着没有约束。true意味着没有约束,但在零附近捕捉到零。数字将旋转限制为该数量的值,就是设置90只能旋转90度。
  • enableRotation 是否启用旋转。
  • constrainOnlyCenter 如果为true,则范围约束将仅适用于视图中心而不是整个范围。
  • smoothExtentConstraint 如果为true,范围约束将被平滑地应用,即允许视图稍微超出给定的extent。
  • maxResolution 用于确定分辨率约束的最大分辨率。
  • minResolution 用于确定分辨率约束的最小分辨率。
  • maxZoom 用于确定分辨率约束的最大缩放级别。
  • minZoom 用于确定分辨率约束的最小缩放级别。
  • constrainResolution 如果为 true,则视图将始终在交互后以最接近的缩放级别进行动画处理;false 表示允许中间缩放级别。
  • resolutions决定缩放级别的分辨率。
  • rotation 以弧度为单位的视图初始旋转(顺时针旋转,0 表示北)。

view 常见方法

  • setCenter 设置当前视图的中心。任何范围限制都将适用。
  • setZoom 缩放到特定的缩放级别。任何分辨率限制都将适用。
  • getCenter 获取视图中心,返回一个地图中心的坐标。
  • getZoom 获取当前的缩放级别。如果视图不限制分辨率,或者正在进行交互或动画,则此方法可能返回非整数缩放级别。
  • getMaxZoom 获取视图的最大缩放级别。
  • getMinZoom 获取视图的最小缩放级别。
  • getProjection 获取地图使用的”投影坐标系统”,如EPSG:4326;
  • getMaxResolution 获取视图的最大分辨率。
  • getMinResolution 获取视图的最低分辨率
  • getRotation 获取视图旋转。
  • getZoomForResolution 获取分辨率的缩放级别。
  • setConstrainResolution 设置视图是否应允许中间缩放级别。
  • setMaxZoom 为视图设置新的最大缩放级别。
  • setMinZoom 为视图设置新的最小缩放级别。
  • setRotation 设置该视图的旋转角度。任何旋转约束都将适用。

view 常见使用示例

1 zoom 示例

示例:设置zoom最大值和最小值

2 resolution 示例

示例:根据Resolution的不同,显示不同的底图

3 extent 示例

示例:set extent 和 fit extent功能展示

4 center 示例

示例: 获取地图的中心点经纬度信息

5 projection 示例

示例: 非4326,3857的投影方法

6 rotation 示例

示例:设置地图左右旋转功能

五、Openlayers 入门教程 -系列文章列表

  • openlayers 入门教程(一):应该如何学习openlayers
  • openlayers 入门教程(二):Map 篇
  • openlayers 入门教程(三):View 篇
  • openlayers 入门教程(四):Layers 篇
  • openlayers 入门教程(五):Sources 篇
  • openlayers 入门教程(六):Controls篇
  • openlayers 入门教程(七):Interactions篇
  • openlayers 入门教程(八):Geom 篇
  • openlayers 入门教程(九):Overlay 篇
  • openlayers 入门教程(十):Style 篇
  • openlayers 入门教程(十一):Formats篇
  • openlayers 入门教程(十二):定位与轨迹
  • openlayers 入门教程(十三):动画
  • openlayers 入门教程(十四):第三方插件
  • openlayers 入门教程(十五):与 canvas、echart,turf 等交互

标签:缩放,分辨率,入门教程,示例,视图,openlayers,view
From: https://blog.csdn.net/cuclife/article/details/136679603

相关文章

  • .NET Emit 入门教程:第三部分:构建模块(Module)
    前言:在这一部分中,我们将深入讨论动态程序集中模块的概念以及如何构建和管理模块。1、模块的概念:模块是动态程序集中的基本单位,它类似于一个独立的代码单元,可以包含类型、方法、字段等成员。在动态程序集中,模块扮演着组织代码和实现代码复用的关键角色。它们允许开发人员将相......
  • viewer
    <viewer:images="fileimagelist"><divv-for="(src,index)infileimagelist":key="src":src="src"><imgv-show="scope.$index===index"class="imgbox"......
  • Android View的动画效果,上移展示和下移隐藏
    原文:AndroidView的动画效果,上移展示和下移隐藏-Stars-One的杂货小窝项目里的一个小需求(实际是要和手势操作一起,上滑和下拉触发此动画效果),记录一下PS:本篇先记录下动画效果,下篇再将如何监听滑动手势效果原理实际通过View的translationY的属性来实现上移代码val......
  • Multi-View Graph Convolutional Network for Multimedia Recommendation
    目录概符号说明MGCNMotivationBehavior-GuidedPurifierMulti-ViewInformationEncoderBehavior-AwareFuserPredicitonOptimation代码YuP.,TanZ.,LuG.andBaoB.Multi-viewgraphconvolutionalnetworkformultimediarecommendation.MM,2023.概本文主要处理模......
  • .NET Emit 入门教程:第二部分:构建动态程序集(追加构建静态程序集教程)
    前言:在本部分中,我们将深入探讨如何使用C#Emit来创建动态程序集。动态程序集是在运行时生成的,为我们提供了一种灵活、动态地构建和加载程序集的能力。1.程序集的概念程序集是.NET中的基本部署单位,它包含了可执行代码、资源、元数据等信息,是.NET应用程序的基本组成单元之一。......
  • [ARC174B] Bought Review 题解
    【题目描述】你开了一家店,有\(A_i\)个\(i\)星级评论,你可以花费\(P_i\)元买到一个\(i\)星评论,问使得这家店评论的星星平均值不小于\(3\),最少要花多少钱。\(1\lei\le5\)。【思路】首先读入,判断平均值是否小于\(3\),如果大于等于,直接输出\(0\)​然后根据\(3\t......
  • Salesforce LWC学习(四十九) RefreshView API实现标准页面更新,自定义组件自动捕捉更新
    本篇参考: https://developer.salesforce.com/docs/platform/lwc/guide/data-refreshview.htmlhttps://developer.salesforce.com/docs/platform/lwc/guide/reference-lightning-refreshview.htmlhttps://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007KX6dA......
  • Linux Interview questions
    @@用户管理面试题:开机bios自检,检测硬件的问题主板CPU内存硬盘电源在企业中出问题最多的硬件:硬件服务器IDC机房自建机房1.磁盘出了问题怎么办?磁盘的详细属性互联网公司:表现的有经验1).是否在保质期内3年如果保质期3年内,联系售后直接换新的2).过了保质期,......
  • uni-app、uview开发时的三种富文本渲染方案
    来源:https://www.shanhubei.com/archives/51231.html1.使用vue语法的v-html<!--使用v-html渲染富文本--><!--<viewv-html="`<h1>富文本</h1><h2>富文本</h2><h3>富文本</h3>`"></view>-->2.使用小程序标签rich-text&l......
  • .NET Emit 入门教程:第一部分:Emit 介绍
    前言:Emit 是开发者在掌握反射的使用后,进阶需要的知识,它能显著的改善因反射带来的性能影响。目前能搜到的Emit的相关文章,都是一篇系列,通常推荐对照着反绎后的 IL 编写Emit代码,门槛太高。借着优化CYQ.Data 时使用Emit 的心得体会及记忆,写个简单的入门教程,以帮助后来者......