JavaScript SDK版本3.6.95

2020-08-12

三维模型
  • 新增了通过点构造空间平面的方法,可以在模型中插入三维空间的图片
// 构造空间平面对象
var spatialPlane = new Glodon.Bimface.Plugins.Geometry.SpatialPlane([pt1, pt2, pt3, pt4]);
// 将该对象添加为外部构件
var setMapHandler = function () {
    extObjMng = new Glodon.Bimface.Viewer.ExternalObjectManager(viewer3D);
    extObjMng.addObject("spaPlane", spatialPlane);
}
// 设置空间平面的贴图
spatialPlane.setMap(url, setMapHandler, 0.5);
  • 新增了获取模型坐标变换状态的方法,可以在再次加载时设置坐标变换状态
  • 新增了可视域分析的功能,可以区分不同构件在指定视角下的可见性
/*
* 模型场景内的可视域分析
* 可见区域默认为绿色,不可见区域默认为红色
* 距离单位为mm
*/
// 构造可视域分析管理器配置项
var viewshedManagerConfig = new Glodon.Bimface.Analysis.Viewshed.ViewshedManagerConfig();
viewshedManagerConfig.viewer = viewer3D;
// 构造可视域分析管理器
var viewshedManager = new Glodon.Bimface.Analysis.Viewshed.ViewshedManager(viewshedManagerConfig);
// 构造可视域对象的配置项
var viewshedConfig = new Glodon.Bimface.Analysis.Viewshed.Viewshed3DConfig();
viewshedConfig.position = { x: 378009.9204790529, y: -8583.420964820874, z: 7546.564179268196 };
viewshedConfig.direction = { x: -0.9, y: -0.10, z: 0.05 };
viewshedConfig.visibleAreaColor = new Glodon.Web.Graphics.Color(0, 255, 0, 0.6);
viewshedConfig.hiddenAreaColor = new Glodon.Web.Graphics.Color(255, 0, 0, 0.8);
viewshedConfig.distance = 60000;
viewshedConfig.horizontalFov = Math.PI / 4;
viewshedConfig.verticalFov = Math.PI / 8;
// 构造可视域对象
var viewshed = new Glodon.Bimface.Analysis.Viewshed.Viewshed3D(viewshedConfig);
// 添加到可视域分析管理器中
viewshedManager.addViewshed(viewshed);
viewshedManager.update();
viewer3D.render();
模型效果
/*
* 设置雪景效果
* @param opt.darkness {Number} 阴天的天空暗度,取值为0-1,默认值为0.5
* @param opt.density {Number} 雪的密度,取值为:雪停:0;小雪:1;中雪:2;大雪:3
* @param opt.thickness {Number} 雪的厚度,取值为0~1,默认值为0.8
*/
// 开启雪景效果 
viewer3D.enableSnowEffect(true);
// 设置雪景效果参数
viewer3D.setSnowEffectOpts({
    darkness: 0.3,
    density: 2,
    thickness: 0.4
});
// 关闭雪景效果
viewer3D.enableSnowEffect(false);
/*
* 设置雾天效果
* @param opt.darkness {Number} 阴天的天空暗度,取值为0-1,默认值为0.5
* @param opt.lightAttenuation {String} 光线衰减的指数,取值为0-1,默认值为0.5,当为0时模型雾化效果是根据距离线性的
* @param opt.fogColor {Glodon.Web.Graphics.Color} 雾的颜色,默认值为白色
* @param opt.visualDistance {Number} 最远可视范围,默认500,单位为mm
*/
// 开启雾天效果 
viewer3D.enableFogEffect(true);
// 设置雾天效果参数 
viewer3D.setFogEffectOpts({
    darkness: 0.2,
    lightAttenuation: 0.1,
    fogColor: new Glodon.Web.Graphics.Color(255, 255, 255, 1),
    visualDistance: 2500
});
// 关闭雾天效果 
viewer3D.enableFogEffect(false);
交互
/*
* 设置捕捉模式
* 支持开启二维、三维场景下的对象捕捉模式
* 二维场景支持的捕捉对象:Endpoint(端点), Midpoint(中点), Intersection(交点), Perpendicular(垂足), Line(线)
* 三维场景支持的捕捉对象:Endpoint(端点), Line(线), Face(面)
* 三维场景下可支持根据筛选条件过滤被捕捉的对象,例如仅对楼板构件、某个楼层构件的捕捉
*/
// 构造捕捉模式
var snapMode = new Glodon.Bimface.Viewer.SnapMode();
// 设置捕捉对象
var line = Glodon.Bimface.Viewer.SnapObject.Line;
var face = Glodon.Bimface.Viewer.SnapObject.Face;
snapMode.setSnap3DList([line, face]);
// 定义构件筛选条件
var conditions = [
{
  "categoryId": "-2000035",  // 类别:楼板
  "levelName": "Roof"  // 楼层:Roof
},
{
  "categoryId": "-2000011"  // 类别:基本墙
},
{
  "categoryId": "-2000170"  // 类别:幕墙嵌板
}
];
// 设置捕捉过滤条件
snapMode.setSnapConditions(conditions);
// 应用捕捉设置
viewer3D.setSnapMode(snapMode);
if (!isSnapModeActivated) {
// 启用捕捉设置
viewer3D.enableSnap(true);
setButtonText('btnSnapMode', '关闭捕捉模式');
} else {
// 关闭捕捉设置
viewer3D.enableSnap(false);
setButtonText('btnSnapMode', '启用捕捉模式');
}
  • 优化了矢量图纸中图元选中效果和hover效果
在线充值
  • 新增了对公转账的支付方式
  • 新增了在线申请发票的功能