Компилятор: 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