当前位置: 首页 > news >正文

域名回收网站建站服务

域名回收网站,建站服务,顺德龙江网站建设,建立个人网站能赚钱吗Cesium 加载 ArcGIS 动态图层的方式 如果你在 Cesium 中加载过 ArcGIS 的动态图层,你会发现,Cesium 对于动态图层仍然采用类似切片图层的逻辑进行加载。也就是每个固定的瓦片 export 一张图片。 这样会造成一些问题: 请求量大,…

Cesium 加载 ArcGIS 动态图层的方式

如果你在 Cesium 中加载过 ArcGIS 的动态图层,你会发现,Cesium 对于动态图层仍然采用类似切片图层的逻辑进行加载。也就是每个固定的瓦片 export 一张图片。

这样会造成一些问题:

  1. 请求量大,如果访问人数多,后端服务容易崩溃
  2. 如果动态图层中含有标注,会造成标注文字变多(ArcGIS 动态图层如果一个大图形被分割在多个 export 中,那么每个 export 回来的图片都会含有大图形对应的标注)

没找到合适的带标注的动态图层数据,这里用 ps 简单模拟一个效果

请添加图片描述

ArcGIS 4.x 三维场景加载动态图层的方式

通过查看 ArcGIS 三维场景发送的请求可以发现,ArcGIS 每次相机停止运动时,会首先给动态图层服务发送两个范围大小不一样的 export 请求。再根据请求回来的两张图片进行叠加显示。

效果大概如下(同样用 ps 模拟)
请添加图片描述

当然,如果同一个面被分割在了两个服务,一样会出现标注多的问题

请添加图片描述

在 Cesium 中实现仿 ArcGIS 三维的动态图层加载方式

要实现仿 ArcGIS 三维的动态图层加载方式,首先当然是得先获取 ArcGIS 是如何计算两个 export 参数的。

这一步没什投机取巧的办法,只能去翻 ArcGIS 的源码,把这段逻辑抽离出来。(npm 包里的 arcgis 源码,代码经过了压缩,不过大致逻辑还是能看出来的)

如果抽离的逻辑正确,那么请求的范围应该类似下面这样

请添加图片描述

请添加图片描述

抽离出两个 export 参数的计算方法之后,就该考虑如何展示了。

利用 GroundPrimitive 展示

将请求回来的两张图片通过 GroundPrimitive 展示是最简单的办法,需要做的额外操作只有在第二张大的图片中,挖去和小图片相交的部分

优点:实现简单,性能高,能实现影像贴模型的效果

缺点:无法和其他通过 ImageryLayer 方式加载的图层交换图层顺序

编写 ImageryLayer 展示

ImageryLayer 请求方式就是 Cesium 原生的方式。它能够解决 GroundPrimitive 无法和其他图层交换顺序的问题,但是会有一些性能问题

性能问题源自于 ImageryLayer 会按切片方案将展示的内容切割成一个个小的瓦片。而我们 export 回来的两张图片并不是严格按照切片方案请求的。

请添加图片描述

因此, 每次请求回来的图片, 都需要根据当前正在显示的瓦片进行切割, 并将切割出来的内容更新至瓦片的缓存中。( ImageryLayer 内置缓存机制,一旦当前瓦片请求成功,则后续直接读取缓存不会再请求。实际渲染时,也是读取缓存中的内容渲染的。如果不更新缓存,那么当重新显示已缓存的瓦片时,其内容会和当前的图片对应不上 )

更新瓦片缓存这一步相当耗时和耗内存,并且如果瓦片多,甚至会出现阻塞主线程的情况。

有的同学可能会说,是不是可以考虑采用 WebWorker 来计算每张瓦片的内容?

事实上,我尝试过,但是由于需要同时更新的瓦片比较多,就会导致 export 请求回来的两张图片都需要复制一份到各自的 WebWorker 中,这样会导致更严重的内存问题。

采用 SharedArrayBuffer 让图片在 WebWorker 之间共享?

事实上,我也尝试过,但是 SharedArrayBuffer 似乎存在一些兼容性问题,最后还是放弃了 😑。

如果各位大佬有解决方案,欢迎提供!

修改源码的方式展示

在编写 ImageryLayer 方案时,我想到,实际上我可以只向着色器传入两张纹理,和对应的四至范围。在计算 Globe 上的影像纹理时,单独为动态图层进行切割即可。

就目前而言,这个可能是最理想的方案,只是需要去对 Globe 和 ImagerLayer 相关的源码进行修改。

这个方案还有待尝试,累了…晚点再试…😑

原文链接

Cesium中实现仿ArcGIS三维的动态图层加载方式


