首页 / 浏览问题 / WebGIS / 问题详情
绘制面可以设置固定高度吗?
12EXP 2022年12月14日

使用产品:SuperMap iClient3D for Cesium
问题详细描述:基于天地图影像地图作为底图,在影像地图上面绘制面,有部分面显示不出来,于是想请问使用DrawHandler的时候,绘制出来的面的高度可以设置嘛?有没有代码示例?

代码片段如下:

entityHandler(chooseDrawMode=2){
 let DrawMode= ["点","线","面","地标"];
 let clampMode = 0;
 if(chooseDrawMode ===  1){
  window.handler = new Cesium.DrawHandler(window.viewer,chooseDrawMode,clampMode);
 }else{
  window.handler = new Cesium.DrawHandler(window.viewer,chooseDrawMode,Cesium.ClampMode.Space);
 }
 window.handler.activeEvt.addEventListener(function(isActive){
 if(isActive == true){
  window.viewer.enableCursorStyle = false;
  window.viewer._element.style.cursor = '';
  document.querySelector('body').classList.remove('drawCur');
 }else{
  window.viewer.enableCursorStyle = true;
  document.querySelector('body').classList.remove('drawCur');
 }
});
 window.handler.movingEvt.addEventListener(function(windowPosition){
  tooltip.showAt(windowPosition,'<p>点击绘制'+DrawMode[chooseDrawMode]+',右击绘制结束</p>');
 });
 window.handler.drawEvt.addEventListener(function(result){
  console.log(result,'绘制的result')
				
 tooltip.setVisible(false);
});
 window.handler.activate();
},

1个回答

您好,使用DrawHandler绘制的面高度取决于您点击获取的节点高度,如果您想使其直接显示,可以采用贴地模型(Cesium.ClampMode.Ground)进行绘制,该模式下绘制出的数据均为贴地。如果想要直接指定面高度,可使用点击获取到的节点经纬度来创建entity,然后指定polygon的高度即可
1,225EXP 2022年12月14日
...