SolidWorks机械工程师网——最大的SolidWorks学习平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3622|回复: 11
打印 上一主题 下一主题

版大的自动结合宏 (转来收藏的)

  [复制链接]

78

主题

278

帖子

170

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
469
QQ
跳转到指定楼层
楼主
发表于 2013-6-10 09:22:45 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

   经典图书
大侠的自动结合 (转来收藏的) 论坛好像没有
Macros.zip (23.97 KB, 下载次数: 75)
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏3 转播转播 分享教程|习题|模型|技巧 点赞点赞12750 拍砖拍砖368
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复

使用道具 举报

13

主题

247

帖子

39

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
301
QQ
沙发
发表于 2013-6-10 09:24:31 | 只看该作者
SW总会碰到许多稀奇古怪的问题,还好有这么多热心人
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 反对

使用道具 举报

6

主题

228

帖子

16

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
257
QQ
板凳
发表于 2013-6-10 09:33:23 | 只看该作者

   经典图书
感謝工程师製作,也感謝樓主分享
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

675

帖子

972

金币

传奇

Rank: 8Rank: 8

积分
6125

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

地板
发表于 2017-8-12 11:35:29 | 只看该作者
附件损坏打不开
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

22

帖子

2

金币

天使

Rank: 2Rank: 2

积分
85

最佳新人活跃会员宣传达人

5#
发表于 2017-8-29 21:08:29 | 只看该作者

   经典案例图书

加入QQ群
参与讨论和学习
SolidWorks技术交流群
或扫描二维码加入
SW总会碰到许多稀奇古怪的问题,还好有这么多热心人
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

1

主题

319

帖子

443

金币

长老

Rank: 6Rank: 6Rank: 6

积分
2676

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

6#
发表于 2018-4-29 17:06:55 | 只看该作者
楼主辛苦了!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

8457

帖子

4641

金币

传奇

Rank: 8Rank: 8

积分
24856

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

7#
发表于 2018-5-21 21:16:04 | 只看该作者

   经典案例图书
SW机械工程师论坛,找到组织了!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

8

主题

678

帖子

985

金币

实习版主

Rank: 7Rank: 7Rank: 7Rank: 7

积分
6222

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

8#
发表于 2018-12-11 08:16:07 | 只看该作者
好好学习,天天向上!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

97

主题

332

帖子

3142

金币

传奇

Rank: 8Rank: 8

积分
8136

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

9#
发表于 2018-12-12 11:14:31 | 只看该作者
1. 如附圖A,1#附檔無法解壓縮.

2. 附可解壓縮原文件之內容及注解(參考).


