SuperMap iClient3D for WebGL教程-description描述属性

本节教程来讲解entity的description属性使用,官方文档解释为指定此实体的HTML描述的字符串属性,也就是说是一段字符串,只是这段字符串是HTML描述,看起来还是比较绕,下面来看下这个属性到底是如何使用的。


属性信息

从这里可以看出,entity的description属性信息是在实体被选中之后,被用于填充到infobox中,展示entity的属性信息。
如果要使用Cesium自带的infobox对description的HTML字符串同样也是有一些要求,需要按照table标签拼接字符串,

let des = '' + '
' + selectedFeatures[i].fieldNames["0"] + '' + selectedFeatures[i].fieldValues["0"] + '
'; viewer.entities.add({ position : Cesium.Cartesian3.fromDegrees(108,29,100), billboard :{ image : './images/location4.png', width:30, height:40, }, name : selectedFeatures[i].fieldValues["11"], description: des });

从上面的示例,对description的使用已经比较清楚了,那description还有没有其他的用法?
在小编看来description是用于存储对象的属性信息的,只要有相关的属性,也可以相应的存放在这里,不在遵循HTML的字符串,可以是任何形式的对象。

viewer.entities.add({
   position : Cesium.Cartesian3.fromDegrees(108,29,100),
   billboard :{
   image : './images/location4.png',
   width:30,
   height:40,              
   },
   name : selectedFeatures[i].fieldValues["11"],
   description: {
    name:"示例",
    value:"test",
    children:[{
        name:"child",
        value:"child"
        }]
    }
  });

当description这么设置之后,就不能再使用Cesium原生的infobox,需要配合自定义的bubble进行属性的展示,自定义bubble的小编会在后续的教程中进行讲解。
本节课程就到这里,欢迎评论、转发、留言。

你可能感兴趣的:(SuperMap iClient3D for WebGL教程-description描述属性)