xBIM 实战04 在WinForm窗体中实现IFC模型的加载与浏览

系列目录    【已更新最新开发文章,点击查看详细】 

  WPF底层使用 DirectX 进行图形渲染。DirectX  能理解可由显卡直接渲染的高层元素,如纹理和渐变,所以 DirectX 效率更高。而 GDI/GDI+不理解这些高层元素,因此必须将他们转换成逐像素指令,而通过现代显卡渲染这些指令更慢。WinForm 的绘图技术使用的就是GDI/GDI+技术。但是xBIM并没有提供专门针对传统 WinForm 技术的的模型查看器。如果确实需要在传统的 WinForm 窗体中也要加载并显示BIM(.ifc格式)模型文件该如何处理呢?

  由于WinForm与WPF技术可以互通互用,所以本文介绍一种取巧的方式,在WinForm窗体中加载WPF控件,WPF控件中渲染BIM(.ifc格式)模型文件。具体操作步骤如下详细介绍。

一、新建WinForm项目    
新建WinForm项目,.NET Framework 选择4.7版本,因为需要引用最新的 XBIM相关DLL(依赖 .NET Framework 4.7)。 

二、添加xBIM相关DLL引用
  
通过NuGet程序包管理器添加xBIM相关的DLL引用
 
需要应用下列DLL

三、添加WPF相关DLL引用
  
通过NuGet程序包管理器添加WPF相关的DLL引用。
其中 HelixToolkit 是开发wpf3D应用的开源库,比较好用。

添加引用后,自动添加了下列WPF的基础库。

四、在Winform项目中添加WPF用户控件

编写XAML代码如下:

其中第12行,引用了 xBIM官方提供的 模型浏览器组件。显示效果如下:

五、在WinForm窗体中调用WPF查看器

  添加一个WinForm窗体。左侧Panel中是 按钮区域,右侧Panel填充窗体剩余的所有区域。

 

打开VS的工具箱,可以看到如下栏目
 
WPF互操作性,将 “ElementHost”控件拖拽到右侧Panel中,命名为controlHost,并设置 Dock 属性为 Fill。

 

后台逻辑:在第四步骤中创建了一个WPF用户控件,在此处实例化一个对象

在构造函数中初始化该对象并将对象添加到 controlHost 中

完整的示例代码如下:

 
系列目录    【已更新最新开发文章,点击查看详细】 

 收藏 (0) 打赏

您可以选择一种方式赞助本站

支付宝赞助

微信钱包赞助

版权所有丨本站资源仅限于学习研究,严禁从事商业或者非法活动!:ABC资源站 » xBIM 实战04 在WinForm窗体中实现IFC模型的加载与浏览

切换注册

登录

忘记密码 ?

切换登录

注册