Плавное перемещение одного объекта к другому - VB
Формулировка задачи:
Здравствуйте, есть у меня две точки, которые находятся на неком расстоянии друг от друга по диагонали. Кратчайшее расстояние нахожу по формуле:
Вопрос: как переместить одну точку к другой, но плавно по этой гипотенузе? Спасибо
Листинг программы
- Sqr((x2 - x1) ^ 2 + (y2 - y1) ^ 2)
Решение задачи: «Плавное перемещение одного объекта к другому»
textual
Листинг программы
- Option Explicit
- Dim X1 As Single, X2 As Single, Y1 As Single, Y2 As Single, X3 As Single, Y3 As Single
- Dim S As Single, dS As Single, rS As Single
- Dim sinA As Single, cosA As Single
- Private Sub Command1_Click()
- Timer1.Enabled = True
- End Sub
- Private Sub Form_Load()
- Timer1.Enabled = False
- Scale (-10, 10)-(10, -10)
- DrawWidth = 4
- X1 = 1: Y1 = 2
- X2 = 7: Y2 = 9
- S = Sqr((X2 - X1) ^ 2 + (Y2 - Y1) ^ 2)
- dS = S / 100
- sinA = (Y2 - Y1) / S
- cosA = (X2 - X1) / S
- End Sub
- Private Sub Timer1_Timer()
- If rS >= S Then Timer1.Enabled = False
- rS = rS + dS
- Y3 = sinA * rS + Y1
- X3 = cosA * rS + X1
- Cls
- PSet (X1, Y1)
- PSet (X2, Y2)
- PSet (X3, Y3)
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д