首页 / 浏览问题 / WebGIS / 问题详情
Cesium entities加载gltf模型,该模型里有多个子集楼。想实现点击子元素楼进行高亮
28EXP 2026年03月26日

Cesium entities加载gltf模型,该模型里有多个子集楼。想实现点击子元素楼进行高亮。并不是高亮整个gltf模型

      var gltf = this.viewer.entities.add({
        name: fileName,
        position: new Cesium.Cartesian3.fromDegrees(
          adjustedPosition.x,
          adjustedPosition.y,
          adjustedPosition.z,
        ),
        descriptionProperty: xmlConfig,
        orientation: orientation,
        model: {
          uri: url,
        },
      });
      // 缩放到模型
      this.viewer.zoomTo(gltf);



      handler = new Cesium.ScreenSpaceEventHandler(this.viewer.scene.canvas);
      handler.setInputAction(function (event) {
        that.viewer.entities.removeById("polyline");
        const pickedObject = that.viewer.scene.pick(event.position);

        if (
          Cesium.defined(pickedObject) &&
          pickedObject.primitive instanceof Cesium.Model
        ) {
         
        }
      }, Cesium.ScreenSpaceEventType.LEFT_CLICK);

1个回答

您好,

iClient3D for Cesium产品内核 Cesium 版本为1.67,建议参考:https://ask.csdn.net/questions/8463508 查看是否能够通过model.getNode获取到节点。

此外, 在 iDesktopX 中将 gltf 模型拆分并生成为 S3M 三维缓存并发布为三维服务,在前端加载时可点击子模型高亮。

希望能够帮助到您。

1,535EXP 2026年03月26日
...