fix: BUG修改

This commit is contained in:
kun 2023-12-04 21:28:51 +08:00
parent 5fb7f6e506
commit 3d556806b8
4 changed files with 73 additions and 54 deletions

View File

@ -6,27 +6,35 @@
</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(
Glodon.Bimface.Viewer.Viewer3DEvent.ViewAdded,
function() {
// 调用viewer3D对象的Method可以继续扩展功能 // 调用viewer3D对象的Method可以继续扩展功能
// 从viewer3D对象中获取模型对象model3D // 从viewer3D对象中获取模型对象model3D
model3D = viewer3D.getModel(); model3D = viewer3D.getModel();
@ -34,46 +42,57 @@
modelState = viewer3D.getCurrentState(); modelState = viewer3D.getCurrentState();
// 渲染3D模型 // 渲染3D模型
viewer3D.render(); viewer3D.render();
}); // 操作模型
renderConfigModel();
}
);
// 添加构件单击事件 // 添加构件单击事件
viewer3D.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.MouseClicked, (data) => { viewer3D.addEventListener(
console.log(data) Glodon.Bimface.Viewer.Viewer3DEvent.MouseClicked,
(data) => {
console.log(data);
setTimeout(() => { setTimeout(() => {
// 往父级传递 // 往父级传递
window.parent.postMessage({ msg: data.elementId }) window.parent.postMessage({ msg: data.elementId });
}, 200) }, 200);
}); }
);
} }
function failureCallback(error) { function failureCallback(error) {
console.log(error) console.log(error);
} }
} };
function renderConfigModel() {
window.addEventListener('message', async function(e) {
// const modelId = e.data.modelId
const data = e.data || {}
if (data.token) {
// removeModel(modelId)
document.getElementById('domId').innerHTML="";
await bimCallback(data.token)
}
if(data.hideArr && data.colorArr){
setTimeout(() => {
// 恢复模型状态 // 恢复模型状态
viewer3D.setState(modelState); viewer3D.setState(modelState);
model3D.hideComponentsById(data.hideArr); model3D.hideComponentsById(configValue.hideArr);
data.colorArr.map(item => { configValue.colorArr.map((item) => {
model3D.overrideComponentsColorById([item.name], new Glodon.Web.Graphics.Color(item.color, 1)); model3D.overrideComponentsColorById(
}) [item.name],
new Glodon.Web.Graphics.Color(item.color, 1)
);
});
viewer3D.render(); viewer3D.render();
}, 2000) }
// 监听父组件的信息传递
window.addEventListener("message", async function(e) {
// const modelId = e.data.modelId
const data = e.data || {};
if (data.token) {
// removeModel(modelId)
document.getElementById("domId").innerHTML = "";
await bimCallback(data.token);
if (data.hideArr && data.colorArr) {
configValue.hideArr = data.hideArr;
configValue.colorArr = data.colorArr;
}
} }
// 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>

View File

@ -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/' //广西百色项目

View File

@ -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;

View File

@ -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 })
} }
}) })
}, },