Тема: Солид через 2 точки

Доброго времени суток.
Есть 2 точки, через которые нужно провести 3дСолид, солид получается из региона методом выдавливания. Как мне развернуть регион перпендикулярно прямой проходящей через эти точки, чтобы можно было вдоль нее выдавить солид?
На VBA. Если можно по подробней.
И еще один вопрос если кто знает опишите пожалуйста метод transformBu, а конкретно матрицу преобразования. Спасибо

Re: Солид через 2 точки

> Михаил
Рисуй линию через эти 2 точки, выдавливай:

Option Explicit
Public Sub ExtrudeExample()
     Dim oLine As AcadLine
     Dim stPt As Variant
     Dim endPt As Variant
     Dim varPt As Variant
     Dim pathEnt As AcadEntity
     Dim extEnt As AcadEntity
     Dim regObj As Variant
     Dim RegEnt(0) As AcadEntity
     Dim origPt(2) As Double
     Dim dblProc As Double
     Dim vecNorm(2) As Double
     Dim oSolid As Acad3DSolid
     On Error GoTo Err_Control
     ThisDrawing.Utility.GetEntity extEnt, varPt, vbCr & "Выбрать объект для выдавливания"
     ThisDrawing.Utility.GetEntity pathEnt, varPt, vbCr & "Выбрать линию выдавливания"
     If TypeOf pathEnt Is AcadLine Then
          Set oLine = pathEnt
          stPt = oLine.StartPoint: endPt = oLine.EndPoint
          origPt(0) = endPt(0) - stPt(0): origPt(1) = endPt(1) - stPt(1): origPt(2) = endPt(2) - stPt(2)
          dblProc = Sqr(origPt(0) * origPt(0) + origPt(1) * origPt(1) + origPt(2) * origPt(2))
          vecNorm(0) = origPt(0) / dblProc: vecNorm(1) = origPt(1) / dblProc: vecNorm(2) = origPt(2) / dblProc
          extEnt.Normal = vecNorm
          Set RegEnt(0) = extEnt
          regObj = ThisDrawing.ModelSpace.AddRegion(RegEnt)
          Set oSolid = ThisDrawing.ModelSpace.AddExtrudedSolid(regObj(0), oLine.Length, 0)
     Else
          MsgBox "Объект не является линией" & vbCr & _
                 "Завершение программы"
     End If
Err_Control:
     MsgBox Err.Description
End Sub

Потом можешь линию удалить или измени это
условие
в приведенном коде
~'J'~

Re: Солид через 2 точки

Доброго времени суток, в результате работы программ получается солид линия и регион!
Вапрос такой, как удалить регион с чертежа?

Re: Солид через 2 точки

Спасибо сам разобрался, нужно добавть

regObj(0).erase

Re: Солид через 2 точки

> Михаил
Опоздал :)
~'J'~