JavaScript SDK版本3.6.205

2022-06-01

三维模型
  • 新增对样条曲线构造点进行更改的接口,对于已构造的样条曲线,可通过setPoints()接口更改曲线的形状
// 构造样条曲线SplineCurve
let splineCurve = new Glodon.Bimface.Plugins.Geometry.SplineCurve({
  points:[{x:100,y:100,z:0},{x:100,y:200,z:0},{x:200,y:200,z:0}],
  viewer:viewer3D,
  color:new Glodon.Web.Graphics.Color(255,52,0,1),
  width:2
});
// 添加样条曲线至外部构件管理器中
extMng.loadObject({ name: "曲线1", object: splineCurve },function(){
  console.log(extMng.getObjectIdByName('曲线1'))
});

// 更改样条曲线的构造点
splineCurve.setPoints([{x:100,y:100,z:0},{x:150,y:200,z:0},{x:200,y:210,z:0},{x:200,y:250,z:0}]);
场景应用
  • 优化更新了GIS场景中拍平功能的参数,指定参与拍平的图层时,支持传入地形图层ID(TerrainLayer)或OSGB图层ID(TilesetLayer)
// 构造拍平管理器配置项
let mngConfig = new Glodon.Bimface.Plugins.Flats.FlatManagerConfig();
mngConfig.viewer = viewerGIS;
// 构造拍平管理器
flatManager = new Glodon.Bimface.Plugins.Flats.FlatManager(mngConfig);

// 构造拍平对象配置项
let config = new Glodon.Bimface.Plugins.Flats.FlatConfig();
// 配置拍平高度,ViewerGIS下单位为m
config.elevation = 150;
// 配置拍平区域
config.boundary = [
  { x: -184.807, y: 132.514, z: 0 },
  { x: -191.422, y: -108.743, z: 0 },
  { x: 269.988, y: -116.172, z: 0 },
  { x: 269.698, y: 176.606, z: 0 }
];
// 配置参与拍平的图层,仅支持TerrainLayer、TilesetLayer
config.layerIds = ['layer_terrain_1','osgb_layer']
// 构造拍平对象
flat = new Glodon.Bimface.Plugins.Flats.Flat(config);
// 添加拍平对象至管理器中
flatManager.addItem(flat);

// 更改拍平高度
flat.setElevation(50);
flatManager.update();
矢量图纸
  • 鼠标点击监听事件适配了鼠标右键点击,并增加了鼠标点击类型判断
viewer2D.addEventListener(Glodon.Bimface.Viewer.ViewerDrawingEvent.MouseClicked, function (objectdata) {
          // 调用viewerDrawing对象的Method,可以继续扩展功能,打印了鼠标的点击类型。
          alert("objectId : " + JSON.stringify(objectdata.objectId) + "\n" + "worldPosition : " + JSON.stringify(objectdata.worldPosition)+"\n" + "eventType : " + JSON.stringify(objectdata.eventType));
        });
  • 优化了右键隐藏图层的功能,支持同时隐藏多个图层
  • 优化了场景包围盒的更新机制,并在ViewerDrawing中新增了更新和获取场景包围盒的接口
// 更新场景包围盒;
ViewerDrawing.updateSceneBoundingBox();
// 获取场景包围盒;
ViewerDrawing.getSceneBoundingBox();
BIMFACE官网
  • 优化了文档中心页面,新增教学视频模块,提供BIMFACE视频课程供您快速玩转BIMFACE功能。
场景组件服务
  • 场景编辑组件中新增判断场景内是否存在无效图层的接口以及清空场景内无效图层的接口,其中无效图层是指图层对应的源文件被删除或缺失图层必要信息。基于新增的接口可对编辑后的场景内容进行合法性判断,避免出现因无效图层导致场景更新失败的情况。
// 构造场景编辑组件,具体代码可参考开发指南:https://bimface.com/docs/scene-module/v1/developers-guide/scene-editor.html
let editorConfig = new Glodon.Bimface.Module.Scene.EditorConfig();
// 设置场景编辑组件配置项的参数,包括待加载编辑的场景viewToken、获取待添加资源列表的方法、获取对应viewToken的方法等
editorConfig.domElement = domShow;
editorConfig.viewToken = viewToken;
editorConfig.getResourceListHandler = getResourceListHandler;
editorConfig.getViewTokenHandler = getViewTokenHandler;

// 创建场景编辑组件对象:Editor
editor = new Glodon.Bimface.Module.Scene.Editor(editorConfig);

// 判断场景内是否存在无效图层
if(eidtor.isInvalidLayerIncluded()){
  // 若存在无效图层,则清空当前场景中的所有无效图层
  editor.clearInvalidLayers();
}