首页 / 浏览问题 / 三维GIS / 问题详情
调用geojsondatasource的时候,缩放地图会出现绘制的内容被覆盖
2EXP 2020年10月14日
var viewer = new Cesium.Viewer('cesiumContainer');

var china = Cesium.GeoJsonDataSource.load("./mapdatas/geoJson/usa_geo.topojson")

viewer.dataSources.add(china);

1个回答

您好,您那边加载的是什么数据?能看下具体的错误截图吗?
6,087EXP 2020年10月14日

显示,缩放地图的时候就成这样子了

加载矢量图层的同时设置贴地模式clampToGround :true;

这个方法之前试过的,但是你看图一和图2。有两个问题:1、没有内部轮廓线了。2、中间断了的部分看起来像有下沉。

在桌面将矢量图层生成三维切片缓存,用iServer发布服务之后再叠加到球面场景上

并且画的矢量矩形,也是会出现这个情况的。

var anotherInstance = new Cesium.GeometryInstance({

            geometry : new Cesium.RectangleGeometry({

                rectangle : Cesium.Rectangle.fromDegrees(-85.0, 20.0, -75.0, 30.0),

                vertexFormat : Cesium.PerInstanceColorAppearance.VERTEX_FORMAT

            }),

            attributes : {

                color : new Cesium.ColorGeometryInstanceAttribute(1.0, 0.0, 0.0, 0.8)

            }

        });

        viewer.scene.primitives.add(new Cesium.Primitive({

            geometryInstances : [anotherInstance],

            appearance : new Cesium.PerInstanceColorAppearance()

        }));

如果不发布iserver服务是不是就不能使用了
您那边使用的是哪个版本的WebGL包,建议前去官网下载一个最新包
SuperMap_iClient3D_10i(2021)_for_WebGL_25863
这个版本的,下载了三个版本的都是这样子的
您留个联系方式,我这边发一个给您
295166480@qq.com。麻烦发我邮箱了,谢谢了!
已发送。
收到,谢谢了!

用你发的包也是同样的问题,但是我代码中设置viewer.scene.globe.show = false;不显示地球的话,那么datasource和矢量图形都能显示,说明是调用咱们的

var viewer = new Cesium.Viewer('cesiumContainer');的时候是不是默认加了类似于地形的东西,使得绘制的图层在缩放的时候被覆盖了。

您这边给矢量图层设置贴地,clampToGround:true
找到原因了,把深度检测参数关闭,就可以了
...