创建 Hatch 对象之后,可以添加图案填充边界。边界可以是直线、圆弧、圆、二维多段线、椭圆、样条曲线和面域的任意组合。
添加的第一个边界必须是外边界,即用于定义图案填充最外面的边界。要添加外部边界,请使用 AppendOuterLoop 方法。
定义外边界后,可以继续添加内边界。使用 AppendInnerLoop 方法来添加内部边界。
内边界定义图案填充内的孤岛。Hatch 对象处理这些孤岛的方式取决于 HatchStyle 特性的设置。HatchStyle 特性可以设置为以下状态:
定义完图案填充之后,必须先对其进行计算,然后才能显示。请使用 Evaluate 方法完成此任务。
本例在模型空间中创建关联的图案填充。创建图案填充后,可以修改与图案填充关联的圆的大小。图案填充将自动改变以匹配圆的当前大小。
Sub Ch4_CreateHatch()
Dim hatchObj As AcadHatch
Dim patternName As String
Dim PatternType As Long
Dim bAssociativity As Boolean
' 定义图案填充
patternName = "ANSI31"
PatternType = 0
bAssociativity = True
' 创建关联的 Hatch 对象
Set hatchObj = ThisDrawing.ModelSpace.AddHatch _
(PatternType, patternName, bAssociativity)
' 创建图案填充的外边界。(一个圆)
Dim outerLoop(0 To 0) As AcadEntity
Dim center(0 To 2) As Double
Dim radius As Double
center(0) = 3: center(1) = 3: center(2) = 0
radius = 1
Set outerLoop(0) = ThisDrawing.ModelSpace. _
AddCircle(center, radius)
' 向 Hatch 对象附加外边界,
' 并显示图案填充
hatchObj.AppendOuterLoop (outerLoop)
hatchObj.Evaluate
ThisDrawing.Regen True
End Sub