- 积分
- 107
- 明经币
- 个
- 注册时间
- 2025-5-24
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
 - Sub CreateBlockFromLines()
- Dim acadDoc As AcadDocument
- Dim selSet As AcadSelectionSet
- Dim ent1 As AcadLine, ent2 As AcadLine
- Dim blockName As String
- Dim insertionPt(2) As Double
-
- ' 获取 AutoCAD 应用程序和文档
- Set acadApp = GetObject(, "AutoCAD.Application")
- Set acadDoc = acadApp.ActiveDocument
- Set AcadModelSpace = acadDoc.ModelSpace
-
- ' 定义第一条直线的起点和终点
- Dim startPoint1(0 To 2) As Double
- Dim endPoint1(0 To 2) As Double
- startPoint1(0) = 0: startPoint1(1) = 0: startPoint1(2) = 0
- endPoint1(0) = 100: endPoint1(1) = 65: endPoint1(2) = 0
-
- ' 定义第二条直线的起点和终点
- Dim startPoint2(0 To 2) As Double
- Dim endPoint2(0 To 2) As Double
- startPoint2(0) = 150: startPoint2(1) = -50: startPoint2(2) = 0
- endPoint2(0) = 100: endPoint2(1) = -100: endPoint2(2) = 0
-
- ' 创建第一条直线
- Set line1 = AcadModelSpace.AddLine(startPoint1, endPoint1)
- line1.Layer = "0"
- line1.color = 2 ' 黄色
-
- ' 创建第二条直线
- Set line2 = AcadModelSpace.AddLine(startPoint2, endPoint2)
- line2.Layer = "0"
- line2.color = 3 ' 绿色
-
-
-
- ' 设置块名和插入点(以第一条直线的起点为插入点)
- blockName = "blk-7"
- insertionPt(0) = 0
- insertionPt(1) = 0
- insertionPt(2) = 0 ' Z轴坐标
-
- ' 创建块定义
- Dim block As AcadBlock
- Set block = acadDoc.Blocks.Add(insertionPt, blockName)
-
- block.AppendEntity line1
- block.AppendEntity line2
-
- ' 刷新显示
- acadDoc.Regen acActiveViewport
-
- MsgBox "块""" & blockName & """创建成功!", vbInformation
- End Sub
block.AppendEntity line1
这行报错 .AppendEntity无法识别。什么原因? 谢谢 |
|