cesiumlab切片通过arcgisjs加载

2024-01-17 19:12

本文主要是介绍cesiumlab切片通过arcgisjs加载,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

cesiumlab切片通过arcgisjs加载

需要注意2个地方,一个是tileInfo,一个是getTileUrl,
在tileInfo中定义好cesiumlab切片的相关信息。
getTileUrl 格式化url的格式。
注意设置编辑,避免超出范围报404。

<html lang="en"><head><meta charset="utf-8" /><meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no" /><title>WebTileLayer</title><style>html,body,#viewDiv {padding: 0;margin: 0;height: 100%;width: 100%;}</style><link rel="stylesheet" href="http://localhost:8093/arcgis/4.28/esri/themes/light/main.css" /><script src="http://localhost:8093/arcgis/4.28/init.js"></script><script>var bashUrl = "http://localhost:8093/cesiumKlmy"var url = "/{z}/{x}/{y}.png";require(["esri/Map", "esri/views/SceneView", "esri/layers/WebTileLayer", "esri/geometry/SpatialReference", 'esri/layers/support/TileInfo'],(Map, SceneView, WebTileLayer, SpatialReference, TileInfo) => {const tileInfo = new TileInfo({dpi: 90.71428571428571,format: "image/png",spatialReference: new SpatialReference({wkid: 4326,}),origin: {x: -180,y: 90},lods:[{level: 0,levelValue: 1,resolution: 0.703125,scale: 295497593.05875003},{level: 1,levelValue: 2,resolution: 0.3515625,scale: 147748796.52937502},{level: 2,levelValue: 3,resolution: 0.17578125,scale: 73874398.264687508},{level: 3,levelValue: 4,resolution: 0.087890625,scale: 36937199.132343754},{level: 4,levelValue: 5,resolution: 0.0439453125,scale: 18468599.566171877},{level: 5,levelValue: 6,resolution: 0.02197265625,scale: 9234299.7830859385},{level: 6,levelValue: 7,resolution: 0.010986328125,scale: 4617149.8915429693},{level: 7,levelValue: 8,resolution: 0.0054931640625,scale: 2308574.9457714846},{level: 8,levelValue: 9,resolution: 0.00274658203125,scale: 1154287.4728857423},{level: 9,levelValue: 10,resolution: 0.001373291015625,scale: 577143.73644287116},{level: 10,levelValue: 11,resolution: 0.0006866455078125,scale: 288571.86822143558},{level: 11,levelValue: 12,resolution: 0.00034332275390625,scale: 144285.93411071779},{level: 12,levelValue: 13,resolution: 0.000171661376953125,scale: 72142.967055358895},{level: 13,levelValue: 14,resolution: 8.58306884765625e-005,scale: 36071.483527679447},{level: 14,levelValue: 15,resolution: 4.291534423828125e-005,scale: 18035.741763839724},{level: 15,levelValue: 16,resolution: 2.1457672119140625e-005,scale: 9017.8708819198619},{level: 16,levelValue: 17,resolution: 1.0728836059570313e-005,scale: 4508.9354409599309},{level: 17,levelValue: 18,resolution: 5.3644180297851563e-006,scale: 2254.4677204799655},{level: 18,levelValue: 19,resolution: 2.68220901489257815e-006,scale: 1127.23386023998275},{level: 19,levelValue: 20,resolution: 1.341104507446289075e-006,scale: 563.616930119991375},{level: 20,levelValue: 21,resolution: 6.705522537231445375e-7,scale: 281.8084650599956875},{level: 21,levelValue: 22,resolution: 3.3527612686157226875e-7,scale: 140.90423252999784375}]})// 创建WebTileLayer实例const mylayer = new WebTileLayer({urlTemplate: bashUrl + url,tileInfo: tileInfo,spatialReference: {wkid: 4326},// 设置边界,避免超出范围了请求后台报404fullExtent:new Extent({xmin:84.96650291898627,ymin:45.53639816676759,xmax:85.03257700820414,ymax:45.600000206741775,})});// 格式化urlmylayer.getTileUrl = function (level, row, col) {return this.urlTemplate.replace("{z}", level).replace("{x}", col).replace("{y}", row);}// 创建地图实例const map = new Map();// 创建视图实例const view = new SceneView({container: "viewDiv",map: map,// 中心点位置center: [85.03257700820414, 45.53639816676759],zoom: 10,spatialReference: new SpatialReference({wkid: 4326,})});map.add(mylayer, 0);})</script>
</head><body><div id="viewDiv"></div>
</body></html>

