乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 72|回复: 5

求助各位高手!

[复制链接]

3

主题

8

帖子

3

银币

初来乍到

Rank: 1

铜币
20
发表于 2004-5-13 13:18:00 | 显示全部楼层 |阅读模式
如何用vb打开CAD,然后对多条线进行标注?用高手会吗?谢谢先
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2004-5-13 13:39:00 | 显示全部楼层
  1. Private AcadApp As Object
  2. Private DocApp As Object
  3. Private ModelApp As Object
  4. Private Sub Class_Initialize()
  5. On Error Resume Next
  6. Set AcadApp = GetObject(, "AutoCAD.application")
  7. If Err Then
  8. Err.Clear
  9. Set AcadApp = CreateObject("AutoCAD.application")
  10. If Err Then
  11. MsgBox Err.Description
  12. Exit Sub
  13. End If
  14. End If
  15. AcadApp.Visible = True
  16. Set DocApp = AcadApp.activedocument
  17. Set ModelApp = DocApp.modelspace
  18. End Sub
  19. Public Sub 水平标注(ByVal 开始点 As 点类, ByVal 结束点 As 点类, ByVal 标注文字位置 As Double, Optional 标注内容 = " ")
  20. Dim cor(2) As Double
  21. Dim pnt(2) As Double
  22. Dim dot(2) As Double
  23. Dim obj As Object
  24. pnt(0) = 开始点.X_坐标
  25. pnt(1) = 开始点.Y_坐标
  26. dot(0) = 结束点.X_坐标
  27. dot(1) = 结束点.Y_坐标
  28. cor(0) = (开始点.X_坐标 + 结束点.X_坐标) / 2
  29. cor(1) = 标注文字位置
  30. Set obj = ModelApp.addDimrotated(pnt, dot, cor, 0)
  31. obj.layer = "标注线"
  32. If 标注内容  " " Then obj.TextString = 标注内容
  33. If 标注内容 = "NULL" Then obj.TextString = " "
  34. obj.Update
  35. End Sub
  36. Public Sub 垂直标注(ByVal 开始点 As 点类, ByVal 结束点 As 点类, ByVal 标注文字位置 As Double, Optional 标注内容 = " ")
  37. Dim obj As Object
  38. Dim pnt(2) As Double
  39. Dim dot(2) As Double
  40. Dim cor(2) As Double
  41. pnt(0) = 开始点.X_坐标
  42. pnt(1) = 开始点.Y_坐标
  43. pnt(2) = 0
  44. dot(0) = 结束点.X_坐标
  45. dot(1) = 结束点.Y_坐标
  46. dot(2) = 0
  47. cor(0) = 标注文字位置
  48. cor(1) = (开始点.Y_坐标 + 结束点.Y_坐标) / 2
  49. cor(2) = 0
  50. Set obj = ModelApp.addDimrotated(pnt, dot, cor, 1.57)
  51. obj.layer = "标注线"
  52. If 标注内容  " " Then obj.TextString = 标注内容
  53. If 标注内容 = "NULL" Then obj.TextString = " "
  54. obj.Update
  55. End Sub
几年前编的,R14下调用,现在看起来很搞笑
回复

使用道具 举报

3

主题

8

帖子

3

银币

初来乍到

Rank: 1

铜币
20
发表于 2004-5-13 14:12:00 | 显示全部楼层
谢谢,我这就是试一试。
回复

使用道具 举报

3

主题

8

帖子

3

银币

初来乍到

Rank: 1

铜币
20
发表于 2004-5-13 14:33:00 | 显示全部楼层
高手,上面我没说明白。我的想法是用鼠标同时选中多条线,然后回到vb界面中输入标注的内容,点击“确定”后,CAD中被选中的多条线的标注内容出现。
问题:1. 如何选中多条线?
                                                                                 2. 标注的样式和方向的确定?
        谢谢大侠了
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2004-5-13 14:45:00 | 显示全部楼层
1、用选择集做,具体用法可以搜索以前的帖子或看看帮助
2、Set obj = ModelApp.addDimrotated(pnt, dot, cor, 1.57)
cor是标注点的位置
obj .StyleName指定样式
回复

使用道具 举报

3

主题

8

帖子

3

银币

初来乍到

Rank: 1

铜币
20
发表于 2004-5-13 14:48:00 | 显示全部楼层
十分感谢
我是新手以后请多多指教。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-15 17:34 , Processed in 0.337729 second(s), 64 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表