JavaScript SDK版本3.6.117

2020-12-30

三维模型
  • 新增测量精度及单位的设置接口
// 设置测量单位,可分别对距离、高程单位进行设置
/*
测量单位值为:Glodon.Bimface.Common.Units.LengthUnits
Millimeter: 毫米
Centimeter: 厘米
Meter: 米
Kilometer: 千米
None: 无
*/
measureConfig.units = {distance:Glodon.Bimface.Common.Units.LengthUnits.Millimeter,elevation:Glodon.Bimface.Common.Units.LengthUnits.Meter};
// 设置测量精度,可分别对距离、高程、角度精度进行设置
measureConfig.precision = {distance:3,elevation:3,angle:2};
  • 新增在场景中添加HTTP协议视频流的功能
// 构造视频对象配置项
var videoConfig = new Glodon.Bimface.Plugins.Videos.VideoConfig();
// 配置viewer、camera等参数
videoConfig.viewer = viewer3D;
videoConfig.plane = { "distance": 7000, "side": 0 };
videoConfig.camera = { "position": { x: -7025.589580932086, y: -11503.527453157381, z: 8110.585049193948 }, "direction": new THREE.Vector3(0, 1, 0), "horizontalFov": Math.PI / 5, "verticalFov": Math.PI / 6 };
// 添加HTTP协议的视频流地址
videoConfig.src = "http://ivi.bupt.edu.cn/hls/cctv6.m3u8";
// 设置静音播放
videoConfig.mute = true;
videoConfig.callback =callback;
// 构造视频对象
video = new Glodon.Bimface.Plugins.Videos.Video(videoConfig);
// 回调函数
function callback(){
  // 播放视频流
  video.play();
}
// 添加外部构件监听事件
extObjMng.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.ExternalObjectTransformed, carEvent)
// 更新标签位置,跟随外部构件运动
function carEvent(id, position) {
  drawableContainer.getItemById("labelItem").setWorldPosition(position);
}
// 移除外部构件监听事件
function removeEventListeners() {
  extObjMng.removeEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.ExternalObjectTransformed, carEvent)
}
  • 新增了3dm模型的文字搜索功能
// 搜索文本
viewer3D.getModel(modelId).searchText("梁",
    function (data) {
        // 指定包含搜索内容的文本对象
        var text = data[0];
        // 指定文本对象的包围盒
        var bBox = text.boundingBox[0];
        // 定位到指定包围盒
        viewer3D.zoomToBoundingBox(bBox);
    }
);
  • 优化了聚合标签的聚合规则
模型效果
  • 新增设置地图是否被剖切的接口
// 设置地图不被剖切
mapConfig.sectionable = false;
// 设置地图被剖切
mapConfig.sectionable = true;
  • 新增地图服务请求的最大层级设置
// 设置地图服务的最大请求层级为16
map.setMaxLevel(16);
// 获取当前设置的最大请求层级
var maxLevel = map.getMaxLevel();
  • 优化了发光效果的方法,新增了发光强度和扩散程度的参数
// 开启物体发光效果
viewer3D.enableGlowEffect(true);
// 根据ID设置整体发光效果
viewer3D.getModel(modelId).setGlowEffectById(["24", "25"], { type: "body", color: new Glodon.Web.Graphics.Color(255, 229, 89, 1), intensity: 0.3, spread: 3 });
// 根据ID设置轮廓线发光效果
viewer3D.getModel(modelId).setGlowEffectById(["58", "59"], { type: "outline", color: new Glodon.Web.Graphics.Color(255, 255, 160, 1), intensity: 0.3, spread: 3 });
  • 优化了发光效果的显示机制,可以显示不同颜色的整体发光效果
  • 新增了拾取面剖切的功能,通过模型默认剖切工具可以进入选择面模式,创建贴合构件的剖切面
  • 新增了模型相机位置改变的监听事件
  • 新增了设置引线标签显示样式的方法
/* 设置引线标签的显示样式
*  displayMode, 类型:Number, 描述:引线标签的显示模式,0:完全显示,1:缩略显示
*/
leadLabel.setDisplayMode(displayMode);
矢量图纸
  • 新增角度测量功能,并对移动端进行了适配
// 设置测量配置项
var measureConfig = new Glodon.Bimface.Plugins.Measure.MeasureConfig; 
angMeasureConfig.viewer = viewer2D;
angMeasureConfig.measureType = Glodon.Bimface.Plugins.Measure.MeasureTypeOption.Angle;
measure = new Glodon.Bimface.Plugins.Measure.Measure(measureConfig);