15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Рисуем циклоид

Компилятор: Visual Basic

Циклоид представлен следующими параметрическими функциями. t изменяется от 0 до 14 * Pi.
 
' Параметрическая функция X(t).
Private Function X(ByVal t As Single) As Single
    X = 2000 * (27 * Cos(t) + 15 * Cos(t * 20 / 7)) / 42
End Function

' Параметрическая функция Y(t).
Private Function Y(ByVal t As Single) As Single
    Y = 2000 * (27 * Sin(t) + 15 * Sin(t * 20 / 7)) / 42
End Function
 
Подпрограмма DrawCurve вызывается в обработчике события Paint.
 
' Рисуем курв на форме.
Private Sub DrawCurve(ByVal start_t As Single, ByVal stop_t _
    As Single, ByVal dt As Single)
Dim cx As Single
Dim cy As Single
Dim t As Single

    cx = ScaleLeft + ScaleWidth / 2
    cy = ScaleTop + ScaleHeight / 2

    Cls
    CurrentX = cx + X(start_t)
    CurrentY = cy + Y(start_t)

    t = start_t + dt
    Do While t < stop_t
        Line -(cx + X(t), cy + Y(t))
        t = t + dt
    Loop

    Line -(cx + X(stop_t), cy + Y(stop_t))
End Sub

 

Скачать исходник - 2 Кб