【超图+CESIUM】【基础API使用示例】31、超图|CESIUM -【坐标转换】屏幕坐标转世界坐标
前言
缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.csdn.net/weixin_44402694/article/details/123110136)以下示例使用到的公共静态资料,不建议下载,建议官网自行下载超图Build资源,示例所涉及图片会在示例使用到时提供出来。如有需要可下载:[https://download.csdn.net/download/weixin_44402694/82180350](https://download.csdn.net/download/weixin_44402694/82180350)。【坐标转换】屏幕坐标转世界坐标。
使用
效果
核心代码
// 屏幕坐标转世界坐标
function convertion1(left, top) {const pick1 = new Cesium.Cartesian2(left, top)return viewer.scene.globe.pick(viewer.camera.getPickRay(pick1),viewer.scene)
}
- 完整代码
<!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>坐标转换 - 屏幕坐标转世界坐标</title><link href="./public/Build/Cesium/Widgets/widgets.css" rel="stylesheet" /><scripttype="text/javascript"src="./public/Build/Cesium/Cesium.js"></script><style>* {margin: 0;padding: 0;}html,body,#cesium-container {width: 100%;height: 100%;}.panel {width: 150px;position: fixed;left: 10px;top: 10px;z-index: 1;background-color: #fff;}.panel .btn {cursor: pointer;word-break: break-all;}.latlng-wrap {position: fixed;left: 200px;top: 10px;z-index: 1;background-color: #fff;display: flex;flex-direction: column;}.old {display: flex;flex-direction: row;}.old p {margin-right: 20px;}.new {display: flex;flex-direction: row;}.new p {margin-right: 20px;}.new p .result1 {color: red;}</style></head><body><div id="cesium-container" /><div class="panel"><p class="btn">弧度转经纬度</p></div><div class="latlng-wrap"><div class="old"><p>left:1083.5445504859533</p><p>top: 475.8675256826065</p></div><div class="new"><p><span>x:</span><span class="result1"></span></p><p><span>y:</span><span class="result1"></span></p><p><span>z:</span><span class="result1"></span></p></div></div><script>let viewerwindow.onload = function () {viewer = new Cesium.Viewer('cesium-container')initBindConversionEventHandler()}// 初始化绑定转换事件function initBindConversionEventHandler() {const btns = document.querySelectorAll('.panel .btn')btns[0].addEventListener('click', () => {const resultSpan = document.querySelectorAll('.result1')const { x, y, z } = convertion1(1083.5445504859533,475.8675256826065)resultSpan[0].innerHTML = xresultSpan[1].innerHTML = yresultSpan[2].innerHTML = z})}// 屏幕坐标转世界坐标function convertion1(left, top) {const pick1 = new Cesium.Cartesian2(left, top)return viewer.scene.globe.pick(viewer.camera.getPickRay(pick1),viewer.scene)}</script></body>
</html>
【超图+CESIUM】【基础API使用示例】31、超图|CESIUM -【坐标转换】屏幕坐标转世界坐标相关推荐
- 【超图+CESIUM】【基础API使用示例】04、超图|CESIUM - 设置地图风格样式
前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...
- 【超图+CESIUM】【基础API使用示例】10、超图|CESIUM - 场景出图、下载当前截图
前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...
- 【超图+CESIUM】【基础API使用示例】42、超图|CESIUM - 绘制编辑线段|读取kml文件绘制编辑|导出kml线段数据
前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...
- 【超图+CESIUM】【基础API使用示例】38、超图|CESIUM - 特效-云层设置
前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...
- 【超图+CESIUM】【基础API使用示例】41、超图|CESIUM - 特效-雪景设置
前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...
- 【超图+CESIUM】【基础API使用示例】43、超图|CESIUM - 绘制编辑面|读取kml文件绘制编辑|导出kml面数据
前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...
- 【超图+CESIUM】【基础API使用示例】22、超图|CESIUM - 标绘面:Cesium.DrawHandler绘制面Cesium.DrawMode.Polygon
前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...
- 【超图+CESIUM】【基础API使用示例】16、超图|CESIUM -设置地球模式:椭球模式、圆球模式
前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...
- 【超图+CESIUM】【基础API使用示例】50、超图|CESIUM - moveLeft\moveRight\moveForward\moveBackward实现运动中的碰撞检测效果
前言 由于项目业务需要,所以实现了这四个api的碰撞检测效果. 核心是通过ray射线来做碰撞检测. 代码目录结构 核心代码 <ul class="btn-list">& ...
- Cesium基础教程
一.概述 Cesium是国外一个基于javascript的地图引擎,支持3D.2D.2.5D形式的展示,可以自行绘制图形.高亮区域,并提供良好的触摸支持,并支持大多数的浏览器和移动端. Cesium ...
最新文章
- linux添加磁盘后进入grub,从硬盘安装 Linux 和从 GRUB 命令行启动操作系统
- Android JNI 报错(signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr )
- 一行Python代码
- ADO.NET Entity Framework学习笔记(2)建模[转]
- 【贪心】Radar Installation(poj 1328)
- NeHe OpenGL教程 第四课:旋转
- 学习记录——背包问题基础公式解释回顾
- python程序中的内存泄露(matplotlib内存泄漏)
- 加密货币大崩盘:第一季度最大跌幅高达 88%!
- Element-UI安装和项目开发
- lte基站可以做ntp server吗?_你手机信号强吗?学会这几招快速提升你的手机信号...
- java 40期_【40期】说一下线程池内部工作原理
- .net core不能使用httpget_.NET Core使用Nlog记录日志
- java递归 杨辉三角_java杨辉三角递归实现
- 数字资产期权新手入门手册 | TokenInsight
- oracle wmsys.wm_concat ORA-00932: 数据类型不一致: 应为 -, 但却获得 CLOB
- 网络挖掘初探索(2)_NEO4J图可视化
- python读取文件名包含某字符的文件_Python 在当前和子目录中查找文件名中包含指定字符串的文件...
- mongodb 基本操作:文档查询
- 【解题】核电站问题(SGOI)