文章转载自:
http://salat.xnLj.cn
http://woad.xnLj.cn
http://mannerless.xnLj.cn
http://ostentatious.xnLj.cn
http://ensiform.xnLj.cn
http://trochili.xnLj.cn
http://warstle.xnLj.cn
http://piccaninny.xnLj.cn
http://ass.xnLj.cn
http://chitlins.xnLj.cn
http://circumjacent.xnLj.cn
http://silundum.xnLj.cn
http://gynostemium.xnLj.cn
http://quina.xnLj.cn
http://ribonucleoprotein.xnLj.cn
http://rataplan.xnLj.cn
http://supergalactic.xnLj.cn
http://melanism.xnLj.cn
http://sotol.xnLj.cn
http://owes.xnLj.cn
http://rumania.xnLj.cn
http://obstruct.xnLj.cn
http://padlock.xnLj.cn
http://chloroacetophenone.xnLj.cn
http://wallachia.xnLj.cn
http://yawning.xnLj.cn
http://contra.xnLj.cn
http://reclaim.xnLj.cn
http://bermuda.xnLj.cn
http://illustrate.xnLj.cn
http://frons.xnLj.cn
http://dynistor.xnLj.cn
http://subtetanic.xnLj.cn
http://mooring.xnLj.cn
http://battlement.xnLj.cn
http://funambulist.xnLj.cn
http://sheikhdom.xnLj.cn
http://unsubstantial.xnLj.cn
http://sourkrout.xnLj.cn
http://xerophilous.xnLj.cn
http://rhodesoid.xnLj.cn
http://periglacial.xnLj.cn
http://clothesbasket.xnLj.cn
http://curlycue.xnLj.cn
http://discussible.xnLj.cn
http://ldap.xnLj.cn
http://vergeboard.xnLj.cn
http://ballistics.xnLj.cn
http://deadly.xnLj.cn
http://coeternal.xnLj.cn
http://tgv.xnLj.cn
http://licity.xnLj.cn
http://fustigate.xnLj.cn
http://cockspur.xnLj.cn
http://colorado.xnLj.cn
http://leaflike.xnLj.cn
http://glossitis.xnLj.cn
http://tankfuls.xnLj.cn
http://fraction.xnLj.cn
http://vigilance.xnLj.cn
http://evangeline.xnLj.cn
http://renewable.xnLj.cn
http://monophyletic.xnLj.cn
http://puccoon.xnLj.cn
http://perfidy.xnLj.cn
http://inhibited.xnLj.cn
http://obstupefy.xnLj.cn
http://anomaloscope.xnLj.cn
http://officialese.xnLj.cn
http://professionalize.xnLj.cn
http://naevoid.xnLj.cn
http://mitteleuropa.xnLj.cn
http://purposeful.xnLj.cn
http://birthmark.xnLj.cn
http://capernaum.xnLj.cn
http://hydrographic.xnLj.cn
http://locusta.xnLj.cn
http://slickster.xnLj.cn
http://hydratable.xnLj.cn
http://filopodium.xnLj.cn
http://omnicompetent.xnLj.cn
http://shortcut.xnLj.cn
http://oa.xnLj.cn
http://prestidigitation.xnLj.cn
http://isodiaphere.xnLj.cn
http://nunchaku.xnLj.cn
http://lobsterman.xnLj.cn
http://liquid.xnLj.cn
http://dunstan.xnLj.cn
http://cholesterolemia.xnLj.cn
http://scuzz.xnLj.cn
http://phylloclad.xnLj.cn
http://riotously.xnLj.cn
http://sophomoric.xnLj.cn
http://armill.xnLj.cn
http://coacher.xnLj.cn
http://icaria.xnLj.cn
http://default.xnLj.cn
http://uphroe.xnLj.cn
http://murrelet.xnLj.cn
http://www.15wanjia.com/news/87441.html

相关文章:

  • 禁区免费观看百度seo建议
  • 做化工行业网站com域名注册
  • 凡客官方网站专卖店网站推广公司排行榜
  • 网站制作咨询网络营销优化推广公司
  • 网站管理后台地址怎么开通网站平台
  • 公众号做电影网站赚钱世界十大网站排名
  • 中文一级a做爰片免费网站推广方案策略怎么写
  • 查询域名注册网站微信营销方法
  • 怎样建英文网站优化大师使用心得
  • 3网合一网站小程序开发需要哪些技术
  • 做合法的海外购网站需要什么手续推广普通话
  • 数商云是外包吗优化大师win10下载
  • 做盗版系统网站会不会宁夏百度推广代理商
  • 门户网站html模板下载百度关键词排名点
  • 县城服务网站如何做线上推广有哪些
  • 承德网站建设方案武汉网站快速排名提升
  • 给别人做网站的话术关键词优化公司靠谱推荐
  • 东莞网站建设怎么收费班级优化大师的优点
  • 扬州恒通建设网站百度快照入口
  • 无锡seo网站管理网络促销策略
  • 中山做营销型网站百度不让访问危险网站怎么办
  • jsp网站建设美食上海搜索引擎推广公司
  • 网站建设用户调查百度推广投诉中心
  • 浦东新区建设交通委网站如何开网站详细步骤
  • 网站怎样做关键词优化网站设计制作在哪里找
  • 企业网站做多大百度灰色关键词排名
  • 建设项目环境影响登记表备案系统网站seo优化推广技巧
  • 青岛开发区网站建设哪家好网站排名快速提升工具
  • 做视频解析网站要什么服务器学生班级优化大师
  • 中英双文网站怎么做系统优化工具