V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
GeoJSON
tli47
V2EX  ›  地理信息系统

cesium 中加载本地搭建的影像切片服务器会出现蓝色边框,请问是什么原因?

  •  
  •   tli47 · 2023-07-27 14:21:45 +08:00 · 810 次点击
    这是一个创建于 522 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景: 想本地搭建一个离线的全球地图切片服务器供 cesium 使用。本地是使用低精度的全球卫图加局部区域高精度卫图。 先下载了全球的 1-6 级卫图,然后又下载了 7-13 级北京卫图,两者都放在一个同一个目录,然后使用 nginx 将此切片发布。

    期望: 在 cesium 地球视角过渡的时候会自然过渡到北京这个区域,并使用这个区域的高精度卫片。

    问题: 目前全球和北京地图都能在 cesium 中加载出来,但是视角从全球过渡到北京的时候,北京的卫片周边出现蓝色的边框。可以确信此蓝色的边框不是背景色(原来切片的白色背景色已经去掉了)。

    初入 gis 和 cesium 领域,请大佬们帮分析下原因,谢谢!

    8 条回复    2023-07-27 17:35:20 +08:00
    tli47
        1
    tli47  
    OP
       2023-07-27 15:30:03 +08:00
    图片:
    sadyx
        2
    sadyx  
       2023-07-27 15:45:22 +08:00
    出现蓝色说明这个层级的这个位置的 tile 丢失
    sadyx
        3
    sadyx  
       2023-07-27 15:51:12 +08:00
    蓝色是地球的颜色。其实你可以使用两个图层,将北京地图的层级调高一级,就应该不会出现这个问题了
    tli47
        4
    tli47  
    OP
       2023-07-27 15:53:17 +08:00
    @sadyx 能不能周边没有这个等级的就用默认的上层次的,也就是和全球其它地方一样,超过现在的级别( 1-6 )就是原来的图片单纯放大。
    tli47
        5
    tli47  
    OP
       2023-07-27 16:10:14 +08:00
    @sadyx 感谢,我想实现的结果就是我没有放高清图的地方就是用默认全球图层的。我现在是将全球低分辨率的和部分高分辨率的文件夹放到一个里面,如下图放置,然后使用发布服务的:


    像我这个场景,如何使用两个图层加载离线的两组或者多组区域?
    sadyx
        6
    sadyx  
       2023-07-27 16:25:10 +08:00
    @tli47 我的思路是:将全球和北京两种地图分为两个服务发布,然后图层叠加
    sadyx
        7
    sadyx  
       2023-07-27 17:02:43 +08:00
    其实 cesium 是默认调用最高层级的,比如你现在到了 12 层级的高度,但是服务最高只有 5 层级,cesium 还是会加载 5 层级的瓦片。
    盲猜瓦片丢失的原因是:举个例子,在相机层级为 7 的时候,cesium 去找瓦片服务去找层级为 7 的瓦片,然后找到了层级为 7 的文件夹,但是里面并没有该区域层级为 7 的瓦片,导致瓦片丢失。但是如果分两个服务,在层级为 7 的时候,cesium 在全球瓦片服务中没有找到层级为 7 的文件夹,这时候就使用 6 级的。

    这只是我的猜想,不一定对,希望有大佬能解答一下
    tli47
        8
    tli47  
    OP
       2023-07-27 17:35:20 +08:00
    @sadyx 的确分开两个服务发布就好了。感谢!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1209 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:08 · PVG 02:08 · LAX 10:08 · JFK 13:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.