BIMFACE之3D

    技术2022-07-11  102

    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; // 西北视角

    Processed: 0.014, SQL: 9