Full Screen Drag, Rotate, and Zoom——全屏、旋转和缩放

2024-01-12 18:48

本文主要是介绍Full Screen Drag, Rotate, and Zoom——全屏、旋转和缩放,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


Hold down Shift+Drag to rotate and zoom. Click the button in the top right corner to go full screen. Then do theShift+Drag thing again.

按住Shift键并拖动鼠标来旋转和缩放。单击右上角的按钮实现全屏,然后可以再次按住Shift键拖动鼠标来旋转和缩放地图。


If there is no button on the map, your browser does not support theFull Screen API.

如果地图上没有按钮,你的浏览器则不支持全屏控件的API。


代码:

<!DOCTYPE html>
<html><head><title>Full Screen Drag, Rotate, and Zoom</title><link rel="stylesheet" href="https://openlayers.org/en/v4.2.0/css/ol.css" type="text/css"><!-- The line below is only needed for old environments like Internet Explorer and Android 4.x --><script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=requestAnimationFrame,Element.prototype.classList,URL"></script><script src="https://openlayers.org/en/v4.2.0/build/ol.js"></script><style>.map:-moz-full-screen {height: 100%;}.map:-webkit-full-screen {height: 100%;}.map:fullscreen {height: 100%;}/* position the rotate control lower than usual */.ol-rotate {top: 3em;}</style></head><body><div id="map" class="map"></div><script>var map = new ol.Map({// 全屏控件controls: ol.control.defaults().extend([new ol.control.FullScreen()]),interactions: ol.interaction.defaults().extend([new ol.interaction.DragRotateAndZoom()]),layers: [new ol.layer.Tile({// 加载必应地图source: new ol.source.BingMaps({key: 'Your Bing Maps Key from http://www.bingmapsportal.com/ here',imagerySet: 'Aerial'})})],// Use the canvas renderer because it's currently the fastest// 使用canvas渲染,因为它是目前最快的target: 'map',view: new ol.View({center: [-33519607, 5616436],rotation: -Math.PI / 8,zoom: 8})});</script></body>
</html>




这篇关于Full Screen Drag, Rotate, and Zoom——全屏、旋转和缩放的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/598828

相关文章

计算绕原点旋转某角度后的点的坐标

问题: A点(x, y)按顺时针旋转 theta 角度后点的坐标为A1点(x1,y1)  ,求x1 y1坐标用(x,y)和 theta 来表示 方法一: 设 OA 向量和x轴的角度为 alpha , 那么顺时针转过 theta后 ,OA1 向量和x轴的角度为 (alpha - theta) 。 使用圆的参数方程来表示点坐标。A的坐标可以表示为: \[\left\{ {\begin{ar

JavaScript全屏,监听页面是否全屏

在JavaScript中,直接监听浏览器是否进入全屏模式并不直接支持,因为全屏API主要是关于请求和退出全屏模式的,而没有直接的监听器可以告知页面何时进入或退出全屏模式。但是,你可以通过在你的代码中跟踪全屏状态的改变来模拟这个功能。 以下是一个基本的示例,展示了如何使用全屏API来请求全屏模式,并在请求成功或失败时更新一个状态变量: javascriptlet isInFullscreen =

KLayout ------ 旋转物体90度并做平移

KLayout ------ 旋转创建的物体 正文 正文 前段时间,有个小伙伴留言问我,KLayout 中如何旋转自己创建的物体,这里特来说明一下。 import pyapoly = pya.DPolygon([pya.DPoint(0, 0), pya.DPoint(0, 5), pya

剑指offer(C++)--左旋转字符串

题目 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它! class Solution {public:string LeftRotateStri

论文阅读--Efficient Hybrid Zoom using Camera Fusion on Mobile Phones

这是谷歌影像团队 2023 年发表在 Siggraph Asia 上的一篇文章,主要介绍的是利用多摄融合的思路进行变焦。 单反相机因为卓越的硬件性能,可以非常方便的实现光学变焦。不过目前的智能手机,受制于物理空间的限制,还不能做到像单反一样的光学变焦。目前主流的智能手机,都是采用多摄的设计,一般来说一个主摄搭配一个长焦,为了实现主摄与长焦之间的变焦,目前都是采用数字变焦的方式,数字变焦相比于光学

Android 屏幕旋转 处理 AsyncTask 和 ProgressDialog 的最佳方案

初始化数据 */ private void initData(Bundle savedInstanceState) { if (savedInstanceState != null) mDatas = savedInstanceState.getStringArrayList(“mDatas”); if (mDatas == null) { mLoadingDialog = new

微策略面试题:在旋转后的数组中查找元素(二分查找)

版权所有。所有权利保留。 欢迎转载,转载时请注明出处: http://blog.csdn.net/xiaofei_it/article/details/17123303 一个无重复元素的有序数组,经过若干次旋转后,得到一个新数组。比如[1,4,5,8,10,12,56,78]变成[12,56,78,1,4,5,8,10]。 现在要在这个数组中寻找元素。 其实算法很简单,就是用二分

qt 简单实验 一个可以向左侧拖拽缩放的矩形

1.概要 向左拖拽矩形,和向右拖拽不同,向右拖拽是增加宽度,向左拖拽是增加宽度的同时还要向左移动x的坐标。 2.代码 2.1 resizablerectangleleft.h #ifndef RESIZABLERECTANGLELEFT_H#define RESIZABLERECTANGLELEFT_H#include <QWidget>#include <QMouseEvent>

delphi屏幕分辩率及缩放自适应解决方案

以下在win10上做的测试,win7未试验,有需要的可以自行测试。 首先应用程序Application.Manifest中设置为:per Monitor V2. 不然有可能窗体收不到屏幕变动通知。 Delphi10.4版本中,窗体有Scaled属性,true为默认,表示屏幕缩放时,窗体也跟着缩放。false时屏幕缩放比例的变化,窗体不会相应跟着变动。 窗体的OnAfterMonitorDpi

qt 简单实验 一个可以向右侧拖拽缩放的矩形

1.概要 目的是设置一个可以拖拽缩放的矩形,这里仅用右侧的一个边模拟这个过程。就是为了抓住核心,这个便解决了,其他的边也是一样的。而这个更能体现原理。 2.代码 2.1 resizablerectangle.h #ifndef RESIZABLERECTANGLE_H#define RESIZABLERECTANGLE_H#include <QWidget>#include <QMou