BOS3D使用教程

 

BOS3D 环境配置说明


  • 所需硬件配置(推荐)
    • 内存:16G
    • 独立显卡:2G
  • 运行环境
    • 服务器操作系统:Linux操作系统
    • Web服务器:Tomcat 8.0及以上版本
    • 部署方式:支持公有云、私有云或本地部署
  • 开发环境
    • 支持HTTP协议进行数据请求的编程语言、平台等都支持,如下:
    • 编程语言:JavaScript、Java、.Net、Python等
    • 操作系统:Windows、Linux、iOS、Android等
    • Web浏览器:支持WebGL的浏览器(如:Chrome、Firefox等)

 

BIM模型浏览基本流程

  • 第一步:上传模型
    首先,需要从本地找一个类型为IFC的模型,例如,一个小房子(点此下载),然后到【试一试】页面,通过我们提供的接口(上传模型文件)上传该模型,将返回结果中的文件key记录下来,如下图所示:

    更多模型由此获取

    模型 类型 下载地址
    办公室 ifc 下载
    房子 ifc 下载
    布袋除尘器 iModel 下载
    四合院 revit 下载
    高塔 OBJ 下载
    如需上传Revit或iModel模型,请点击左边列表中的【模型导出及使用说明】,学习插件的使用方法。插件下载>>
    如需上传OBJ模型,请将模型文件(obj、mtl及贴图)合并打包为zip,再进行上传
  • 第二步:模型解析
    文件上传成功后,需要进行解析。进入【试一试】页面,提供上传文件得到的文件key,利用接口(请求解析文件)对模型进行解析,如下图所示:
    将返回结果中的模型key(即一串以大写M开头,后跟13个数字的字符串)记录下来,如上图响应信息中用红框标记的信息:M1541058376596。
    注意:由于文件大小不同,解析可能需要花费一点时间。在此期间,可以进入【试一试】页面中使用查看模型解析进度的接口来了解解析执行情况。
  • 第三步:创建场景
    模型解析完成后,可创建模型场景。到【试一试】页面,提供模型解析得到的模型key,利用接口(创建模型默认场景)生成场景,如下图所示:
    将返回结果中的场景key(即一串以大写M开头,后跟13个数字的字符串)记录下来,如上图响应信息中的Key:M1541058376596。
    注意:场景key与模型key相同,且场景的创建也需要等待一点时间,在场景创建成功之前,是无法浏览模型的。
  • 第四步:模型浏览
    现在,我们就可以查看模型了。请直接复制下面的代码到记事本,将modelKey改为自己的模型key,另存为.html文件,并选择使用浏览器打开html文件,即可浏览您刚才上传的模型了。
    有关这段代码的解释说明,请点击左边列表中的【前端接口使用说明】

 

