fix: BUG修改
This commit is contained in:
parent
5fb7f6e506
commit
3d556806b8
119
public/bim.html
119
public/bim.html
@ -6,74 +6,93 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="domId" style="width: 100%; height: 95vh"></div>
|
<div id="domId" style="width: 100%; height: 95vh"></div>
|
||||||
<script src="https://static.bimface.com/api/BimfaceSDKLoader/BimfaceSDKLoader@latest-release.js" charset="utf-8"></script>
|
<script
|
||||||
|
src="https://static.bimface.com/api/BimfaceSDKLoader/BimfaceSDKLoader@latest-release.js"
|
||||||
|
charset="utf-8"
|
||||||
|
></script>
|
||||||
<script>
|
<script>
|
||||||
let model3D;
|
let model3D;
|
||||||
let viewer3D;
|
let viewer3D;
|
||||||
let app;
|
let app;
|
||||||
let modelState;
|
let modelState;
|
||||||
let oldViewToken;
|
let configValue = {
|
||||||
const bimCallback = viewToken => {
|
hideArr: [],
|
||||||
|
colorArr: [],
|
||||||
|
};
|
||||||
|
const bimCallback = (viewToken) => {
|
||||||
// let viewToken = '11b0d307c09f43bfa5fa3922bcce0342'
|
// let viewToken = '11b0d307c09f43bfa5fa3922bcce0342'
|
||||||
let loaderConfig = new BimfaceSDKLoaderConfig()
|
let loaderConfig = new BimfaceSDKLoaderConfig();
|
||||||
loaderConfig.viewToken = viewToken
|
loaderConfig.viewToken = viewToken;
|
||||||
BimfaceSDKLoader.load(loaderConfig, successCallback, failureCallback)
|
BimfaceSDKLoader.load(loaderConfig, successCallback, failureCallback);
|
||||||
function successCallback(viewMetaData) {
|
function successCallback(viewMetaData) {
|
||||||
let domShow = document.getElementById('domId')
|
let domShow = document.getElementById("domId");
|
||||||
let webAppConfig = new Glodon.Bimface.Application.WebApplication3DConfig()
|
let webAppConfig = new Glodon.Bimface.Application.WebApplication3DConfig();
|
||||||
webAppConfig.domElement = domShow
|
webAppConfig.domElement = domShow;
|
||||||
app = new Glodon.Bimface.Application.WebApplication3D(webAppConfig)
|
app = new Glodon.Bimface.Application.WebApplication3D(webAppConfig);
|
||||||
app.addView(viewToken)
|
app.addView(viewToken);
|
||||||
viewer3D = app.getViewer()
|
viewer3D = app.getViewer();
|
||||||
// 监听添加view完成的事件
|
// 监听添加view完成的事件
|
||||||
viewer3D.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.ViewAdded, function () {
|
viewer3D.addEventListener(
|
||||||
// 调用viewer3D对象的Method,可以继续扩展功能
|
Glodon.Bimface.Viewer.Viewer3DEvent.ViewAdded,
|
||||||
// 从viewer3D对象中获取模型对象model3D
|
function() {
|
||||||
model3D = viewer3D.getModel();
|
// 调用viewer3D对象的Method,可以继续扩展功能
|
||||||
// 获取模型状态
|
// 从viewer3D对象中获取模型对象model3D
|
||||||
modelState = viewer3D.getCurrentState();
|
model3D = viewer3D.getModel();
|
||||||
// 渲染3D模型
|
// 获取模型状态
|
||||||
viewer3D.render();
|
modelState = viewer3D.getCurrentState();
|
||||||
});
|
// 渲染3D模型
|
||||||
|
viewer3D.render();
|
||||||
|
// 操作模型
|
||||||
|
renderConfigModel();
|
||||||
|
}
|
||||||
|
);
|
||||||
// 添加构件单击事件
|
// 添加构件单击事件
|
||||||
viewer3D.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.MouseClicked, (data) => {
|
viewer3D.addEventListener(
|
||||||
console.log(data)
|
Glodon.Bimface.Viewer.Viewer3DEvent.MouseClicked,
|
||||||
setTimeout(() => {
|
(data) => {
|
||||||
// 往父级传递
|
console.log(data);
|
||||||
window.parent.postMessage({ msg: data.elementId })
|
setTimeout(() => {
|
||||||
}, 200)
|
// 往父级传递
|
||||||
});
|
window.parent.postMessage({ msg: data.elementId });
|
||||||
|
}, 200);
|
||||||
|
}
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function failureCallback(error) {
|
function failureCallback(error) {
|
||||||
console.log(error)
|
console.log(error);
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
function renderConfigModel() {
|
||||||
|
// 恢复模型状态
|
||||||
|
viewer3D.setState(modelState);
|
||||||
|
model3D.hideComponentsById(configValue.hideArr);
|
||||||
|
configValue.colorArr.map((item) => {
|
||||||
|
model3D.overrideComponentsColorById(
|
||||||
|
[item.name],
|
||||||
|
new Glodon.Web.Graphics.Color(item.color, 1)
|
||||||
|
);
|
||||||
|
});
|
||||||
|
viewer3D.render();
|
||||||
}
|
}
|
||||||
|
// 监听父组件的信息传递
|
||||||
window.addEventListener('message', async function(e) {
|
window.addEventListener("message", async function(e) {
|
||||||
// const modelId = e.data.modelId
|
// const modelId = e.data.modelId
|
||||||
const data = e.data || {}
|
const data = e.data || {};
|
||||||
if (data.token) {
|
if (data.token) {
|
||||||
// removeModel(modelId)
|
// removeModel(modelId)
|
||||||
document.getElementById('domId').innerHTML="";
|
document.getElementById("domId").innerHTML = "";
|
||||||
await bimCallback(data.token)
|
await bimCallback(data.token);
|
||||||
}
|
if (data.hideArr && data.colorArr) {
|
||||||
if(data.hideArr && data.colorArr){
|
configValue.hideArr = data.hideArr;
|
||||||
setTimeout(() => {
|
configValue.colorArr = data.colorArr;
|
||||||
// 恢复模型状态
|
|
||||||
viewer3D.setState(modelState);
|
|
||||||
model3D.hideComponentsById(data.hideArr);
|
|
||||||
data.colorArr.map(item => {
|
|
||||||
model3D.overrideComponentsColorById([item.name], new Glodon.Web.Graphics.Color(item.color, 1));
|
|
||||||
})
|
|
||||||
viewer3D.render();
|
|
||||||
}, 2000)
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
// console.log(e.data, '父级页面传来的数据')
|
// console.log(e.data, '父级页面传来的数据')
|
||||||
// setTimeout(() => {
|
// setTimeout(() => {
|
||||||
// window.parent.postMessage({ msg: 'hello' })
|
// window.parent.postMessage({ msg: 'hello' })
|
||||||
// }, 2000)
|
// }, 2000)
|
||||||
})
|
});
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@ -82,8 +82,8 @@ if (process.env.NODE_ENV == 'development') {
|
|||||||
// axios.defaults.baseURL ='http://huli.zjzhiliao.com/jxjgdapi/' //金林湾测试线上
|
// axios.defaults.baseURL ='http://huli.zjzhiliao.com/jxjgdapi/' //金林湾测试线上
|
||||||
// axios.defaults.baseURL ='http://101.43.164.214:45001/' //上海张江
|
// axios.defaults.baseURL ='http://101.43.164.214:45001/' //上海张江
|
||||||
// axios.defaults.baseURL ='http://101.43.164.214:45011/' //上海优益(上海建工)
|
// axios.defaults.baseURL ='http://101.43.164.214:45011/' //上海优益(上海建工)
|
||||||
axios.defaults.baseURL = 'http://192.168.34.221:28888/' //郭圣雄本地
|
// axios.defaults.baseURL = 'http://192.168.34.221:28888/' //郭圣雄本地
|
||||||
// axios.defaults.baseURL ='http://192.168.34.221:30012/' //郭圣雄本地
|
axios.defaults.baseURL ='http://192.168.34.221:30012/' //郭圣雄本地
|
||||||
// axios.defaults.baseURL ='http://101.43.164.214:45020/' //沈阳和盈
|
// axios.defaults.baseURL ='http://101.43.164.214:45020/' //沈阳和盈
|
||||||
// axios.defaults.baseURL ='http://183.249.224.118:9000/' //嘉兴王江泾公用码头
|
// axios.defaults.baseURL ='http://183.249.224.118:9000/' //嘉兴王江泾公用码头
|
||||||
// axios.defaults.baseURL ='http://101.43.164.214:11111/' //广西百色项目
|
// axios.defaults.baseURL ='http://101.43.164.214:11111/' //广西百色项目
|
||||||
|
|||||||
@ -422,7 +422,7 @@ export default {
|
|||||||
|
|
||||||
//获取模型列表
|
//获取模型列表
|
||||||
loadData() {
|
loadData() {
|
||||||
projectJlwBimListApi({ projectSn: this.$store.state.projectSn }).then(
|
projectJlwBimListApi({ projectSn: this.$store.state.projectSn, pageSize: -1 }).then(
|
||||||
res => {
|
res => {
|
||||||
console.log("------模型列表---", res);
|
console.log("------模型列表---", res);
|
||||||
this.buildList = res.result.page.records;
|
this.buildList = res.result.page.records;
|
||||||
|
|||||||
@ -106,7 +106,7 @@ export default {
|
|||||||
saveBimfaceConfig({ id: this.resData.id,hiddenComponentId:this.selectedHideList.join(','),componentColorJson: JSON.stringify(this.selectedColorList) }).then(res => {
|
saveBimfaceConfig({ id: this.resData.id,hiddenComponentId:this.selectedHideList.join(','),componentColorJson: JSON.stringify(this.selectedColorList) }).then(res => {
|
||||||
if(res.code == 200){
|
if(res.code == 200){
|
||||||
this.$message.success("操作成功")
|
this.$message.success("操作成功")
|
||||||
that.iframe.contentWindow.postMessage({ hideArr: this.selectedHideList,colorArr: this.selectedColorList })
|
that.iframe.contentWindow.postMessage({ token: this.resData.viewToken,hideArr: this.selectedHideList,colorArr: this.selectedColorList })
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user