圖A




  1. Dim swApp As Object
  2. Dim Part As Object
  3. Dim boolstatus As Boolean
  4. Dim longstatus As Long, longwarnings As Long
  5. Dim FeatureData As Object
  6. Dim Feature As Object
  7. Dim Component As Object
  8. Sub main()

  9. Set swApp = Application.SldWorks

  10. Set Part = swApp.ActiveDoc
  11. '~~~ GetType ~~~
  12. '~~~ swDocNONE = 0(Used to be TYPE_NONE)
  13. '~~~ swDocPART = 1 (Used to be TYPE_PART)
  14. '~~~ swDocASSEMBLY = 2 (Used to be TYPE_ASSEMBLY)
  15. '~~~  swDocDRAWING = 3
  16. If Part.GetType <> 2 Then End '判定不是組件就結束

  17. '~~ 沒有選取事件就判定為"Nothing"
  18. Set SelMgr = Part.SelectionManager
  19. Set c1 = SelMgr.GetSelectedObjectsComponent(1) '
  20. Set c2 = SelMgr.GetSelectedObjectsComponent(2)

  21. If c1 Is Nothing Then '判定沒有選取事件就結束
  22.     MsgBox "Wrong select"
  23.     End
  24. End If
  25. '~~~ 循環特徵取得"參考平面" ~~~
  26. Set cm1 = c1.GetModelDoc
  27. Set FeatObj = cm1.FirstFeature
  28. FeatObjname = FeatObj.GetTypeName
  29. While FeatObjname <> "RefPlane"
  30.     Set FeatObj = FeatObj.GetNextFeature
  31.     FeatObjname = FeatObj.GetTypeName
  32. Wend
  33. Stop
  34. c1xy = FeatObj.Name '取得首選零件"前基準面"
  35. Set FeatObj = FeatObj.GetNextFeature
  36. c1xz = FeatObj.Name '取得首選零件"上基準面"
  37. Set FeatObj = FeatObj.GetNextFeature
  38. c1yz = FeatObj.Name '取得首選零件"右基準面"

  39. '======== 取得組件基準面 ========
  40. If c2 Is Nothing Then
  41.     Set c2 = Part
  42.     Set cm2 = Part
  43.     Set FeatObj = cm2.FirstFeature
  44.     FeatObjname = FeatObj.GetTypeName
  45.     While FeatObjname <> "RefPlane"
  46.         Set FeatObj = FeatObj.GetNextFeature
  47.         FeatObjname = FeatObj.GetTypeName
  48.     Wend
  49.     c2xy = FeatObj.Name
  50.     Set FeatObj = FeatObj.GetNextFeature
  51.     c2xz = FeatObj.Name
  52.     Set FeatObj = FeatObj.GetNextFeature
  53.     c2yz = FeatObj.Name
  54. Else
  55.         If c1.Name2 = c2.Name2 Then '判定兩個選取事件是否同一零件
  56.             MsgBox "Same Component"
  57.             End
  58.         End If
  59. '======== 取得第二零件基準面 ========
  60.     Set cm2 = c2.GetModelDoc
  61.     Set FeatObj = cm2.FirstFeature
  62.     FeatObjname = FeatObj.GetTypeName
  63.     While FeatObjname <> "RefPlane"
  64.         Set FeatObj = FeatObj.GetNextFeature
  65.         FeatObjname = FeatObj.GetTypeName
  66.     Wend
  67.     c2xy = FeatObj.Name
  68.     Set FeatObj = FeatObj.GetNextFeature
  69.     c2xz = FeatObj.Name
  70.     Set FeatObj = FeatObj.GetNextFeature
  71.     c2yz = FeatObj.Name
  72. End If

  73. '~~~~~ 結合基準面 ~~~~~
  74. Set p1xy = c1.FeatureByName(c1xy)
  75. Set p1xz = c1.FeatureByName(c1xz)
  76. Set p1yz = c1.FeatureByName(c1yz)
  77. Set p2xy = c2.FeatureByName(c2xy)
  78. Set p2xz = c2.FeatureByName(c2xz)
  79. Set p2yz = c2.FeatureByName(c2yz)

  80. p1xy.Select2 False, 0
  81. p2xy.Select2 True, 0
  82. Set M1 = Part.AddMate2(0, 0, False, 0, 0, 0, 1, 1, 0, 0, 0, longstatus)

  83. p1xz.Select2 False, 0
  84. p2xz.Select2 True, 0
  85. Set M2 = Part.AddMate2(0, 0, False, 0, 0, 0, 1, 1, 0, 0, 0, longstatus)

  86. p1yz.Select2 False, 0
  87. p2yz.Select2 True, 0
  88. Set M3 = Part.AddMate2(0, 0, False, 0, 0, 0, 1, 1, 0, 0, 0, longstatus)

  89. 'Part.ClearSelection2 True
  90. Part.EditRebuild
  91. End Sub
复制代码

SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

93

帖子

24

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
378

最佳新人活跃会员热心会员宣传达人

10#
发表于 2020-11-26 10:34:54 | 只看该作者

   经典图书
学习一下``````
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

2

主题

69

帖子

101

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
349

最佳新人活跃会员热心会员宣传达人

11#
发表于 4 天前 | 只看该作者
下载了无法解压缩,提示损坏
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

238

帖子

166

金币

堂主

Rank: 4

积分
960

最佳新人活跃会员热心会员宣传达人灌水之王

12#
发表于 前天 13:50 | 只看该作者
SolidWorks机械工程师网,顶一下。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

SOLIDWORKS 2023 机械设计从入门到精通

手机版|小黑屋| GMT+8, 2025-5-23 19:42 , Processed in 0.282930 second(s), 25 queries , Memcache On.

SolidWorks机械工程师网 ( 鲁ICP备14025122号-2 ) 鲁公网安备 37028502190335号

声明:本网言论纯属发表者个人意见,与本网立场无关。
如涉版权,可发邮件: admin@swbbsc.com

快速回复 返回顶部 返回列表