Cesium-视频投影

672 阅读1分钟

关于视频投影

视频投影其实就是在三维场景中,播放实时视频,现在做三维实时视频的例子很多,比如公安行业监控摄像头的实时投影播放,广告行业在高楼的楼面播放制作的广告,或者在广场的大显示器上播放电影、电视剧等等。

原理

视频一般通过video的标签显示,可以把video作为一种特殊的材质赋给场景中的物体即可。

效果图

实践

  • 编写video标签

  • 在场景中添加一个物体

    var video = viewer.entities.add({ polygon: { hierarchy: new Cesium.PolygonHierarchy(Cesium.Cartesian3.fromDegreesArray([114.25, 30.34, 114.30, 30.34, 114.30, 30.36, 114.25, 30.36])), classificationType: Cesium.ClassificationType.BOTH } });

  • 赋值材质

    var videoElement = document.getElementById('trailer'); video.polygon.material = videoElement;

  • 与时钟同步(可选),

    // 设置与时钟同步,可以在时钟控制面板控制视频的播放、暂停、加速播放与减速播放等 var synchronizer = new Cesium.VideoSynchronizer({ clock: viewer.clock, element: videoElement }); // 取消时钟同步 if (Cesium.defined(synchronizer)) { synchronizer = synchronizer.destroy(); videoElement.playbackRate = 1.0; }

link==>