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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5375|回复: 21
打印 上一主题 下一主题

粗糙度自动右上角标注,但当运行时偶尔会出现粗糙度带引线,不知道怎么解决

  [复制链接]

4

主题

91

帖子

390

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1617

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

跳转到指定楼层
楼主
 楼主| 发表于 2024-6-23 22:55:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

   经典图书
识别图纸,通过按钮粗糙度在图纸右上角自动标注。但当第一次运行时会出现粗糙度带引线的情况,删除该粗糙度后,再次运行就不会出现。不知道问题出现在哪,求帮助。

2024-06-23_224404.jpg

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

使用道具 举报

0

主题

200

帖子

1730

金币

传奇

Rank: 8Rank: 8

积分
5862

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

推荐
发表于 2024-9-4 09:03:28 | 只看该作者
在插入粗糙度符号之前加一句“Part.ForceRebuild3 False”就可以
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 1 反对 0

使用道具 举报

18

主题

54

帖子

204

金币

堂主

Rank: 4

积分
828

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

推荐
发表于 2024-6-27 13:45:41 | 只看该作者

   经典图书

已经改好!

粗糙度.rar

(7.23 KB, 下载次数: 154 售价: 5 金币

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

使用道具 举报

3

主题

1403

帖子

490

金币

传奇

Rank: 8Rank: 8

积分
5375

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

推荐
发表于 2024-6-24 08:25:33 | 只看该作者
楼主最好把宏发出来看来代码才知道
SolidWorks机械工程师网
回复 支持 1 反对 0

使用道具 举报

41

主题

2309

帖子

2974

金币

传奇

Rank: 8Rank: 8

积分
8944

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

5#
发表于 2024-6-24 08:32:09 | 只看该作者

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

使用道具 举报

4

主题

91

帖子

390

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1617

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

6#
 楼主| 发表于 2024-6-24 08:48:46 | 只看该作者
沉默的人 发表于 2024-6-24 08:25
楼主最好把宏发出来看来代码才知道

Private Sub CommandButton30_Click()
'粗糙度其余6.3
Dim swApp As SldWorks.SldWorks
Dim swmodel As SldWorks.ModelDoc2
Dim swdraw As SldWorks.DrawingDoc
Dim mySFSymbol As Object
  
Set swApp = Application.SldWorks
Set swmodel = swApp.ActiveDoc

Set Part = swApp.ActiveDoc
Set swdraw = swApp.ActiveDoc
Set swSheet = swdraw.GetCurrentSheet

Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized

vSheetProps = swSheet.GetProperties
TemplateName = swSheet.GetTemplateName
ppapersize = vSheetProps(0)  

If ppapersize = 6 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.275, 0.195, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 7 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.189, 0.281, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 8 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.398, 0.281, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 9 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.567, 0.399, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
End If
Part.ViewZoomtofit2
End Sub
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

91

帖子

390

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1617

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

7#
 楼主| 发表于 2024-6-24 08:50:28 | 只看该作者

   经典案例图书
沉默的人 发表于 2024-6-24 08:25
楼主最好把宏发出来看来代码才知道

Private Sub CommandButton30_Click()
'粗糙度其余6.3
Dim swApp As SldWorks.SldWorks
Dim swmodel As SldWorks.ModelDoc2
Dim swdraw As SldWorks.DrawingDoc
Dim mySFSymbol As Object
  
Set swApp = Application.SldWorks
Set swmodel = swApp.ActiveDoc

Set Part = swApp.ActiveDoc
Set swdraw = swApp.ActiveDoc
Set swSheet = swdraw.GetCurrentSheet

Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized

vSheetProps = swSheet.GetProperties
TemplateName = swSheet.GetTemplateName
ppapersize = vSheetProps(0)  

If ppapersize = 6 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.275, 0.195, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 7 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.189, 0.281, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 8 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.398, 0.281, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 9 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.567, 0.399, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
End If
Part.ViewZoomtofit2
End Sub
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

91

帖子

390

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1617

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

8#
 楼主| 发表于 2024-6-24 08:52:41 | 只看该作者
宏代码如下:
Private Sub CommandButton30_Click()
'粗糙度其余6.3
Dim swApp As SldWorks.SldWorks
Dim swmodel As SldWorks.ModelDoc2
Dim swdraw As SldWorks.DrawingDoc
Dim mySFSymbol As Object
  
Set swApp = Application.SldWorks
Set swmodel = swApp.ActiveDoc

Set Part = swApp.ActiveDoc
Set swdraw = swApp.ActiveDoc
Set swSheet = swdraw.GetCurrentSheet

Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized

vSheetProps = swSheet.GetProperties
TemplateName = swSheet.GetTemplateName
ppapersize = vSheetProps(0)  

If ppapersize = 6 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.275, 0.195, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 7 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.189, 0.281, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 8 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.398, 0.281, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 9 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.567, 0.399, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
End If
Part.ViewZoomtofit2
End Sub

第一次运行宏的时候会出现粗糙度有引线。删除后粗糙度,再次运行就不会出现。而且只要不关闭当前宏在新建工程图中也不会出现粗糙度带引线。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

91

帖子

390

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1617

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

9#
 楼主| 发表于 2024-6-24 13:58:00 | 只看该作者
代码如下:
Private Sub CommandButton30_Click()
'粗糙度其余6.3
Dim swApp As SldWorks.SldWorks
Dim swmodel As SldWorks.ModelDoc2
Dim swdraw As SldWorks.DrawingDoc
Dim mySFSymbol As Object
Set swApp = Application.SldWorks
Set swmodel = swApp.ActiveDoc
Set Part = swApp.ActiveDoc
Set swdraw = swApp.ActiveDoc
Set swSheet = swdraw.GetCurrentSheet
Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
vSheetProps = swSheet.GetProperties
TemplateName = swSheet.GetTemplateName
ppapersize = vSheetProps(0)
If ppapersize = 6 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.275, 0.195, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 7 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.189, 0.281, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 8 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.398, 0.281, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 9 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.567, 0.399, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
End If
Part.ViewZoomtofit2
End Sub
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

24

帖子

31

金币

天使

Rank: 2Rank: 2

积分
92
QQ
10#
发表于 2024-6-26 18:48:52 | 只看该作者

   经典图书
很不错,顶一下!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

18

主题

54

帖子

204

金币

堂主

Rank: 4

积分
828

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

11#
发表于 2024-6-27 10:44:12 | 只看该作者
原因是你点了图纸,不点击图纸不会出现引线~~
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

18

主题

54

帖子

204

金币

堂主

Rank: 4

积分
828

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

12#
发表于 2024-6-27 13:43:36 | 只看该作者
Sub main()
'粗糙度其余6.3
Dim swApp As SldWorks.SldWorks
Dim swmodel As SldWorks.ModelDoc2
Dim swdraw As SldWorks.DrawingDoc
Dim mySFSymbol As Object
Set swApp = Application.SldWorks
Set swmodel = swApp.ActiveDoc
Set Part = swApp.ActiveDoc
Set swdraw = swApp.ActiveDoc
Set swSheet = swdraw.GetCurrentSheet
Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
vSheetProps = swSheet.GetProperties
TemplateName = swSheet.GetTemplateName
ppapersize = vSheetProps(0)
If ppapersize = 6 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 0, 0.275, 0.195, 0, 0, 10, "其余", "", "", "", "", "6.3", "")
    ElseIf ppapersize = 7 Then
        Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 0, 0.189, 0.281, 0, 0, 10, "其余", "", "", "", "", "6.3", "")
   ' ElseIf ppapersize = 8 Then
        'Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.398, 0.281, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
   ' ElseIf ppapersize = 9 Then
        'Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.567, 0.399, 0, 0, 1, "其余", "", "", "", "", "6.3", "")
