欢迎来到鑫辰信息科技(深圳)有限公司官网! 主要产品有solidworks正版软件,为用户提供solidworks软件购买,是solidworks代理商和经销商。
服务热线: 13713805312

新闻资讯

News
推荐产品 / Products
发布时间: 2018 - 06 - 28
SOLIDWORKS Electrical Professional 将 SOLIDWORKS Electrical 的电气原理图设计功能与 SOLIDWORKS Electrical 3D 的 3D 功能集成在一个便捷的软件包中。借助单线和多线原理图工具(包括由数千个符号和零件构成的集成库),可以快速规划嵌入式电气系统。设计团队可同时开展一个或多个项目,并通过实时双向更新让所有工作内容都保持最新状态。您可以将 SOLIDWORKS Electrical 原理图与 3D 模型进行集成,再将所有电气零件的 3D 版本都置于该模型中,进而使用电线/电缆/缆束创建路径和连接。所有 2D 和 3D 工作内容都实时同步,您还可以创建包括机械零件和电气零件在内的完全集成的材料明细表。
4SOLIDWORKS PremiumSOLIDWORKS® Premium 是一款全面的 3D 设计解决方案,它在 SOLIDWORKS Professional 的基础上增加了功能强大的仿真、运动和设计验证工具、高级线缆和管道布线功能、逆向工程功能等很多其他内容。用户可以使用我们丰富的仿真功能,根据真实运动和力来测试产品性能。 使用公差叠加分析工具确保可制造性并在设计过程的早期解决复杂的装配体问题。 利用 SOLIDWORKS 的扩展工具集,快速将印刷电路板数据并入 3D 模型,创建电线、管道和管筒的布局并整理文档。 您还可以在 SOLIDWORKS Premium 中处理 3D 扫描数据。 借助 SOLIDWORKS Premium 体验完整 3D 设计解决方案带来的所有好处。
发布时间: 2018 - 05 - 21
SOLIDWORKS® Premium 是一款全面的 3D 设计解决方案,它在 SOLIDWORKS Professional 的基础上增加了功能强大的仿真、运动和设计验证工具、高级线缆和管道布线功能、逆向工程功能等很多其他内容。用户可以使用我们丰富的仿真功能,根据真实运动和力来测试产品性能。 使用公差叠加分析工具确保可制造性并在设计过程的早期解决复杂的装配体问题。 利用 SOLIDWORKS 的扩展工具集,快速将印刷电路板数据并入 3D 模型,创建电线、管道和管筒的布局并整理文档。 您还可以在 SOLIDWORKS Premium 中处理 3D 扫描数据。 借助 SOLIDWORKS Premium 体验完整 3D 设计解决方案带来的所有好处。SOLIDWORKS Premium所包含的高级功能:★ 基于时间的运动分析★ 零件和装配体的线性静态分析★ 管道和管筒的布线★ 电力电缆和线束的布线★ 高级曲面平展★ 矩形和其他剖面的布线
发布时间: 2018 - 06 - 28
SOLIDWORKS Electrical 3D 可帮助您将 SOLIDWORKS Electrical 中的电气原理图设计与机器或其他产品的 3D 模型轻松集成在一起。(SOLIDWORKS Electrical 3D 要求安装 SOLIDWORKS CAD 软件。)设计人员可将所有电气零件的 3D 版本都置于自己的模型中,再于 3D 环境中布设电线/电缆/缆束,以便将所有电气设备连接在一起。这有助于对特定的位置和路径进行规划,并在制造产品之前准确确定电线/电缆/缆束的长度,从而确保按照一致的规格进行制造,以便减少废品并降低成本。2D 原理图与 3D 模型可进行双向实时同步,任何一方发生更改,另一方都会自动更新。
联系方式 深圳市龙岗区龙城街道天安数码城2栋B座404 0755-89233676

SOLIDWORKS强大功能—宏(二)

日期: 2022-05-10
浏览次数: 62

