Lin_Ye_Fang_Huo/public/widgets/_example_2win/widget.js

78 lines
2.1 KiB
JavaScript
Raw Normal View History

2023-07-18 09:04:15 +08:00
"use script"; //开发环境建议开启严格模式
(function (window, mars3d) {
2023-07-08 15:37:34 +08:00
//创建widget类需要继承BaseWidget
class MyWidget extends mars3d.widget.BaseWidget {
//弹窗配置2个弹窗的情形
get view() {
return [
{
2023-07-18 09:04:15 +08:00
type: "window",
url: "viewLeft.html",
name: "left",
2023-07-08 15:37:34 +08:00
windowOptions: {
noTitle: true,
closeBtn: 0,
width: 200,
position: {
top: 70,
bottom: 0,
left: 0,
},
},
},
{
2023-07-18 09:04:15 +08:00
type: "window",
url: "viewRight.html",
name: "right",
2023-07-08 15:37:34 +08:00
windowOptions: {
noTitle: true,
closeBtn: 0,
width: 200,
position: {
top: 70,
bottom: 0,
right: 0,
},
},
},
2023-07-18 09:04:15 +08:00
];
2023-07-08 15:37:34 +08:00
}
//每个窗口创建完成后调用
winCreateOK(opt, result) {
2023-07-18 09:04:15 +08:00
if (opt.name == "left") {
this.viewWindowLeft = result;
2023-07-08 15:37:34 +08:00
2023-07-18 09:04:15 +08:00
this.viewWindowLeft.testShowText("这是从地图主页面发送的交互请求1"); //test
2023-07-08 15:37:34 +08:00
} else {
2023-07-18 09:04:15 +08:00
this.viewWindowRight = result;
2023-07-08 15:37:34 +08:00
2023-07-18 09:04:15 +08:00
this.viewWindowRight.testShowText("这是从地图主页面发送的交互请求2"); //test
2023-07-08 15:37:34 +08:00
}
}
//打开激活
activate() {
if (this.viewWindowLeft) {
2023-07-18 09:04:15 +08:00
this.viewWindowLeft.testShowText("这是从地图主页面发送的交互请求3");
2023-07-08 15:37:34 +08:00
}
if (this.viewWindowRight) {
2023-07-18 09:04:15 +08:00
this.viewWindowRight.testShowText("这是从地图主页面发送的交互请求4");
2023-07-08 15:37:34 +08:00
}
}
//关闭释放
disable() {}
testCenterAt1() {
2023-07-18 09:04:15 +08:00
this.map.setCameraView({ y: 31.981816, x: 118.782446, z: 10607.4, heading: 5.5, pitch: -51.9, roll: 0 });
2023-07-08 15:37:34 +08:00
}
testCenterAt2() {
2023-07-18 09:04:15 +08:00
this.map.setCameraView({ y: 31.686288, x: 117.229619, z: 11333.9, heading: 359.2, pitch: -39.5, roll: 360 });
2023-07-08 15:37:34 +08:00
}
}
//注册到widget管理器中。
2023-07-18 09:04:15 +08:00
mars3d.widget.bindClass(MyWidget);
2023-07-08 15:37:34 +08:00
//每个widet之间都是直接引入到index.html中会存在彼此命名冲突所以闭包处理下。
2023-07-18 09:04:15 +08:00
})(window, mars3d);