Cesium多屏联动对比使用较多。
双屏联动对比
参考如下网址
https://juejin.cn/post/7100727011454222350
https://blog.youkuaiyun.com/wanyibin1998/article/details/124898102
三屏联动对比
由上面的双屏联动更改而来
function setManyView(viewer1, viewer2, viewer3) {
const syncView = () => {
// 获取第一个viewer的相机视角数据
const {
positionWC,
heading,
pitch,
roll,
up,
_direction
} = viewer1.scene.camera;
// 设置另外两屏/多屏视角
viewer2.camera.setView({
destination: positionWC,
orientation: {
heading: heading,
pitch: pitch,
roll: roll,
up: up,
direction: _direction
}
});
viewer3.camera.setView({
destination: positionWC,
orientation: {
heading: heading,
pitch: pitch,
roll: roll,
up: up,
direction: _direction
}
});
};
//camera监听函数
viewer1.camera.changed.addEventListener(syncView);
//设置触发监听函数的时间
viewer1.camera.percentageChanged = 0.01;
}
//循环监听每一屏变化
setManyView(viewer1, viewer2, viewer3)
setManyView(viewer2, viewer3, viewer3)
setManyView(viewer3, viewer2, viewer1)
多屏联动对比
基于上面的三屏联动对比继续增加viewer参数。