|
Boolean Пример |
Sub Example_Boolean()
' Этот пример создает поле и цилиндр в пространстве модели.
' Затем исполняет операцию Boolean на этих двух телах.
Dim boxObj As Acad3DSolid
Dim boxLength As Double, boxWidth As Double, boxHeight As Double
Dim boxCenter(0 To 2) As Double
boxCenter(0) = 5#: boxCenter(1) = 5#: boxCenter(2) = 0
boxLength = 10#: boxWidth = 7: boxHeight = 10#
' Создайте объект поля (3DSolid) в пространстве модели
Set boxObj = ThisDrawing.ModelSpace.AddBox(boxCenter, boxLength, boxWidth, boxHeight)
' Определите цилиндр
Dim cylinderObj As Acad3DSolid
Dim cylinderCenter(0 To 2) As Double
Dim cylinderRadius As Double
Dim cylinderHeight As Double
cylinderCenter(0) = 0#: cylinderCenter(1) = 0#: cylinderCenter(2) = 0#
cylinderRadius = 5#
cylinderHeight = 20#
' Создайте Цилиндр (3DSolid) объект в пространстве модели
Set cylinderObj = ThisDrawing.ModelSpace.AddCylinder(cylinderCenter, cylinderRadius, cylinderHeight)
' Измените направление рассмотрения области просмотра
Dim NewDirection(0 To 2) As Double
NewDirection(0) = -1: NewDirection(1) = -1: NewDirection(2) = 1
ThisDrawing.ActiveViewport.direction = NewDirection
ThisDrawing.ActiveViewport = ThisDrawing.ActiveViewport
ZoomAll
' Исполните пересечение на этих двух телах
MsgBox "Исполните пересечение на этих двух телах.", vbOKOnly, "Boolean Пример"
boxObj.Boolean acIntersection, cylinderObj
ThisDrawing.Regen True
MsgBox "Законченное пересечение.", , "Boolean Пример"
End Sub