JavaScript SDK版本3.6.188
2022-02-16
// 创建热力图
let heatMapConfig = new Glodon.Bimface.Plugins.Heatmap.Heatmap2DConfig();
heatMapConfig.viewer = viewer3D;
let heatMap = new Glodon.Bimface.Plugins.Heatmap.Heatmap2D(heatMapConfig);
let data = [ {x: 20, y: 30, z: 30, value: 100}, {x: 50, y: 20, z: 30, value: 40} ];
heatMap.setData(data);
heatMap.setDataMin(0);
heatMap.setDataMax(100);
heatMap.enableColorLegend(isEnabled);
// 颜色设置
let color1 = new Glodon.Web.Graphics.Color(0, 0, 255, 1);
let color2 = new Glodon.Web.Graphics.Color(0, 255, 0, 1);
let color3 = new Glodon.Web.Graphics.Color(255, 0, 0, 1);
// 配置热力图颜色方案:
let colorMap = {
0.0 : color1, // 对应DataMin的颜色
0.5 : color2,
1.0 : color3, // // 对应DataMax的颜色
};
heatMap.setHeatMapColor(colorMap);
//构造外部构件管理器
let extObjMng = new Glodon.Bimface.Plugins.ExternalObject.ExternalObjectManager(viewer);
//指定外部构件(挖掘机)父子关系
relationships_excavator = {
"id": excavator_id,
"children": [{
"id": arm1_id,
"children": [{
"id": arm2_id,
"children": [{
"id": bucket_id,
"children": null
}]
}]
}]
};
//绑定外部构件父子关系
extObjMng.setHierarchy(relationships_excavator);
//让子构件跟随挖掘机大臂绕旋转基点旋转
extObjMng.rotateOnBasePoint(arm1_id, basePoint1, axis1, radian);
//解除所有构件绑定关系
extObjMng.clearAllHierarchy();
// 构造外部构件图层并添加至GIS场景中
let extLayer = new Glodon.Bimface.Layer.ExternalObjectLayer({id:'extObjLayerId',name:'extObjLayer'});
viewerGIS.getLayerManager().addLayer(extLayer);
// 获取外部构件图层对应的外部构件管理器
let extMng = viewerGIS.getLayerManager().getLayer('extObjLayerId').getExternalObjectManager();
// 添加外部构件至管理器中
extMng.loadObject({name:"car",url:{objectUrl:"https://static.bimface.com/attach/6db9d5bcf88640f997b23be61e870ee8_%E6%B1%BD%E8%BD%A6.3DS"}},function(){
// 输出外部构件ID
console.log(extMng.getObjectIdByName('car'));
});
// 在外部构件管理器下绑定监听事件,当外部构件位置发生变化时,执行监听事件的处理函数
extMng.addEventListener(Glodon.Bimface.ElementManager.ExternalObjectEvent.Transformed,getData);
// 解绑外部构件位置变化的监听事件
extMng.removeEventListener(Glodon.Bimface.ElementManager.ExternalObjectEvent.Transformed,getData);
// 监听事件的处理函数
function getData(data) {
// 在控制台输出监听事件的返回信息:外部构件相关信息
console.log(data);
}
// 加载图纸,使用getDrawing方法,需要改用该接口
viewerDrawing.loadDrawing({
modelId: "1",
viewToken: viewToken
})
// 获取图纸对象
let drawing = ViewerDrawing.getDrawing("1")
// 图元、图层及数据操作,以隐藏图元为例
drawing.hideObjects({
objectIds: ['4453']
});
BIMFACE智能客服
7*24提供专业的BIMFACE使用支持与帮助