BIMFACE之3D。
作者:互联网
操作三维模型:
<div id='domid' style='宽高'></div>
<script>
var domId = document.getElementById('domShow'); // 获取元素id
var config = new Glodon.Bimface.Viewer.Viewer3DConfig(); // 配置项
config.domElement = domId; // 设置文档元素为domId
config.apiHost; // api网址
config.resourceHost; // 资源网址
config.initialViewOption; // 初始化视角
config.homeViewOption; // 主视角
config.enableViewHouse; // 是否开启viewHouse
config.enableOrbit; // 是否可以旋转
config.orbitButton; // 设置鼠标右转 默认为左转
config.enableToggleContextMenuDisplay; //是否开启右键菜单
config.enableHover; // 是否开启构件鼠标悬停效果
config.enableBorderLine; // 是否显示轮廓线
config.exposure; // 设置曝光度
config,enableIBLBackground; // 是否启用环境光照
config.loadIBLScene; // 选择环境贴图
var viewer3D = new Goldon.Bimface.Viewer.Viewer3D(config); // 创建3D模型 并传入配置项
viewer3D.render(); // 渲染整个场景。如果调用了viewer3D的其它函数,建议在最后调用一次render();
viewer3D.addView(viewToken); // 添加一个模型场景
viewer3D.hideComponents(); // 隐藏构件 (已弃用)
viewer3D.hideComponentsById(id); // 根据id构件隐藏构件
viewer3D.hideComponentsByObjectData(筛选条件); // 根据筛选隐藏构件
viewer3D.showComponents(); // 显示构件 (已弃用)
viewer3D.showcomponentsById(id); // 根据构件id显示构件
viewer3D.showcomponentsByIdObjectData(筛选条件); // 根据筛选条件显示构件
viewer3D.showAllComponents(); // 显示所有构件
viewer3D.transparentComponentsById(id); // 根据构件id设置构件为半透明
viewer3D.transparentComponentsByIdObjectData(筛选条件); // 根据筛选条件设置构件为半透明
viewer3D.opaqueComponentsById(id); // 根据构件id取消构件半透明
viewer3D.opaqueComponentsByIdObjectData(筛选条件); //根据筛选条件取消构件半透明
viewer3D.opaqueAllComponents(); // 取消所有构件半透明
viewer3D.overrideComponentsColorById(多个object数组,颜色); // 根据构件id给构件着色
viewer3D.restoreComponentsColorById(多个object数组); // 根据构件id恢复原来的颜色
viewer3D.clearOverrideColorComponents(); // 恢复全部构件原来的颜色
viewer3D.restorDefault(); // 恢复默认显示
viewer3D.isolateComponentsById(object数组,隔离方式); // 根据条件隔离构件,其它全部隐藏或半透明
viewer3D.clearlsoation(); // 清除隔离
viewer3D.setsolatedComponentColor(color); // 设置被隔离构件颜色
viewer3D.restorelsolatedComponentColor(); // 恢复隔离状态下其它构件的颜色
viewer3D.getlsolatedComponentColor(); // 获取被隔离构件的颜色
viewer3D.disableComponentsSelectionById(); // 根据构件id禁止被选中 (已弃用)
viewer3D.setSelectedComponentsById(多个object id的数组); / /根据构件id设置多个构件为选中的集合
viewer3D.addSelectedComponentsById(多个object id的数组); // 根据构件id在选中集合中继续添加构件
viewer3D.getSelectedComponents(多个object id的数组); //获取选中集合中的构件id数组
viewer3D.removeSelectedId(多个 object id数组); // 根据构件id选中集合中删除构件
viewer3D.showExclusiveComponentsByObjectData(筛选条件); //根据筛选条件显示构件,其余全部隐藏 筛选条件类型为obj 数组
viewer3D.setComponentsOpacity(多个object id数组,opacity); // 根据构件id设置构件半透明,或取消半透明
viewer3D.getCameraStatus(); // 获取相机位置信息,用于保存后恢复相机视点
viewer3D.setCameraStatus(); // 根据相机位置信息恢复视点
viewer3D.setView(viewOption); // 让三维模型回到标准视角
viewer3D.zoomToBoundingBox(object); // 缩放指定包围盒
viewer3D.zoomToSelectedComponents(); // 缩放到选中集合的构件
viewer3D.zoomln(); // 三维模型放大
viewer3D.zoomOut(); // 三维模型缩小
viewer3D.getCurrentState(); // 获取当前模型的浏览状态
viewer3D.setState(state); // 恢复模型状态 state为getCurrentState()返回值
viewer3D.setCameraAnimation(boolean); // 是否允许转场动画
viewer3D.getAreas(callback(data)); // 获取空间的回调函数。data空间信息 json || object
viewer3D.getAreaProperty(id,callback(data)); // 获取空间属性 空间id callback(data) data为空间属性
viewer3D.getRoomProperty(id,callback(data)); //获取房间属性 房间id callback(data) data为房间属性
viewer3D.setArea(空间的平面边界,空间高度,空间id); // 设置空间 参数类型object number string
viewer3D.clearArea(); //清除空间
viewer3D.clearAreasById(多个object id数组); // 根据空间id 清除空间体块
viewer3D.getAreaColorById(空间id); // 根据空间id获取空间体积的颜色
viewer3D.getAreaFrameColorById(空间id); // 根据空间id获取空间体块线框的颜色
viewer3D.hideAllAreas(); // 隐藏所有空间体块
viewer3D.hideAreasById(多个object id数组); // 根据空间id隐藏空间体块
viewer3D.setAreasColorById(多个object id数组,color); // 根据空间id设置空间体块颜色
viewer3D.setAreasFrameColorById(多个object id数组,color); // 根据空间id设置空间体块线框的颜色
viewer3D.showAllAreas(); //显示所有空间体块
viewer3D.showAreasById(多个object id数组); //根据空间id显示空间体块
viewer3D.showViewHouse(); //显示viewHouse
viewer3D.hideViewHouse(); // 隐藏viewHouse
var colorRed = new Glodon.Web.Graphics.Color(255,0,0,1);
viewer3D.setBackgroundColor(colorRed); //设置模型区域背景颜色
viewer3D.setBackgroundColor(color1,color2); // 设置模型区域自定义渐变背景颜色
viewer3D.addPlane(坐标位置,坐标位置,贴图路径,贴图加载的回调函数); // 在平面添加贴图,为异步调用,需要在callback中调用render()
viewer3D.enableOrbit(boolean); //是否允许模型转换
viewer3D.enableMouseHoverHighlight(); // 允许鼠标hover构件时高亮
viewer3D.disableMouseHoverHighlight(); // 禁止鼠标hover构件是高亮
viewer3D.setOrbitButton(设置左右鼠标,进行模型旋转); //设置鼠标旋转习惯
viewer3D.setNavigationMode(导航模式); // 设置导航模式
viewer3D.setFlySpeedRate(number); // 设置漫游倍数
viewer3D.setMinimunFPS(number); //设置帧率
viewer3D.isEnableBorderLine(boolean); // 是否开启线框
viewer3D.isEnableHover(boolean); //是否开启鼠标hover效果
viewer3D.isEnableToggleContextMenuDisplay(boolean); // 是否开启右键菜单
viewer3D.getBackgroundColor(); // 获取背景颜色
viewer3D.getLoadIBLScene(); // 获取IBL设置
viewer3D.createSnapshotAsync(color,callback(data)); // 创建快照图片 加载成功后回调函数的参数 data为图片数据
viewer3D.startAutoRotate(speed); // 正负表示方向,数值表示速度
viewer3D.stopComponetProperty(构件id,callback(data)); // 获取构件属性 加载成功后参数为构件属性
viewer3D.getObjectDataById(构件id); // 根据构件id获取objectData
viewer3D.getElementByConditions(模型文件id,筛选条件,加载成功后回调函数(构件列表)); // 离线数据包中,对单模型或集成模型根据构件类型ID、族和族类型获取构件列表
viewer3D.getMaterialProperty(模型文件id或构件id,加载成功后的回调(集成模型材质)); // 获取集成模型材质属性
viewer3D.getFloors(callback(data)); // 获取单模型,集成模型楼层列表 data模型楼层列表
viewer3D.getModelTree(callback); // 获取模型构件目录结构树 回调函数加载成功 参数为模型构件目录结构树
viewer3D.getFamilyTypes(); // 获取族类型 仅适 rfa文件格式
viewer3D.showFamilyTypeById(族类型id); // 切换族类型
viewer3D.enableFullScreen(boolean); // 是否全屏
viewer3D.setBorderLineEnabled(boolean); // 是否渲染轮廓线
viewer3D.resize(width,height); / /设置场景大小
viewer3D.addEventListener(eventName,handler); // 增加监听事件
viewer3D.removeEventListener(eventName,handler); // 移除监听事件
// 事件
Glodon.Bimface.Viewer.Viewer3DEvent.ViewAdded; // 3D模型加载完毕
Glodon.Bimface.Viewer.Viewer3DEvent.ViewLoading; // 3D模型加载中
Glodon.Bimface.Viewer.Viewer3DEvent.ComponentsSelectionChanged; //构建选择状态变化 (废除)
Glodon.Bimface.Viewer.Viewer3DEvent.MouseClicked; // 鼠标左键事件
Glodon.Bimface.Viewer.Viewer3DEvent.ContextMenu; // 鼠标右键事件
Glodon.Bimface.Viewer.Viewer3DEvent.SelectionChanged; // 构件选中状态变化
Glodon.Bimface.Viewer.Viewer3DEvent.ComponentsHoverChanged; // 鼠标悬停构件事件
Glodon.Bimface.Viewer.Viewer3DEvent.MouseDoubleClicked; // 鼠标双击构件事件
Glodon.Bimface.Viewer.Viewer3DEvent.Error; // 出现错误
// 隔离构件
Glodon.Bimface.Viewer.IsolateOption.HideOthers; // 其它隐藏
Glodon.Bimface.Viewer.lsolateOption.MakeOthersTranslucent; // 其它半透明
// 浏览模式
Glodon.Bimface.Viewer.NavigationMode3D.Fly; // 漫游模式
Glodon.Bimface.Viewer.NavigationMode3D.Orbit; // 旋转
Glodon.Bimface.Viewer.NavigationMode3D.Select; // 选择
Glodon.Bimface.Viewer.NavigationMode3D.zoom; // 缩放
Glodon.Bimface.Viewer.NavigationMode3D.OrbitWithModelCenter; // 围绕模型中心旋转
//设置构件透明状态
Glodon.Bimface.Viewer.OpactityOption.Translucent; // 半透明
Glodon.Bimface.Viewer.OpactityOption.Opaque; // 取消透明
// 定义鼠标操作
Glodon.Bimface.Viewer.OrbitButton.Left; // 左键旋转
Glodon.Bimface.Viewer.OrbitButton.Right; // 右键旋转
// 三维模型的标准视角
Glodon.Bimface.Viewer.ViewerOpation.Home; // 主视角
Glodon.Bimface.Viewer.ViewerOpation.Top; // 俯视角
Glodon.Bimface.Viewer.ViewerOpation.Bottom; // 仰视角
Glodon.Bimface.Viewer.ViewerOpation.North; // 北视角
Glodon.Bimface.Viewer.ViewerOpation.South; // 南视角
Goldon.Bimface.Viewer.ViewerOpation.West; // 西视角
Glodon.Bimface.Viewer.ViewerOpation.East; // 东视角
Glodon.Bimface.Viewer.ViewerOpation.SouthEast; // 东南视角
Glodon.Bimface.Viewer.ViewerOpation.SouthWest; // 西南视角
Glodon.Bimface.Viewer.ViewerOpation.NorthEast; // 东北视角
Glodon.Bimface.Viewer.ViewerOpation.NorthWest; // 西北视角
</script>
标签:viewer3D,Viewer,Bimface,BIMFACE,Glodon,构件,id,3D 来源: https://blog.csdn.net/weixin_44164824/article/details/89702775