JavaScript SDK版本3.6.204

2022-05-18

三维模型
  • 火焰效果适配了Viewer3D的流式加载机制
  • 喷水效果适配了Viewer3D的流式加载机制
  • 锚点动画PrismPoint适配暂停、停止、启动接口
// 创建锚点动画
let prismPoint = new Glodon.Bimface.Plugins.Anchor.PrismPoint(prismPointConfig);
//暂停动画 
prismPoint.pause();
//停止动画 
prismPoint.stop();
//启动动画
prismPoint.play();
  • 扇形扫描与环状扫描动画适配暂停、停止、启动接口
// 环状扫描
let ringScanEffect = new Glodon.Bimface.Plugins.Animation.RingScanEffect(ringScanEffectConfig);
//暂停动画 
ringScanEffect.pause();
//停止动画 
ringScanEffect.stop();
//启动动画
ringScanEffect.play();
//=========================================================
// 扇形扫描
let fanScanEffect = new Glodon.Bimface.Plugins.Animation.FanScanEffect(fanScanEffectConfig);
//暂停动画 
ringScanEffect.pause();
//停止动画 
ringScanEffect.stop();
//启动动画
ringScanEffect.play();
  • WebApplicationDrawing、WebApplicationRfa、WebApplicationGIS适配销毁接口
let app = new Glodon.Bimface.Application.WebApplicationRfa(webAppConfig);
// 销毁创建的应用
app.destroy();
  • 新增对水面效果边界进行更新设置的接口,对于已构造的水面效果,可通过setBoundary()接口更新水面的边界。此接口仅对基于boundary构造的水面效果对象生效。
// 构造水面边界
let pt1 = {x: 48900,y: -35400,z: -100};
let pt2 = {x: 48900,y: -32850,z: -100};
let pt3 = {x: 66500,y: -32850,z: -100};
let pt4 = {x: 66500,y: -35400,z: -100};

let waterBoundary = [pt1, pt2, pt3, pt4];
// 构造水面效果配置项
let waterEffectConfig = new Glodon.Bimface.Plugins.Animation.WaterEffectConfig();
waterEffectConfig.boundary = waterBoundary;
waterEffectConfig.viewer = viewer3D;
// 构造水面效果类,并设置效果
let waterEffect = new Glodon.Bimface.Plugins.Animation.WaterEffect(waterEffectConfig);
let waterColor = new Glodon.Web.Graphics.Color('#60FFFF', 0.2);
waterEffect.setColor(waterColor);

// 更改水面效果的边界
waterEffect.setBoundary([pt1,pt2, pt3]);
场景应用
  • 新增场景预览中主工具条的按钮监听事件,可在WebApplicationGIS中绑定监听事件对工具条上的按钮状态进行监听,监听返回数据包括对应按钮的ID、被选中状态以及展开状态(目前仅有测量按钮存在展开状态)。
// 绑定工具栏按钮点击事件的监听
appGIS.addEventListener(Glodon.Bimface.Application.WebApplication3DEvent.ButtonOnToolbarClicked,(data)=>{
  console.log(data);
  //监听事件返回值如:{id: 'Measure', isSelected: false, isExpanded: true}
  });
  • 新增场景预览中图层树节点的点击事件,可在WebApplicationGIS中绑定监听事件对图层树的点击事件进行监听,监听返回数据包括点击事件类型、图层类型、图层ID、图层选中状态、图层显示状态。
// 绑定图层树节点点击事件的监听
appGIS.addEventListener(Glodon.Bimface.Application.WebApplication3DEvent.LayerTreeNodeClicked,(data)=>{
  console.log(data);
  //监听事件返回值如:{eventType: 'Click', layerType: 'BIMLayer', layerId: '2142700537194944', isSelected: false,isVisible: true }
  // 其中isSelected表示图层的选中状态,isVisible表示图层是否可见,即图层勾选框的勾选状态。
  });
  • GIS场景新增了右键点击事件
矢量图纸
  • 优化了在rvt导出图纸中获取模型对应坐标的计算机制,适配了旋转后的视图,支持获取z值
// 获取图纸对象
let drawing = viewer2D.getDrawing(modelId);
// 根据图纸ID和图纸中的坐标值,获取模型对应坐标,仅支持rvt导出的单视口平面图纸
drawing.getModelPosition(sheetId, point, callback);
  • 移动端图纸测量功能适配了layout视图
文档模块
  • 新增Scene Module功能模块,提供GIS场景编辑相关的组件服务及SDK工具,可基于该模块接口轻松搭建GIS场景编辑页面,在系统中嵌入场景编辑能力。
// 创建场景编辑组件的配置项:EditorConfig
let editorConfig = new Glodon.Bimface.Module.Scene.EditorConfig();
// 设置EditorConfig的dom对象
editorConfig.domElement = domShow;
// 设置待加载编辑的场景viewToken
editorConfig.viewToken = viewToken;
// 设置组件中获取待添加资源列表的方法,方法需返回一个Promise对象
editorConfig.getResourceListHandler = getResourceListHandler;
// 设置组件中添加资源时获取对应viewToken的方法,方法需返回一个Promise对象,具体定义见下一小节
editorConfig.getViewTokenHandler = getViewTokenHandler;
// 创建场景编辑组件对象:Editor
editor = new Glodon.Bimface.Module.Scene.Editor(editorConfig);

// 定义获取待添加资源列表的函数
function getResourceListHandler (config){
  // 可调用后端接口:获取转换资源列表、批量查询集成状态获取符合条件的可添加资源。
  // 需要注意的是,GIS场景中仅支持添加与场景处于同一项目且加载模式为流式加载的已转换/集成成功的资源,即在后端接口body中需限制projectId、outputFormat、status。
  // 具体代码可参考Scene Module模块的开发指南:https://bimface.com/docs/scene-module/v1/developers-guide/scene-editor.html
}

// 定义添加资源时获取对应viewToken的函数
function getViewTokenHandler (list){
  // 可调用后端接口:获取模型的View Token。
  // 具体代码可参考Scene Module模块的开发指南:https://bimface.com/docs/scene-module/v1/developers-guide/scene-editor.html
}
  • 优化了文档中心搜索功能,提供更全面的文档内容搜索功能。
服务端API
  • 新增创建场景的接口,可在指定项目中创建一个新的GIS场景,创建成功后将返回新场景的ID

  • 新增更新场景的接口,可对已有场景内容进行更新保存,该接口可配合GIS场景编辑组件进行使用,支持在自己的系统中嵌入场景编辑模块能力