Вычисление положения точек относительно вектора направления, зная координаты точки и угол - VB
Формулировка задачи:
Здравствуйте! Разрабатываю игру, в игре есть точка с определенными координатами и направление точки( то есть куда смотрит ГГ (он и есть точка))
1) нужно найти заданное количество точек (их координаты), которые располагаются на прямой перпендекуляроной направлению "точки" и проходящей через эту точку. (при этом я задаю расстояние, на котором находится точка от ГГ)
2) нужно найти заданное количество точек (их координаты), которые располагаются на прямой перпендекуляроной направлению "точки" и находящиеся на расстоянии от точки .(при этом я задаю расстояние, на котором находится точка от ГГ)
Решение задачи: «Вычисление положения точек относительно вектора направления, зная координаты точки и угол»
textual
Листинг программы
- Option Explicit
- Private Const PI = 3.14159265358979
- Private Sub Form_Load()
- Scale (-1, 1)-(1, -1)
- AutoRedraw = True
- Line (-1, 0)-(1, 0)
- Line (0, -1)-(0, 1)
- End Sub
- Public Function Atan2(ByVal Y As Double, ByVal X As Double) As Double
- If Y > 0 Then
- If X >= Y Then
- Atan2 = Atn(Y / X)
- ElseIf X <= -Y Then
- Atan2 = Atn(Y / X) + PI
- Else
- Atan2 = PI / 2 - Atn(X / Y)
- End If
- Else
- If X >= -Y Then
- Atan2 = Atn(Y / X)
- ElseIf X <= Y Then
- Atan2 = Atn(Y / X) - PI
- Else
- Atan2 = -Atn(X / Y) - PI / 2
- End If
- End If
- End Function
- Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
- Me.Caption = Format(Atan2(Y, X) * (180 / PI), "0.00 degrees")
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д