我的github
posts - 3170,  comments - 42,  views - 157万

1.3.Camera.js

复制代码
              if (cartographic.height < height) {
                    cartographic.height = height;
                    if (mode === SceneMode.SCENE3D) {
                        ellipsoid.cartographicToCartesian(cartographic, this.position);
                    } else {
                        projection.project(cartographic, this.position);
                    }
                    heightUpdated = true;
                }
复制代码

改为

复制代码
                if (cartographic.height < height) {
                    if (M.underEarth.enable && cartographic.height > (height - M.underEarth.enableDepth)){
                        return;
                    }
                    cartographic.height = height;
                    if (mode === SceneMode.SCENE3D) {
                        ellipsoid.cartographicToCartesian(cartographic, this.position);
                    } else {
                        projection.project(cartographic, this.position);
                    }
                    heightUpdated = true;
                }
复制代码

主要是监测到进入地下不自己弹出来的问题

参考:https://www.shuzhiduo.com/A/rV57QjWazP/

第一步:

1.修改cesium源码,在GlobeSurfaceTileProvider.js文件里修改一行代码

          command.pass = Pass.GLOBE;

改为

          command.pass = Pass.TRANSLUCENT;

2.重新打包

          npm run minifyRelease

3.在沙盒里加入以下代码

复制代码
var viewer = new Cesium.Viewer('cesiumContainer');

viewer.scene.globe.baseColor = new Cesium.Color(, , , );

viewer.scene.globe.imageryLayers.get().alpha = 0.5;

viewer.scene.globe.depthTestAgainstTerrain = !;

viewer.scene.highDynamicRange = !;

viewer.scene.skyAtmosphere.show = !;

viewer.scene.skyBox.show = !;

var blueBox = viewer.entities.add({

name: 'Blue box',

position: Cesium.Cartesian3.fromDegrees(-114.0, 40.0, ),

box: {

dimensions: new Cesium.Cartesian3(100.0, 100.0, 5000.0),

material: Cesium.Color.RED

}

});

viewer.zoomTo(blueBox);
复制代码

还有以下问题没有解决?

1.进入地下会自动弹上来问题

2.地下看地上长方体并没有遮挡的感觉

3.白色网格

解决这个问题将会在下一篇博客。

https://www.cnblogs.com/SmilingEye/p/11473987.html

参考:

火星示例:http://cesium.marsgis.cn/cesium-example/editor.html#42_underground

问题解决最开始来源:https://stackoverflow.com/questions/41541223/how-to-display-data-underground-in-cesium-js

 

posted on   XiaoNiuFeiTian  阅读(1768)  评论(0编辑  收藏  举报
< 2025年1月 >
29 30 31 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示