这篇关于cesiumlab切片通过arcgisjs加载的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

最好用的WPF加载动画功能

《最好用的WPF加载动画功能》当开发应用程序时,提供良好的用户体验(UX)是至关重要的,加载动画作为一种有效的沟通工具,它不仅能告知用户系统正在工作,还能够通过视觉上的吸引力来增强整体用户体验,本文给... 目录前言需求分析高级用法综合案例总结最后前言当开发应用程序时,提供良好的用户体验(UX)是至关重要

使用Python实现大文件切片上传及断点续传的方法

《使用Python实现大文件切片上传及断点续传的方法》本文介绍了使用Python实现大文件切片上传及断点续传的方法,包括功能模块划分(获取上传文件接口状态、临时文件夹状态信息、切片上传、切片合并)、整... 目录概要整体架构流程技术细节获取上传文件状态接口获取临时文件夹状态信息接口切片上传功能文件合并功能小

MyBatis延迟加载的处理方案

《MyBatis延迟加载的处理方案》MyBatis支持延迟加载(LazyLoading),允许在需要数据时才从数据库加载,而不是在查询结果第一次返回时就立即加载所有数据,延迟加载的核心思想是,将关联对... 目录MyBATis如何处理延迟加载?延迟加载的原理1. 开启延迟加载2. 延迟加载的配置2.1 使用

Android WebView的加载超时处理方案

《AndroidWebView的加载超时处理方案》在Android开发中,WebView是一个常用的组件,用于在应用中嵌入网页,然而,当网络状况不佳或页面加载过慢时,用户可能会遇到加载超时的问题,本... 目录引言一、WebView加载超时的原因二、加载超时处理方案1. 使用Handler和Timer进行超

Flutter 进阶:绘制加载动画

绘制加载动画:由小圆组成的大圆 1. 定义 LoadingScreen 类2. 实现 _LoadingScreenState 类3. 定义 LoadingPainter 类4. 总结 实现加载动画 我们需要定义两个类:LoadingScreen 和 LoadingPainter。LoadingScreen 负责控制动画的状态,而 LoadingPainter 则负责绘制动画。

使用WebP解决网站加载速度问题,这些细节你需要了解

说到网页的图片格式,大家最常想到的可能是JPEG、PNG,毕竟这些老牌格式陪伴我们这么多年。然而,近几年,有一个格式悄悄崭露头角,那就是WebP。很多人可能听说过,但到底它好在哪?你的网站或者项目是不是也应该用WebP呢?别着急,今天咱们就来好好聊聊WebP这个图片格式的前世今生,以及它值不值得你花时间去用。 为什么会有WebP? 你有没有遇到过这样的情况?网页加载特别慢,尤其是那

gazebo 已加载模型但无法显示

目录 写在前面的话问题一:robot_state_publisher 发布机器人信息失败报错一 Error: Error document empty.报错二 .xcaro 文件中有多行注释成功启动 问题二:通过 ros2 启动 gazebo 失败成功启动 问题三:gazebo 崩溃和无法显示模型问题四: 缺少 robot_description 等话题正确的输出 写在前面的话

JVM类的加载器及加载过程

类的加载器及加载过程 文章目录 类的加载器及加载过程类的加载过程加载:链接(验证、准备、解析):初始化: 类加载器的分类引导类加载器:BootstrapClassLoader 启动类加载器( C/C++实现,嵌套在JVM内部)自定义类加载器(所有派生于抽象类ClassLoader的类加载器)获取ClassLoader的途径 双亲委派机制(重点)判断两个Class对象是否为同一个类

Unity Adressables 使用说明(六)加载(Load) Addressable Assets

【概述】Load Addressable Assets Addressables类提供了加载 Addressable assets 的方法。你可以一次加载一个资源或批量加载资源。为了识别要加载的资源,你需要向加载方法传递一个键或键列表。键可以是以下对象之一: Address:包含你分配给资源的地址的字符串。Label:包含分配给一个或多个资源的标签的字符串。AssetReference Obj

Eclipse发布Maven项目到tomcat,无法加载到lib文件夹下的jar包

BMS 解决方法: 当我们发布web项目到tomcat时,访问地址时会报一个classnotfound的错误,但是eclipse中的项目中都已经添加了相应的类,有一种比较容易犯的错误是,你没有把额外所需的jar包加到tomcat中的lib文件夹中,在这里介绍一种在项目中直接添加jar包到lib目录下:  右键已创建的web项目——properties属性——点击Deployment Assem