End If
Part.ViewZoomtofit2
End Sub
这样就可以
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

91

帖子

390

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1617

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

13#
 楼主| 发表于 2024-7-7 23:17:13 | 只看该作者

你是把这个指令中由
Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 0, 0.275, 0.195, 0, 0, 10, "其余", "", "", "", "", "6.3", "")
改成
Set mySFSymbol = Part.Extension.InsertSurfaceFinishSymbol3(1, 1, 0.275, 0.195, 0, 0, 10, "其余", "", "", "", "", "6.3", "")

结果是鼠标点一次,在运行宏就会出现在上次鼠标点击的位置。
我是想让粗糙度识别图框大小后,运行宏,粗糙度在图框右上角固定位置显示。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

20

主题

1355

帖子

170

金币

传奇

Rank: 8Rank: 8

积分
6765

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

14#
发表于 2024-9-4 17:13:15 | 只看该作者
楼主很专业,写得很好!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

91

帖子

390

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1617

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

15#
 楼主| 发表于 2024-9-4 21:10:59 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

qxzch 发表于 2024-9-4 09:03
在插入粗糙度符号之前加一句“Part.ForceRebuild3 False”就可以

大神就是牛
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

9

主题

351

帖子

551

金币

传奇

Rank: 8Rank: 8

积分
3179

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

16#
发表于 2024-9-9 10:47:04 | 只看该作者

   经典案例图书
请问一下楼主,修改粗糙度样式在哪边修改呢,感谢
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

20

主题

1355

帖子

170

金币

传奇

Rank: 8Rank: 8

积分
6765

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

17#
发表于 2024-9-9 16:08:56 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

活到老学到老!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

7

主题

170

帖子

45

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1132

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

18#
发表于 2024-10-12 10:01:49 | 只看该作者

   经典案例图书
楼主可以分享一下这个工具吗,谢谢
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

614

帖子

441

金币

传奇

Rank: 8Rank: 8

积分
3673

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

19#
发表于 2024-11-20 10:55:40 | 只看该作者
楼主可以分享一下这个工具吗,谢谢
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

312

帖子

26

金币

堂主

Rank: 4

积分
773

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

20#
发表于 2024-12-3 14:30:54 | 只看该作者
很好!活到老学到老!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

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

本版积分规则

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

手机版|小黑屋| GMT+8, 2025-5-25 10:11 , Processed in 0.277300 second(s), 27 queries , Memcache On.

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

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

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