GetUCSMatrix Пример

Sub Example_GetUCSMatrix()
    ' Этот пример создает новый UCS и находит матрицу UCS для него.
    ' Затем создает круг, используя WCS координаты и преобразовывает круг для UCS.
    
    ' Определите новый UCS и включите значок UCS в начале координат.
    Dim ucsObj As AcadUCS
    Dim origin(0 To 2) As Double
    Dim xAxisPoint(0 To 2) As Double
    Dim yAxisPoint(0 To 2) As Double
    
    origin(0) = 2: origin(1) = 2: origin(2) = 0
    xAxisPoint(0) = 3: xAxisPoint(1) = 2: xAxisPoint(2) = 0
    yAxisPoint(0) = 2: yAxisPoint(1) = 3: yAxisPoint(2) = 0
    
    Set ucsObj = ThisDrawing.UserCoordinateSystems.Add(origin, xAxisPoint, yAxisPoint, "UCS1")
    ThisDrawing.ActiveUCS = ucsObj
    ThisDrawing.ActiveViewport.UCSIconOn = True
    ThisDrawing.ActiveViewport.UCSIconAtOrigin = True
    ThisDrawing.ActiveViewport = ThisDrawing.ActiveViewport
    
    ' Создайте круг, используя координаты WCS
    Dim circleObj As AcadCircle
    Dim center(0 To 2) As Double
    Dim radius As Double
    center(0) = 1: center(1) = 1: center(2) = 0
    radius = 0.5
    Set circleObj = ThisDrawing.ModelSpace.AddCircle(center, radius)
    ZoomAll
    
    ' Получите матрицу преобразования UCS
    Dim TransMatrix As Variant
    TransMatrix = ucsObj.GetUCSMatrix()
    
    ' Преобразуйте круг к координатам UCS
    MsgBox "Преобразуйте круг.", , "GetUCSMatrix Пример"
    circleObj.TransformBy (TransMatrix)
    circleObj.Update
    
    MsgBox "Круг преобразован.", , "GetUCSMatrix Пример"
        
End Sub
Сайт управляется системой uCoz