Регулировать скорость превращения окружности в квадрат - VB
Формулировка задачи:
сделала анимацию - превращение окружности в квадрат. Не получается плавно синхронизировать линии и дуги. Дуги очень быстро мигают,либо получается так - что быстро мигает все. помогите пожалуйста
Решение задачи: «Регулировать скорость превращения окружности в квадрат»
textual
Листинг программы
Option Explicit Const pi As Single = 3.14159265359 Dim r As Single, d As Single, z As Single Dim P As PictureBox Private Sub Draw() P.Cls P.Circle (z, -z), r - z, , 3 * pi / 2, 2 * pi 'правая нижняя дуга P.Circle (z, z), r - z, , 2 * pi, pi / 2 'правая верхняя дуга P.Circle (-z, z), r - z, , pi / 2, pi 'левая вехняя дуга P.Circle (-z, -z), r - z, , pi, 3 * pi / 2 'левая нижняя дуга P.Line (-z, r)-(z, r) 'верхняя сторона квадрата P.Line (-r, z)-(-r, -z) 'левая сторона квадрата P.Line (r, z)-(r, -z) 'правая сторона квадрата P.Line (-z, -r)-(z, -r) 'нижняя сторона квадрата End Sub Private Sub Form_Load() Set P = Picture1: P.Scale (-15, 15)-(15, -15) P.DrawWidth = 5: P.AutoRedraw = True: P.ForeColor = vbRed d = 0.01 'скорость "анимации" r = 12 'радиус окружности z = r - d 'начальный размер Me.Show: DoLoop End Sub Private Sub DoLoop() Do z = z + d: If z >= r Or z < 0 Then d = -d Draw DoEvents Loop End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) End End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д