服务端接口的使用有如下三种方式:

  • 方式1:直接利用官网的【试一试】调用服务端接口
    BOS3D对外提供的所有服务端接口均可在【试一试】中方便地调用。使用方式请参照左边列表中的【新手入门】。
    如需了解更多接口,请前往【试一试】进行查看和试用。
  • 方式2:利用Postman调用服务端接口
    开发或者调试Web程序时,可使用Postman发送HTTP请求,实现对服务端接口的调用。它在发送网络HTTP请求方面可以说是Chrome插件类产品中的代表产品之一。
    Postman图标为:
    Postman使用方法:
    如需下载和了解更多有关Postman的信息,请前往Postman官网:https://www.getpostman.com
    下面以接口【请求解析模型】的调用为例,来说明如何使用postman调用服务端接口。
    【请求解析模型】的接口调用格式:
    • 请求类型:POST
    • 请求地址: http://bos3d.bimwinner.com/api/{projectKey}/parses/files
    • 请求头: Content-Type:application/json
    • 请求体:JSON格式数据,例

      {

        "fileKey":"Z3JvdXAxLE0wMC8yNi85RC93S2dNQ1Z1WXl2cUFLdDE2QUlxcTM4aU9XQlUxNzEuaWZj",

        "priority":0

      }

    • 响应:JSON格式数据,例

      {

        "message":"请求处理成功",

        "code":"SUCCESS",

        "data":{

              "remark": "文件还未开始解析",

              "modelType": "IFC",

              "modelKey": "M1536740159604",

              "status": "0"

              }

      }

    • Postman请求举例:
      成功安装postman之后,打开postman(可以不注册、登录),打开一个新的request,默认请求发送方式为POST,将(http://bos3d.bimwinner.com/api/test/parse/files)复制后粘贴到URL地址栏,选择Content-Type为application/json,将请求体复制到body下,修改filekey为所需的值,点击【Send】按钮即可。
      此时,可看到postman的响应区显示出返回的信息,如下图:
    更多有关接口的详细说明,请参见:API
  • 方式3:通过代码调用服务端接口
    如果要基于服务端接口的调用来进行二次开发,我们就需要自己编写代码,通过代码来调用服务端接口。
    下面以接口:获取模型信息的调用为例,来说明如何使用JavaScript和Java语言进行接口调用。
    获取模型信息的接口调用格式如下:
    GET http://bos3d.bimwinner.com/api/{databaseKey}/models?modelKey={modelKey}
    已知projectKey为test,modelKey为M1539156846180
    • 使用JavaScript语言
      首先,请先前往jQuery官网下载jQuery,下载地址:https://jquery.com/download/,当前最新版本为3.3.1;
      其次,新建一个空的html文件,并将下载的jQuery依赖包放在libs/jquery/3.1.1/下,注意libs文件夹应与创建的html文件在同一个文件目录下;
      接下来,请直接复制下面的代码到记事本,粘贴到刚才新建的空html文件中,并保存;
      最后,选择使用浏览器打开html文件。注意,应在开发者模式下观看代码执行结果,否则执行将仅弹出一个如下图所示的对话框,然后浏览器页面将是一片空白,什么也没有。
      开发者模式是在浏览器打开的状态下,按下【F12】键,将进入开发者模式,以谷歌浏览器为例,将打开谷歌开发者工具,如下图所示。此时,可以看到,在【Console】中将显示Object,将调用服务端接口的返回结果输出到控制台,
      点击“Object”,可看到详细的返回结果,如下图:
      示例代码下载
    • 使用Java语言
      首先,创建一个普通java工程,可使用任意一种java语言的编辑工具,Eclipse、MyEclipse或Idea等均可,创建一个java工程;
      其次,创建一个新的java类,例如,mySampleAPI,并应保证该类中包含main函数;
      接着,在该类中添加一个共有方法,不妨设为getModelInfo,
      将如下代码复制并粘贴到类中,
      并记得导入相应的java包,如下:
      import java.net.*;
      import java.io.*;

      接下来,将main函数改写为如下代码:
      现在就可以运行程序了,运行结果如下:
      可以看出,刚才的这段代码同样实现了对服务端接口的调用,返回的模型信息在控制台进行输出。
      更多语言请自行查阅相关资料,了解接口调用的方法。
      示例代码下载

 

BOS3D提供了丰富的JavaScript API,以供开发人员进行二次开发。

将本地模型在BOS3D线上环境上传、解析,并创建场景成功后,可通过编写html代码可将模型在浏览器上展示出来,仍然仅需四步。
  • 第一步:创建一个简单的html文档
    创建一个空的记事本文件,或者也可以使用NotePad++、sublime等编辑工具来创建一个空的文档,另存为.html文件。
    复制如下代码,得到一个最简单的html文档。
  • 第二步:导入相关依赖包
    在html文档的head中导入相关依赖包,代码如下:
  • 第三步:设置画布大小
    为了将模型在屏幕上显示出来,需要设置画布,用作显示模型的容器。代码如下:
  • 第四步:模型展示
    最后这个步骤是整段代码中最复杂的一个环节,需要三个操作:
    (1)创建三维浏览器对象;
    (2)配置参数,也即项目key和模型key;
    (3)加载模型;
    本例中,已知项目key为test,模型key为M1539156846180,则代码如下:
    在这个步骤,将用到前端的一个接口addView
    • 接口形式:addView(modelKey, projectKey),
    • 接口含义:添加视图,从而将模型显示到浏览器,
    • 接口参数:
      • modelKey {string},即模型的Key,本例中是M1539156846180,
      •  projectKey {string},即项目的Key,本例中是test,
    • 接口返回值:{boolean},表示操作是否成功。
    更多前端操作代码点此下载