🌓
搜索
 找回密码
 立即注册

BIM学习心得11-给Forge界面添加一个面板

admin 2020-4-10 19:04:18 23524
这一期讲一下怎样简单对Forge做一个二次开发的案例一。
在上一期的讲解过后,我们成功的搭建了一个本地的Forge服务,通过Node.js,使用Start Debugging或者Start Without Debugging的方式启动服务,完成在第9期实现的功能。而这一期我们要实现的功能是创建面板,并实现一个简单的功能演示。

准备材料:visual studio code,node.js

总体思路
利用上一期搭建的基本框架,我们适当做一些拓展,基本框架十分重要,拓展就是根据官方的API文档进行不断的复制粘贴,业务需求分析,以及一定的编程能力,所以我还是写好了代码,链接放到最后自行下载,但是接下来会说清楚在上一期基础上,怎样新建一个拓展。


步骤一:新建文件和配置


新建一个拓展,就是新建一个JavaScript文件,意思就是你需要做两个拓展,就要新建两个JavaScript文件。文件路径我就以自己的为例,按照顺序做就行。
(1)目录/forgesample/public/js文件夹下新建myawesomeextension.js文件,文件内容见代码,在这个文件中,我们创建了一个点击事件,点击按钮后隔离构件,我们大多都是做一个onclick事件,就是点击事件,需要自己开发的重点内容就是下图方框里面的部分,这一期做的是一个“隔离构件”的功能。

(2)目录/forgesample/public/css/main.css中添加代码(添加的代码见文件)

(3)在目录/forgesample/public/index.html文件中添加代码

(4)在目录/forgesample/public/js/ForgeViewer.js文件中将

viewer = new Autodesk.Viewing.GuiViewer3D(document.getElementById('forgeViewer'));

替换为:

viewer = new Autodesk.Viewing.GuiViewer3D(document.getElementById('forgeViewer'),{ extensions: ['MyAwesomeExtension'] });

注意:'MyAwesomeExtension'是拓展名,拓展名应该唯一,可以指定多个拓展名,但是要这样写:viewer = new Autodesk.Viewing.GuiViewer3D(document.getElementById('forgeViewer'), { extensions['MyAwesomeExtension','HandleSelectionExtension'] });
这里就添加了'HandleSelectionExtension'另一个拓展名。但是本期没必要,不要添加。

步骤二:测试程序


(1)到了快乐的Start debugging时间,启动程序

(2)在谷歌或者火狐(推荐)浏览器中打开localhost:3000,选择一个项目,这里有了。

(3)选择一个构件,点击我们新建的按钮,隔离出来了,成功执行。

总结1

我们用一个图简单来表达整个流程,最基本的步骤就是4个步骤,要想做好就是对API稳当的理解和对JavaScript代码的熟练掌握了。


总结二

这么做的意义是什么?从行业发现来说,基于BIM的信息集成开发,是大势所趋,因为不论是哪一方,都想把大而繁杂的内容做成最简单,最实用的系统平台,而BIM模型在与BIM相关的基于B/S管理平台上,是必不可少的,难就难在,我们怎样将BIM模型放进管理平台,怎样用起来,Forge为把BIM模型放在网页端,不论是作为可视化的展示平台还是数据提取利用平台,提供了很好的解决方案。

后台回复“学习心得11”获取本期材料,欢迎关注知乎专栏【BIM学习心得】获取更多BIM脑洞应用。 

图:凉拌谢耳朵

文:凉拌谢耳朵

排版:凉拌谢耳朵


在看的,麻烦点一下再走好吗

扫一扫

101729.jpg
随机推荐

最新主题

0 回复

高级模式
游客
返回顶部