将图块的 xyz 坐标转换为经度/纬度

2023-11-21

我想使用 openlayers 制作地图,但以独特的方式将其居中。例如,我的 z/x/y 坐标为 12/2045/-1362,如何将其转换为经度/纬度?这与此完全相反:如何通过点击Leaflet地图获取tile的X Y Z坐标

我很难理解上述链接的逻辑并反转它。我希望这里有人有这方面的经验或现成的公式。谢谢

稍后我将这样渲染地图的中心:

var z = 12;
var x = 2045;
var y = -1362;

function convertXYZtoCoor(z, x, y) {
    // code here
    return [lng, lat];
}

var coor = convertXYZtoCoor(z, x, y);
var view = new ol.View({
                    center: ol.proj.transform(
                        [coor[0], coor[1]], 'EPSG:4326', 'EPSG:3857'),
                    zoom: z
            });

var map = new ol.Map({
                layers: [
                    new ol.layer.Tile({
                        source: new ol.source.OSM()
                    })
                ],
                target: 'map',
                view: view
          });

希望我的问题能得到更多理解,谢谢。

编辑:添加代码


var tileExtent = function(tileCoord){
    var z = tileCoord[0];
    var x = tileCoord[1];
    var y = tileCoord[2];
    var tileGridOrigin = tileGrid.getOrigin(z);
    var tileSizeAtResolution = tileGrid.getTileSize(z) * tileGrid.getResolution(z);
    return [
        tileGridOrigin[0] + tileSizeAtResolution * x,
        tileGridOrigin[1] + tileSizeAtResolution * y,
        tileGridOrigin[0] + tileSizeAtResolution * (x + 1),
        tileGridOrigin[1] + tileSizeAtResolution * (y + 1)
    ];
}

您可以在以下位置进行测试/验证http://jsfiddle.net/eurx57s7/