之前的文章介绍了如何通过SOLIDWORKS正版软件的VBA来开发一个简单的标准件生成器;后面我们会对这个标准件生成器进行进一步功能扩充,今天我们来研究另一个问题:SOLIDWORKS装配体零件遍历。

SOLIDWORKS装配体零件遍历在二次开发中会经常使用,比如:

1.创建装配体结构BOM,搜索结构的所有层级,并提取每个结构、零件的属性信息;

2.在装配体中查找出所有的标准件、特定的零部件;

3.当装配体提示零件中存在被压缩的特征时,通过遍历找出被压缩特征的零部件;

4.遍历整个结构,为每个零件进行随机上色;

5.批量检查零件属性的完整性;


那么在SOLIDWORKS VBA开发中,如何对装配体结构进行完整的遍历呢?以下是对装配体遍历的基本流程:

SOLIDWORKS强大功能—宏(二)

首先用户需要先获取当前装配体结构的子组件,然后通过for循环遍历该结构的所有子组件,并且判断每个子组件是属于零件还是装配体,如果是装配体,则需要对该装配体进行子组件获取,然后检查该装配体的下属层级…如此往复;

但因为我们无法预先知道任何一个装配体结构存在多少个层级,所以也无法判断需要执行多少次for循环,所以我们在这里使用了递归的方式来处理该问题。

以下是装配体遍历的基本代码:
SOLIDWORKS强大功能—宏(二)

在main主函数中,我们通过 Set swmodel = swApp.ActiveDoc 获取到当前正在被SOLDWORKS打开且处于当前显示界面的装配体,通过 swmodelComps = swAsm.GetComponents(True) 或者这个装配体的所有子组件,放到swmodelComps 这个数组中;

接下来调用GetAsmChild这个函数,并且将swmodelComps数组作为变量传递到函数中;

在GetAsmChild函数中,通过:

For i = 0 To UBound(swmodelComps)

Next


语句对获取到的子组件数组进行遍历,该遍历只会搜索结构的一个层级,为了让遍历可以搜索结构的所有层级,所以有如下的条件判断代码:

If swmodel.GetType = 1 Then

MsgBox (swmodel.GetTitle)

ElseIf swmodel.GetType = 2 Then

swAsm = swmodel

GetAsmChild (swAsm.GetComponents(True))

End If

其中swmodel.GetType = 1 表示该获取到的一个层级中的其中一条子组件属于零件;

其中MsgBox (swmodel.GetTitle) 表示将该零件的名称进行显示;

重点在对子组件属于装配体的处理,在swmodel.GetType = 2 的条件(子组件属于装配体)中,我们做了如下操作:

GetAsmChild (swAsm.GetComponents(True))


可以看到这是一个函数调用,调用了什么函数呢?调用了GetAsmChild,这实际上是调用了它自身,这种调用函数自身的情况就叫做递归;可以看到,虽然函数相同,但是前后两个GetAsmChild的变量却不同,第一次的GetAsmChild作为入口,传递的是我们打开的装配体文件的信息,第二次到第N次,传递的则是每一个子组件(子装配体)的信息,这样层层嵌套,最终实现装配体结构的整体的遍历。


以上是本次SOLIDWORKS VBA装配体结构遍历的一些分享,希望能够帮助大家,更多信息请访问鑫辰信息科技有限公司

相关新闻: / 相关新闻: More
2021 - 12 - 30
解读SOLIDWORKS  SOLIDWORKS最新活动 客户案例  SOLIDWORKS实践与解析
2021 - 11 - 29
解读SOLIDWORKS  SOLIDWORKS最新活动 客户案例  SOLIDWORKS实践与解析
2021 - 11 - 08
解读SOLIDWORKS  SOLIDWORKS最新活动 客户案例  SOLIDWORKS实践与解析
2021 - 10 - 09
解读SOLIDWORKS  SOLIDWORKS最新活动 客户案例  SOLIDWORKS实践与解析
官方微信
Copyright ©2018 - 2021 鑫辰科技     联系电话:0755-89233676  传真:0755-28260016-2011
犀牛云提供云计算服务