BIM Viewer

BIM Viewer 基于WebGL开发的结构化和轻量化模型引擎,同时支持3D和2D;模型格式上支持包括Revit,Naviswork在内的众多主流BIM模型格式(转换为BIMe的专用格式)。无需任何软件和插件,直接在浏览器内运行。

工具集成:

  • THREE.js 使用JavaScript,基于webgl的3d图形库。
  • paper.js 开源矢量图形框架,基于html5 Canvas.
  • lodash JavaScript 的实用工具库, 表现一致性, 模块化, 高性能, 以及 可扩展.
  • primeng 基于angular2的的UI组件库。

    跨平台支持

    移动端(android,iOS)。
    移动端
    Mac,Linux,Windows桌面端。
    桌面端

浏览器支持列表

BIM Viewer 需要运行在支持WebGL浏览器中,目前所有的现代主流浏览器都支持WebGL。点击查看您的浏览器是否支持WebGL

  • Chrome 50+
  • Firefox 45+
  • Opera 37+
  • Safari 9+
  • Microsoft Edge 20+
  • Internet Explorer 11

目录

BIMViewer架构

Bim Viewer 基于Angular 4.0构建,但考虑到开发者可能需要使用JavaScript,所以接口以Javascript语言提供。
Bim Viewer Architecture

API 调用方式&结构

在BIM Viewer所在的页面,我们将BIM Viewer的API都集中导出到window下的BIMe对象下。您可以参考我们的API 文档,直接在Chrome的调试工具里面通过window.BIMe.xx来使用我们给您提供的各种方法。

API 结构

在此结构中,第一层和第二次为逻辑层,无对应类。第三层为真实类,每个类都是全局单例,无须创建。
BIMeModelInfo: 模型导出时数据类
BIMeElementData: 构件数据类
BIMeModelData:模型运行时数据类
BIMeLogicData: 逻辑数据类
BIMeSelector: 构件选择控制类
BIMeHide: 构件隐藏显示控制类
BIMeIsolate: 构件隔离控制类
BIMeZoom: 构件聚焦控制类
BIMeUtility: 全局控制类
BIMeSelection: 选择集操作类
BIMeModelView:视图操作类
BIMeAnnotation:批注操作类
BIMeViewpoint:视点操作类
BIMeViewpointLink:视点链接操作类
BIMeElementProperty:构件属性操作类
BIMeSheet:二维操作类
BIMeEvent: 全局消息类
Api_Structure

BIM Viewer API 示例:

function hello(){

// 向当前选择集添加对象'xxxx'。

window.BIMe.control.BIMeSelector.selectorElementByElementId(elementId, true);

// 聚焦ElementId 为'xxxx'的对象。

window.BIMe.control.BIMeZoom.zoomElementByElementId(elementId);

}

为了让开发更为便捷,我们将Paper.js,THREE.js,Lodash.js也都导出到window下。

THREE.js 示例:

function hello() {

var geo = new THREE.BoxBufferGeometry(10,10,10);
var mat = new THREE.MeshPhongMaterial({color:0x00ff00,side:THREE.DoubleSide});
var mesh = new THREE.Mesh(geo,mat);

}

lodash.js示例:


function hello() {

var array = [1];
var other = _.concat(array,2,[3],[[4]]);

console.log(other);

// => [1,2,3,[4]]

console.log(array);

// => [1];

}

快速开始

step 1: 联系ProBIM部署私有云或使用www.BIM365.com.cn

step 2: 搭建开发环境

当部署完私有云后,将iis服务器下的BIMComposer文件夹复制到本地,

step 3: 编写代码 & 测试。

step 4: 发布

在线调试

打开chrome的调试工具,切换到console tab页,切换iframe为BIMComposer所在的iframe。

IFrame

在控制台输入api.xxx调用BIMComposer的所提供的方法。

Online_Debugger

results matching ""

    No results matching ""