|
AssociativeHatch Пример |
Sub Example_AssociativeHatch()
' Этот пример создает штриховку в пространстве модели.
' Затем сообщает, ассоциативна ли штриховка.
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 1) As AcadEntity
Dim center(0 To 2) As Double
Dim radius As Double
Dim startAngle As Double
Dim endAngle As Double
center(0) = 5: center(1) = 3: center(2) = 0
radius = 3
startAngle = 0
endAngle = 3.141592
Set outerLoop(0) = ThisDrawing.ModelSpace.AddArc(center, radius, startAngle, endAngle)
Set outerLoop(1) = ThisDrawing.ModelSpace.AddLine(outerLoop(0).startPoint, outerLoop(0).endPoint)
' Добавьте в конец внешний контур к объекту штриховки
hatchObj.AppendOuterLoop (outerLoop)
' Оцените, и покажите штриховку
hatchObj.Evaluate
ThisDrawing.Regen True
' Возвращение, ассоциативна ли штриховка.
Dim hatchAssoc As Boolean
hatchAssoc = hatchObj.AssociativeHatch
MsgBox "HatchStyle " & IIf(hatchObj.AssociativeHatch, "ассоциативный.", "не ассоциативный."), , "AssociativeHatch Пример"
End Sub