JavaScript SDK版本3.6.205
2022-06-01
// 构造样条曲线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}]);
// 构造拍平管理器配置项
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.updateSceneBoundingBox();
// 获取场景包围盒;
ViewerDrawing.getSceneBoundingBox();
// 构造场景编辑组件,具体代码可参考开发指南: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();
}
BIMFACE智能客服
7*24提供专业的BIMFACE使用支持与帮助