FitPoints Пример

Sub Example_FitPoints()
   ' Этот пример создает объект Spline в пространстве модели, читает
   ' пригодные точки Spline и затем изменяет пригодные точки Spline.

    Dim splineObj As AcadSpline
    Dim startTan(0 To 2) As Double, endTan(0 To 2) As Double
    Dim FPoints(0 To 8) As Double
    Dim UserMessage As String
    Dim fitPoints As Variant
    Dim iCount As Long, iPoint As Integer
    Dim NewFP(0 To 2) As Double
    
    ' Определите объект Spline
    startTan(0) = 0.5: startTan(1) = 0.5: startTan(2) = 0
    endTan(0) = 0.5: endTan(1) = 0.5: endTan(2) = 0
    FPoints(0) = 0: FPoints(1) = 0: FPoints(2) = 0
    FPoints(3) = 5:   FPoints(4) = 5: FPoints(5) = 0
    FPoints(6) = 10: FPoints(7) = 0: FPoints(8) = 0
    
    ' Создайте новый объект Spline
    Set splineObj = ThisDrawing.ModelSpace.AddSpline(FPoints, startTan, endTan)
    ThisDrawing.Application.ZoomAll
    
    ' Отображение соответствует точкам для этого Spline
    GoSub DISPLAYPOINTS
    
    ' Измените существующую пригодную точку для этого Spline
    fitPoints(0) = 3
    splineObj.fitPoints = fitPoints
    
    ' Теперь добавьте новую пригодную точку
    NewFP(0) = 15: NewFP(1) = 4: NewFP(2) = 0
    splineObj.AddFitPoint splineObj.NumberOfFitPoints + 1, NewFP
        
    ThisDrawing.Application.ZoomAll
            
    ' Покажите новые пригодные точки для этого Spline
    GoSub DISPLAYPOINTS
        
    Exit Sub
    
DISPLAYPOINTS:
    fitPoints = splineObj.fitPoints
    
    ' Отображение трёх в группах
    UserMessage = ""
    iPoint = 0
    For iCount = 0 To UBound(fitPoints) Step 3
        iPoint = iPoint + 1
        UserMessage = UserMessage & iPoint & ")" & vbTab
        UserMessage = UserMessage & fitPoints(iCount)
        UserMessage = UserMessage & ", " & fitPoints(iCount + 1)
        UserMessage = UserMessage & ", " & fitPoints(iCount + 2)
        UserMessage = UserMessage & vbCrLf
    Next
    
    MsgBox splineObj.NumberOfFitPoints & " точки посадки Spline: " & vbCrLf & vbCrLf & UserMessage
    
    Return
End Sub
Сайт управляется системой uCoz