在 Winform 上显示 CAD 三维模型 |
您所在的位置:网站首页 › cad建模怎么看立体图形 › 在 Winform 上显示 CAD 三维模型 |
0、基本概念
CAD
CAD 是计算机辅助设计(Computer-Aided Design)的缩写,指的是使用计算机技术和软件工具来辅助进行设计和绘图的过程。 CAD 广泛应用于各种工程和设计领域,如建筑设计、机械工程、电子设计、航空航天、汽车设计等。它取代了传统的手工绘图方式,提供了更高效、精确和灵活的设计方法。 CAD 软件目前市面上有许多 CAD 软件,下面介绍几个比较流行的 CAD 软件: 图标软件名称出品商性质介绍主要应用领域![]() ![]() ![]() eDrawings 是一款由 SolidWorks 开发的用于查看和共享 CAD 文件的文件查看器。通过 eDrawings,您可以审查 2D 和 3D 设计。该工具使任何人都可以使用3D设计数据进行沟通和协作,以最大限度地减少错误并更快地将设计推向市场。 eDrawings Viewer/Professional/Publisher这三款软件都属于 eDrawings 系列产品。eDrawings Viewer 提供了基本的查看功能;eDrawings Professional 提供了更多的高级功能;eDrawings Publisher 则可以用来从其他 CAD 软件中创建 eDrawings 文件 eDrawings ViewereDrawings ProfessionaleDrawings Publisher免费软件,用于查看和打印多种格式的 CAD 模型文件,还提供了基本的测量功能。通过 eDrawings Viewer 我们可以很容易地使用 3D 产品设计数据进行沟通和协作付费软件,在 eDrawings Viewer 的基础上提供了更多的功能。例如:支持在模型文件中添加批注和标注,支持查看模型文件的质量分析结果,支持使用增强现实(AR)和虚拟现实(VR)查看模型文件一个插件,可以用来从其他 CAD 软件中创建 eDrawings 文件。例如:Autodesk Inventor®、CATIA® V5、Pro/Engineer®、PTC Creo®、Simens NX®、SketchUp®、Solid Edge®WinIOS|AndroidWin|MacIOS|AndroidWin|Mac不支持移动端 eDrawings 支持的文件类型 文件类型(版本)描述ACIS(截止到 2018.1(R28)) .sat.sabAutoCAD®(截止到 AutoCAD 2018) .dxf files.dwg filesAutodesk® Inventor®(截止到 2018) .ipt.iamCATIA V5(截止到 V5-6 R2018(R28)) .CATPart.CATProductCATIA V5 [3DXML](截止到 V5-6 R2018(R28)).3DXMLeDrawings(截止到 eDrawings 2019) .eprt.easm.edrwJT(截止到 v10.0) .jt.JT 数据格式文件不支持产品制造信息(PMI)Parasolid(截止到 v30.1) .x_b.x_t.xmt.xmt_txtSolid Edge(V19-20,ST - ST10) .par.psm.asmSolid Edge 文件不支持 PMI SOLIDWORKS(截止到 SOLIDWORKS 2019) .sldprt.sldasm.slddrwUnigraphics-NX(11.0 到 12.0).prt ActiveX 控件ActiveX控件是一种可重用的软件组件,用于在Microsoft Windows操作系统上创建交互式应用程序。它们是基于微软的ActiveX技术,是一种面向对象的软件组件模型。 ActiveX控件可以包含一系列功能和用户界面元素,例如按钮、文本框、图像显示、多媒体播放器等。这些控件可以被其他应用程序调用和使用,以实现各种功能。 通过使用ActiveX控件,开发人员可以利用预先编写好的控件来扩展和增强应用程序的功能,而不必从头开始编写代码。这样可以节省时间和资源,并提高开发效率。 ActiveX控件通常以DLL(动态链接库)文件的形式存在,可以通过注册在系统中进行部署。一旦安装和注册,其他应用程序就可以通过调用控件的接口来使用其功能。 需要注意的是,ActiveX控件在过去主要用于Internet Explorer浏览器上的网页应用程序。然而,随着技术的发展和安全性的考虑,现代浏览器对ActiveX的支持已经减少。因此,现在更常见的是使用其他技术和标准,如HTML5和JavaScript来创建交互式Web应用程序。 1、引言想要在 Winform 中展示三维模型,通常可以 嵌入 eDrawings 窗口 或者 嵌入 Unity 场景。本文主要探讨如何通过 eDrawings 提供的 API 向 Winform 中添加 EModelView ActiveX 控件以显示 CAD 三维模型。 2、本文使用到的相关软件或产品 Windows 10 专业版 22H2Visual Studio Community 2022 - 17.6.2Microsoft .NET Framework 版本 4.8.04084「.NET 桌面开发」工作负荷eDrawings2023 sp02 31.2.0.0035 3、下载并安装 eDrawings Viewer要使用 eDrawings 提供的 API ,需要先下载 eDrawings 软件。首先前往下载页面,笔者使用的是 Windows 操作系统,点击 Win Users 下载 Windows 版本的 eDrawings Viewer: 来到产品选择页面(需要梯子才能访问下载列表),找到 eDrawings (64-bit),点击左侧的下载按钮: 下载完成后双击运行安装向导程序,点击下一步: 来到注册页面,如果有许可证可以输入许可证;但笔者没有,就直接点击下一步了: 点击“安装”以开始安装: 完成页面,点击“完成”: 由于勾选了“启动 eDrawings”所以关闭安装向导后会自动启动 eDrawings,第一次启动会进入产品注册页面,正常填写您的注册信息即可: 🌐 这一步如果无法在线注册的话可能会要求发送电子邮件到[email protected],同样正常填写您的注册信息并生成 xml 文件,然后将生成的 xml 文件添加到邮件附件发送给官方,几分钟后就可以收到注册成功的回复了! 提交注册信息后官方会发送验证码到注册邮箱: 验证成功后,即可进入软件,我们可以尝试先用 eDrawings 打开一个 solidworks 模型。 如果您还没有任何 CAD 三维模型,可以前往这里下载笔者演示使用的这个轴承模型。 第一次打开 CAD 模型文件会提示安装 SOLIDWORKS 文档管理程序,点击“下载并安装”即可: 下载完成后双击运行安装向导程序,点击下一步: 点击“安装”: 安装完成后,点击“结束”以退出安装向导: 回到 eDrawings,点击警告对话框的“好的,我现在已安装。”按钮: 然后 solidworks 模型就顺利打开啦,可以看到没有任何问题: eDrawings 默认使用的“选择”工具;在切换为“平移”工具后,可以通过鼠标左键平移画面以及通过鼠标中键旋转画面。 第四、五、六章主要参考:https://help.solidworks.com/2023/english/api/emodelapi/GettingStarted-emodelapi.html 4、手动生成 eDrawings x64 主互操作程序集DLL您必须手动生成 Microsoft Visual Studio C# Windows 窗体应用所需要的64位主互操作程序集DLL,因为 Microsoft Visual Studio 是一个32位应用。 💬 值得一提的是,在 Visual Studio 2022 之前,Microsoft Visual Studio 的确是一个32位应用;但是最新的 Visual Studio 2022 已经全面转换为64位应用程序了(了解更多…)。所以如果您使用的是最新的 Visual Studio 2022,那您可以直接跳过第四章。 如果您还没有安装 eDrawings,请先前往安装 eDrawings 20nn x64 版本。 在您的计算机上定位到 tlbimp.exe: .NET Framework 4 及以后,使用 CLR 4.0,路径为:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools.NET Framework 3.5 及之前,使用 CLR 2.0,路径为:C:\Program Files (x86)\Microsoft Visual Studio 8\SDK\v2.0\Bin笔者 tlbimp.exe 所在目录为:C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools 在 tlbimp.exe 所在文件夹中打开命令提示符窗口: Windows10 在当前文件夹下清除文件路径并输入 cmd 即可打开命令提示符窗口。 输入: tlbimp.exe "C:\Program Files\Common Files\eDrawings2023\EModelView.dll"⚠️ 如果 eDrawings 20nn x64 版本安装在您的计算机上别的位置,请指定您的 EModelView.dll 路径。 检查命令提示符窗口以确认是否返回了 Type 库导入到 EModelView.dll 中的信息: 输入 exit 退出命令提示符窗口。 5、创建一个 C# eDrawings x64 项目首先创建 eDrawings x64 EModelView.dll,详见第四章。 打开 Visual Studio,点击“创建新项目”: 按如图所示筛选后,选中“Windows 窗体应用(.NET Framework)”,点击下一步: 项目名称自行命名即可,笔者就命名为 “eDrawings” 了;项目路径与自己一般项目所在路径一致即可。点击“创建”: 完成之后进入到设计页面,前往 “项目”==>“eDrawings 属性” 打开项目的属性页面: a. 在“生成”选项卡中将“目标平台”更改为 x64: b. 如果您是使用 .NET Framework 4 或者以后创建的 EModelView.dll,确保“应用程序”选项卡中“目标框架”为 .NET Framework 4.n: 属性设置完成后,ctrl+S 保存一下就可以关闭属性页面了。 6、向 Visual Studio 添加 EModelView ActiveX 控件在完成第五章的内容后,回到设计页面;这个时候我们主要关注右边的“工具箱”停靠窗口: 如果没有“工具箱”窗口,可以前往 “视图”==>“工具箱” 打开。 在“工具箱”窗口内部空白处右击鼠标,点击“选择项”: 弹出“选择工具箱项”对话框,切换到“COM 组件”选项卡,找到“eDrawings 2023 Control”组件,勾选,然后点击“确定”: 随后就可以在“工具箱”窗口找到“eDrawings 2023 Control”控件了: 然后就可以向窗口添加该控件了: 成功添加控件后项目也会自动添加对 AxEModelView 和 EModelView 的引用: 设置控件的 Dock 属性为 “Fill”,这样就可以填满整个窗口了: 在设计页面右击,选择“查看代码”即可跳转到代码编辑页面: 使用控件的 OpenDoc() 方法以打开一个 CAD 文件: //笔者的控件名称为 “axEModelViewControl1”,实际使用时请根据您的 eDrawings 2023 Control 名称调整代码即可。 axEModelViewControl1.OpenDoc(@"D:\Visual Studio\source\repos\eDrawings\BAY6205ZZ.sldprt", false, false, true, "");函数原型: void AxEModelView.AxEModelViewControl.OpenDoc(string fileName, bool isTemp, bool promptToSave, bool readOnly, string commandString) 参数定义fileName文件的绝对路径和文件名称(笔者是将 CAD 文件拷贝到了项目所在文件夹)isTemptrue 表示在远程非 eDrawings 文件关闭时删除该文件的本地副本,false 表示保留本地副本promptToSavetrue 表示在用户退出而不保存文件时显示对话框,false 表示不显示对话框readOnlytrue 表示以只读方式打开文件,false 表示不以只读方式打开文件commandString命令字符串,通常指定一个空字符串即可;不要指定 Nothing, Empty 或 vbNullString运行成功后如下图所示(在控件区域内鼠标右击还可以查看更多可操作选项): 如果您需要使用 AxEModelViewControl 控件的全功能(例如测量、截面、戳记功能等),请在设计页面选中控件,在右击菜单栏中打开【属性】对话框: 在打开的对话框中勾选启用【完整用户界面】功能: 再次运行程序,即可看到完整功能的用户界面呈现: |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |