你好,我参考http://support.supermap.com.cn:8090/webgl/Build/Documentation/HeightReference.html这个里面的三个设置都试过了,都没有能够实现图标文字贴地效果,其中设置为 Cesium.HeightReference.NONE 图标文字倒是出现在正确的位置,但是有一半在地表里面没有贴地,另外的两个设置之后效果跟第二图差不多,都没有出现在地形上,请问是什么因素导致的
不是,你不做设置默认就是绝对高度
使用viewer.scene.globe.depthTestAgainstTerrain = false;效果如下图
首先保证webgl包是最新包,实现我上图效果参考代码:
var viewer = new Cesium.Viewer('cesiumContainer',{ //添加STK World Terrain地形服务 terrainProvider : new Cesium.CesiumTerrainProvider({ url : URL_CONFIG.STK, requestWaterMask : true, requestVertexNormals : true }), //添加BingMaps影像服务 imageryProvider : new Cesium.BingMapsImageryProvider({ url : 'https://dev.virtualearth.net', mapStyle : Cesium.BingMapsStyle.AERIAL, key : URL_CONFIG.BING_MAP_KEY }) }); //设置相机视角 viewer.entities.add({ position : Cesium.Cartesian3.fromDegrees(103.064734, 31.12816), billboard :{ image : './images/省级.png', heightReference:Cesium.HeightReference.CLAMP_TO_GROUND } }); viewer.scene.globe.depthTestAgainstTerrain = false; viewer.scene.camera.setView({ destination : new Cesium.Cartesian3.fromDegrees(103.064734,31.12816,8870.867706), orientation : { heading : 0.34555839949062594, pitch : -0.1422794351856307, roll : 0.0009471063581933947 } });