BIM 360 Glue 二次开发入门

BIM 360 Glue 允许跨团队,跨专业人士在同一个平台浏览审阅多种数据格式的模型,实现模型审查,沟通,协作和项目协调本文章主要介绍Autodesk BIM 360、BIM 360 Glue 以及Glue API的二次开发的入门知识,介绍了HTTP请求测试工具以及JSON浏览工具的使用。本文为转载文章。

Autodesk BIM 360

我们或多或少听过或者接触过Autodesk BIM 360,但可能还是有一个疑问,就是,Autodesk BIM 360到底是什么?

如果用一句话来讲的话,BIM360就是云端的BIM。它的目标是可以使项目的参与者在世界的任何地方、任何时候处理BIM业务,包括设计、施工、运营和维护。

作为云端的产品,BIM 360支持的访问方式有如下几种:

  • PC客户端
  • 网页端
  • 移动端(IOS, Android)

同时对云端的数据有访问权限管理,从而保证数据的安全性

BIM 360现阶段包含的两个比较重要的产品是:BIM360 Glue和BIM 360 Field。接下来我们看看他们分别是什么。

BIM360 Glue

允许跨团队,跨专业人士在同一个平台浏览审阅多种数据格式的模型,实现模型审查,沟通,协作和项目协调,其特点是:

  • 提供三维模型浏览
  • 支持多种数据格式,截止到现在(2015/4/13)支持的格式多达50多种
  • 模型合并
  • 碰撞检测
  • 注释标记
  • 成员管理
  • 操作管理
  • 邮件通知
  • 漫游
  • 集成项目管理工具

BIM360 Field

主要应用领域是在施工现场,解决施工现场的检测结果对比,检验信息记录,以及任务和问题的管理(录入、追踪、分配、统计、报表等等)。其特点是:

  • 创建基于项目的网站
  • 项目清单或核查事项管理
  • 质量保证工程样本输入
  • 施工问题管理
  • 三维模型浏览
  • 离线使用
  • 邮件方式提交照片和问题描述
  • 实时项目进度和问题报告
  • 条码扫描
  • 支持2D图纸与3D模型数据的协同管理

开发工具介绍

BIM 360作为云平台,它的API都是基于WebServices的API,遵循REST标准,即也是RESTfulAPI。我们可以理解为调用的这些API实际上是发送HTTP请求,获得服务器返回的一些信息,然后在自己的客户端处理这些信息。

工欲善其事必先利其器,借助工具学习RESTful API无疑能提升效率。一类是HTTP请求测试工具,一类是JSON结果浏览工具,用来更好的查看HTTP请求返回的结果(Glue API的数据格式可以是XML或JSON。本文主要以JSON为例)。

HTTP请求测试工具

下面我们初步介绍一下RESTfulAPI的使用方式,如果您熟悉相关开发,可以跳过本小节。

RESTful API标准的方法有四种,GET、PUT、POST和DELETE,发送请求的时候。

在使用代码来发送HTTP请求之前,可先使用一些工具来测试一下发送的请求,排查可能的错误。先看看这几个工具:

cURL

cURL是一个使用命令行方式发送HTTP请求的工具,比较简单粗暴。它的下载地址在这里。Windows的话可以下载zip包也可以下载msi安装文件,解压缩或者安装之后,把curl.exe所在的目录添加到系统环境变量的Path里面,这样我们就可以直接在命令行里面使用它了。

设置环境变量Path

Fiddler

Fiddler是带界面的http协议调试代理工具,功能非常强大。

PostMan

PostMan是Chrome的一个HTTP请求调试插件,使用非常方便,只是需要翻墙才能下载。

发送HTTP请求

使用cURL命令行来发送请求,访问百度,不能再简单了:输入curl http://www.baidu.com

就会看到返回的网页内容:

使用PostMan请求百度,选择GET方法:

JSON浏览工具

由于我们的返回结果很多都是JSON格式,我一般使用的一个在线的JSON查看工具,叫onlinejsonviewer可以把JSON转化为比较方便阅读的格式,见下面截图(不过Glue API的大多数请求都有一个参数叫pretty,发送时候,把这个参数加上并把值设为1,就会直接返回格式化好的JSON,就用不着本工具了):

BIM 360 Glue API


Glue API分为两部分:一部分是跟数据相关的,例如登录登出、上传下载文件、获取项目列表等等;另一部分是跟显示相关的,用来三维显示模型。

先申请API秘钥


和以往的桌面产品不同,Glue的开发除了有Autodesk的账号之后,还需要有开发的秘钥,由API Key公钥和API Secret私钥组成,用来核实API访问者的身份和控制访问权限。

目前,获取API秘钥的途径是先加入我们部门ADN。接着,请致信我们描述一下贵公司在Glue上的需求。我们会看看其可行性。然后提供给您沙箱的API key,即测试环境。您可以在测试中了解API,创建您应用程序的原型。请查看GlueAPI 访问权限说明获取更多关于申请和使用的介绍。

关于company_id:后续调用API过程中需要用到这个字段,它和API秘钥一起申请,并且是一一对应的。

有了API秘钥和company_id之后,我们就可以开始使用API了。

Glue API初探


在真正用程序调用API之前,我们先借助cURL和PostMan来直观的感受一下GlueAPI,请参见下面的博文:

cURL或PostMan调用Glue API实现登陆和获取项目列表的功能

或者看视频:

Autodesk BIM 360 Glue API 入门视频课程
使用程序调用GlueAPI
通过前面的例子(),我们就可以大概知道如何调用GlueAPI了,真正开发应用的时候,我们肯定不会使用cURL或者PostMan,而是使用各种编程语言基于不同的平台,例如C#基于Windows Form或者ASP.NET, Java基于Java EE, Javascript基于Node.js等等。

下面介绍几个Glue API的入门课程,叫做Glue Labs,都是英文的:
课程1:介绍Glue API的Labs
课程2:Helloworld程序(Windows Form)
课程3:使用Glue API的基本流程(Windows Form)
课程4:ASP.NET调用Glue API
课程5:学习模型浏览器(Viewer)的Javascript API(基于ASP.NET)

TestHarness工具

我们还有一个C# Windows Form专门写的一个测试工具,源码在这里:BIM360GlueSDKTestHarness_v2.1,把大多数的Glue API调用都集成在一个界面上面,非常适合我们测试使用(真是居家旅游必备良药)。注意,不要忘了输入正确的Base URL,API Key和API Secret

其他资料

AU 2014上使用的Glue API的例子

GlueAPI在线帮助文档

Glue在线帮助文档

Glue产品主页

BIM Filed 360 API

Field 360不需要API秘钥,只要有field账号就可以了,后续我们再具体介绍,这里仅放几个参考链接:

BIM360 Field API简介

FieldAPI在线帮助文档

Field在线帮助文档

Field产品主页


————————————————
版权声明:本文为CSDN博主「卢石碧」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lushibi/article/details/45029735

发表评论