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

相关文章

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

浅析Spring如何控制Bean的加载顺序

《浅析Spring如何控制Bean的加载顺序》在大多数情况下,我们不需要手动控制Bean的加载顺序,因为Spring的IoC容器足够智能,但在某些特殊场景下,这种隐式的依赖关系可能不存在,下面我们就来... 目录核心原则:依赖驱动加载手动控制 Bean 加载顺序的方法方法 1:使用@DependsOn(最直

Android ClassLoader加载机制详解

《AndroidClassLoader加载机制详解》Android的ClassLoader负责加载.dex文件,基于双亲委派模型,支持热修复和插件化,需注意类冲突、内存泄漏和兼容性问题,本文给大家介... 目录一、ClassLoader概述1.1 类加载的基本概念1.2 android与Java Class

Spring如何使用注解@DependsOn控制Bean加载顺序

《Spring如何使用注解@DependsOn控制Bean加载顺序》:本文主要介绍Spring如何使用注解@DependsOn控制Bean加载顺序,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录1.javascript 前言2. 代码实现总结1. 前言默认情况下,Spring加载Bean的顺

springboot加载不到nacos配置中心的配置问题处理

《springboot加载不到nacos配置中心的配置问题处理》:本文主要介绍springboot加载不到nacos配置中心的配置问题处理,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录springboot加载不到nacos配置中心的配置两种可能Spring Boot 版本Nacos

使用Python获取JS加载的数据的多种实现方法

《使用Python获取JS加载的数据的多种实现方法》在当今的互联网时代,网页数据的动态加载已经成为一种常见的技术手段,许多现代网站通过JavaScript(JS)动态加载内容,这使得传统的静态网页爬取... 目录引言一、动态 网页与js加载数据的原理二、python爬取JS加载数据的方法(一)分析网络请求1

IDEA下"File is read-only"可能原因分析及"找不到或无法加载主类"的问题

《IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题》:本文主要介绍IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题,具有很好的参... 目录1.File is read-only”可能原因2.“找不到或无法加载主类”问题的解决总结1.File

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

在 PyQt 加载 UI 三种常见方法

《在PyQt加载UI三种常见方法》在PyQt中,加载UI文件通常指的是使用QtDesigner设计的.ui文件,并将其转换为Python代码,以便在PyQt应用程序中使用,这篇文章给大家介绍在... 目录方法一:使用 uic 模块动态加载 (不推荐用于大型项目)方法二:将 UI 文件编译为 python 模

Spring框架中@Lazy延迟加载原理和使用详解

《Spring框架中@Lazy延迟加载原理和使用详解》:本文主要介绍Spring框架中@Lazy延迟加载原理和使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、@Lazy延迟加载原理1.延迟加载原理1.1 @Lazy三种配置方法1.2 @Component