注意(从 ol3 示例中窃取,但它适用于此处):图块坐标是 ol3 归一化图块坐标(原点左下),而不是 OSM 图块坐标(原点左上)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将图块的 xyz 坐标转换为经度/纬度 的相关文章

  • 暂停除了已激活的玩家之外的所有其他玩家。

    我有这个插件 它可以将不同的样式应用于 html5
  • 使用 jquery 远程图像属性

    目前我正在尝试获取远程图像宽度 高度 我正在开发一个链接共享模块 就像当你在 Facebook 上粘贴链接时 你可以看到标题 描述和图像 所以我尝试使用 php getimagesize 来获取图像宽度 高度 但速度非常慢 所以我正在考虑使
  • Chart.js 在初始化时设置活动段

    我正在使用 Chart js v2 并且尝试在加载图表时模拟圆环图上某个段的 悬停状态 因此看起来有一个部分已突出显示 我已经搜索和梳理了代码一天 但找不到一个好的方法来做到这一点 提前致谢 设置片段的悬停样式有点令人困惑 因为它没有真正记
  • 为什么 iife 在一个简单的例子中不起作用?

    我不明白为什么函数表达式调用不起作用并抛出错误 你能给我解释一下吗 var a function x alert x function a 1 谢谢大家 任务比我想象的要容易得多 这是因为 JS 将 IIFE 解析为函数的参数调用 这样做时
  • 可以在初始 DOM 解析期间/之前修改 DOM 吗?

    是否可以在初始 DOM 解析期间或之前修改 DOM 或者我是否必须等到 DOM 被解析和构建之后才能与其交互 更具体地说 是否有可能阻止 DOM 中的脚本元素使用用户脚本 内容脚本或 Chrome 或 Firefox 中的类似脚本运行 在解
  • Snap.svg - 停止在可悬停元素的子元素上重新触发悬停事件

    对于一个项目 我使用的 SVG 形状由背景多边形和背景多边形上方的一些文本 我已将其转换为路径 组成 我正在使用 Snap svg 为我的形状设置动画 当我将鼠标悬停在多边形上时 形状应该缩放到特定尺寸 包括其中的所有内容 鼠标移开时 形状
  • 隐藏 Div 的父级

    我只是想隐藏父divcomments section div class content content green div div div 我试过这个 document getElementById comments section pa
  • Draggable JS Bootstrap 模式 - 性能问题

    对于工作中的项目 我们在 JavaScript 中使用 Bootstrap Modal 窗口 我们想让一些窗口可移动 但我们遇到了 JQuery 的性能问题 myModal draggable handle modal header Exa
  • 如何纠正流警告:解构(缺少注释)

    我正在编写一个小型 React Native 应用程序 并且正在尝试使用 Flow 但我无法在任何地方真正获得有关它的正确教程 我不断收到错误 destructuring Missing annotation 有关 station 这段代码
  • 将 GMT 时间转换为当地时间

    我以这种格式从我的服务器获取 GMT 时间 Fri 18 Oct 2013 11 38 23 GMT 我的要求是使用Javascript将此时间转换为本地时间 例如 如果用户来自印度 首先我需要采用时区 5 30并将其添加到我的服务器时间并
  • 如何制作没有 ng-repeat 的模板并使用 Angular-drag-and-drop-lists 将数据传递到 $scope?

    我想用角度拖放列表 https github com marceljuenemann angular drag and drop lists使用我自己的网格模板到所见即所得编辑器 如何构建我自己的 HTML 模板而不需要ng repeat因
  • 刷新页面时保存用户的选择

    我目前有一个页面显示不同团队的数据 我有一些数据 用户可以单击使其处于 打开 或 关闭 状态 并为每个数据显示不同的图标 它基本上就像一个清单 只是没有物理复选框 我想记住哪些 复选框 已被选中 即使在用户刷新页面或关闭浏览器并稍后返回之后
  • 可以设置标题样式吗? (并且使用CSS或js?)[重复]

    这个问题在这里已经有答案了 我想知道是否可以设计一个title a href title This is a title Hello a 样式问题有两个方面 文本格式 编码 我猜这是可能的 所以在问题中这样做 工具提示样式 你能把它弄大一点
  • 正则表达式 - 从 markdown 字符串中提取所有标题

    我在用灰质 https www npmjs com package gray matter 以便将文件系统中的 MD 文件解析为字符串 解析器产生的结果是这样的字符串 n Clean er ReactJS Code Conditional
  • 在移动设备上滚动

    这个问题更多的是一个建议研究 我确实希望它对其他人有帮助 并且它不会关闭 因为我不太确定在哪里寻求有关此事的建议 在过去的 6 个月里 我一直在进行移动开发 我有机会处理各种设备上的各种情况和错误 最麻烦的是滚动问题 当涉及到在网站的多个区
  • Vue 和 Vuex:处理依赖的计算属性

    我的应用程序是一个使用 Vuex 在 Vue 中构建的精简电子表格 关键组件是TableCollection Table and Row The TableCollection有一个包含多个的数组Table对象 每个Table有一个包含多个
  • 代码镜像错误:未捕获错误:扩展集中无法识别扩展值([对象对象])

    全部 我目前正在从事一个React Electron项目 该项目的目标是完成一个Markdown编辑器 当我配置codemirror 该程序报告错误说 Uncaught Error Unrecognized extension value
  • 如何使用 crypto-js 解密 AES ECB

    我正在尝试将加密数据从 flash 客户端 发送到服务器端的 javascript 在 asp 中作为 jscript 运行 有几个 javascript Aes 库 但它们实际上没有文档记录 我正在尝试使用 crypto js 但无法让代
  • 用于交互式图形绘制的轻量级 JavaScript 库? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有兴趣了解用于绘制交互式图表的最轻量级 javascript 库 我掌握的数据主要是与海洋研究相关的科学数据 我知道一些 jquery
  • Jquery - 选择选项后如何获取选项的特定数据类型?

    我将直接跳到标记 然后解释我想要做什么 HTML 选择选项

