在cesium sandcastle页面@ https://cesiumjs.org/Cesium/Build/Apps/Sandcastle/?src=Polyline.html&label=Geometries上

您可以看到,当我单击紫色的线条时,我会看到一个框(图像的右上角),指示name of the Cesium [Polyline][2] as "Purple straight arrow at height"。如何为[PolylineCollection][2]添加相同的name box (下面代码中的第5行)?
以下是代码
var viewer = new Cesium.Viewer('cesiumContainer');
var lineCollection = new Cesium.PolylineCollection(); // line no 5
lineCollection.add({
name : "Hi",
description : "Hi description",
positions : Cesium.Cartesian3.fromDegreesArrayHeights([-75, 53, 500000,
-125, 53, 500000]),
width : 10,
followSurface : false
});
viewer.scene.primitives.add(lineCollection);
var purpleArrow = viewer.entities.add({
name : 'Purple straight arrow at height',
polyline : {
positions : Cesium.Cartesian3.fromDegreesArrayHeights([-75, 43, 500000,
-125, 43, 500000]),
width : 10,
followSurface : false,
material : new Cesium.PolylineArrowMaterialProperty(Cesium.Color.PURPLE)
}
});
viewer.zoomTo(viewer.entities);发布于 2018-12-27 22:58:19
名称和描述是in中更高级的“实体”API的一部分。在图形原语级别,PolylineCollection所在的地方没有这样的东西。
是否需要使用较低级别的API?通常,想要绿色选择指示器、信息框、名称和描述等高级功能的用户应该坚持使用实体,而不是原语。
也就是说,有一种方法可以检测到原语何时被鼠标“拾取”,并查找一些名称和信息,并命令信息框手动更新。所有这些逻辑都是内置在实体层的,所以在你自己的应用中重新实现它之前,你应该三思而后行。
https://stackoverflow.com/questions/53943673
复制相似问题