随机推荐

  • Heroku 和 ip 掩码

    我正在构建一个购物网站 该网站使用允许信用卡付款的服务 tranzilla 该服务需要一个 IP 或 IP 掩码 以便允许请求 通过套接字 问题是我使用 heroku 作为托管 它是去中心化的 有什么办法可以做到这一点吗 除了购买自定义 s
  • Python:有条件地从列表中删除元素

    假设我有一个元组列表 x 1 2 3 4 7 4 5 4 在共享第二个元素的所有元组中 我想保留具有最大第一个元素的元组 y 1 2 7 4 在 Python 中实现这一目标的最佳方法是什么 感谢您的回答 如果有区别的话 元组可以是二元素列
  • 如何在 Android 上切换夜间模式和白天模式主题? [关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 我想使用 设置 共享首选项 在 Android 应用程序中设置夜间模式和白天模式主题 如
  • C 和 C++ 中静态变量存储在哪里?

    静态变量存储在可执行文件的哪个段 BSS DATA 其他 中 以便它们不会发生名称冲突 例如 foo c bar c static int foo 1 static int foo 10 void fooTest void barTest
  • 如何使用字符串值代替 WPF 刻度栏上的刻度?

    我希望自定义基本 WPF 的外观TickBar 我想知道是否有一种简单的方法可以使用控件模板来执行此操作 我希望用数字代替刻度栏上的刻度 我希望数字的位置与滑块的值相对应 很像链接中的图片 我四处搜寻 发现一个建议是创建一个继承自的类Tic
  • 仅针对提供程序中的某些特定 ETW 任务激活堆栈?

    从 Windows 7 开始 可以为用户模式事件激活调用堆栈 这工作得很好 但有时不需要为提供者中的所有任务 事件激活堆栈 最好只为某些特定任务激活堆栈 这可能吗 是的 从 Windows 8 1 开始 这是可能的 其中的类型条目 EVEN
  • LinkedHashSet 删除重复对象

    我有一个简单的问题要问你 我的 Product 类具有如下字段 private Integer id private String category private String symbol private String desc pri
  • Glibc、GCC、binutils 兼容性

    有没有关于 binutils glibc 和 GCC 之间版本兼容性的官方文档 我发现这个矩阵binutils 与 GCC 版本兼容性 对于 GCC 和 glibc 来说 如果有这样的东西就好了 我问这个问题的目的是 我需要知道我是否可以构
  • 使用 Groovy Jenkins API 更新 Jenkins 作业

    我正在考虑使用 Groovy 脚本控制台在 Jenkins 上创建和更新作业 使用此处记录的 API http javadoc jenkins ci org 我发现了如何使用创建工作createProjectFromXML String n
  • 是否可以在 IE8 中运行某些 HTML5 输入类型?

    是否可以使用任何库在 IE8 中运行某些 HTML5 输入类型 例如范围 Points
  • 我的 Java 代码出现访问限制错误

    我正在尝试从网络摄像头捕获图像 但我的计算机中出现错误saveJPG method ERROR Multiple markers at this line Access restriction The type JPEGCodec is n
  • CURL 访问需要从不同页面登录的页面

    我有 2 页 xyz example a and xyz example b 我只能访问xyz example b当且仅当我登录xyz example a第一的 如果访问xyz example b无需通过其他 我只是通过浏览器拒绝访问 没有
  • 如何在 telegram bot api 中的一个命令中获取多个输入?

    例如 机器人有命令 set coordinates 它接受纬度和经度 如下所示 机器人 输入纬度 用户 16 4353 机器人 输入经度 用户 140 4325 问题是机器人每条消息仅接收一个坐标 并且要了解它是否需要请求纬度或经度 它应该
  • Scala 中数组的按元素求和

    如何计算数组的逐元素总和 val a new Array Int 5 val b new Array Int 5 assign values desired output Array gt a 0 b 0 a 1 b 1 a 2 b 2 a
  • Java中有互斥体吗?

    java中有互斥对象或者创建互斥对象的方法吗 我这样问是因为用 1 个许可证初始化的信号量对象对我没有帮助 想想这个案例 try semaphore acquire do stuff semaphore release catch Exce
  • 可以在Python中声明一个抽象异常吗?

    我想在 Python 中声明用户定义异常的层次结构 但是 我想要我的顶级用户定义类 TransactionException 变得抽象 也就是说 我打算TransactionException指定其子类需要定义的方法 然而 Transact
  • 什么时候应该使用 PHP mysqli_real_escape_string() 函数? [复制]

    这个问题在这里已经有答案了 我知道mysqli real escape string可以使用函数来防止SQL注入 但是 mysql real escape string 不会保护您免受某些注入 我的问题是我什么时候应该使用 mysqli r
  • 多态性和 SwiftUI

    给出以下示例 class ProfileTab Identifiable let id UUID let name String init name String self name name class ProfileQuoteTab P
  • 如何设置静态 UITableView 作为 UIView 的子视图?

    当我与一个TableViewController我可以在故事板中设置所有内容 自从我使用静态单元格代替动态属性对于我的表视图 我发现这种方法更方便且更容易实现 我连接新的 UITableView 类并简单地删除所有委托方法 工作起来就像一个
  • 将图块的 xyz 坐标转换为经度/纬度

    我想使用 openlayers 制作地图 但以独特的方式将其居中 例如 我的 z x y 坐标为 12 2045 1362 如何将其转换为经度 纬度 这与此完全相反 如何通过点击Leaflet地图获取tile的X Y Z坐标 我很难理解上述