Что нового

Передвинуть точку на форме , на 7 градусов

winbotx

Новичок
Сообщения
29
Репутация
0
Уже создавал подобную тему и закрыл её преждевременно , по ошибке , думал что всё получилось ...
Прошу прощения за это.
Постараюсь как можно подробней описать мою задумку.

Вообщем задача ...
Размеры формы :
200 x 200
Есть точка , к примеру она равна :
$Xcoord = 100
$Ycoord = 50

Я делаю радар для игры , координаты этой точки всё время меняются , в зависимости от моего положения и положения игроков.
Получаю я эту точку , с помощью таких действий :
$Xcoord = $MyX - $PlayerX
$Ycoord = $MyY - $PlayerY
Получается разница между мной и игроком , эту разницу я добавляю к центру формы по X'у и по Y'у, и получаю положения всех игроков вокруг меня , где я - центр.
И вот осталось лишь чуть-чуть : узнать куда смотрю я и повернуть все точки на радаре в зависимости от этого.
В игре я могу смотреть от -180 до 180.
Если я смотрю на 0 , то по логике все игроки на радаре расположены правильно , если же я поворачиваю прицел к примеру вправо , то все точки должны передвинуть влево , в зависимости от того на сколько я повернул прицел в игре.
Чтение памяти на какой градус в данный момент смотрит мой персонаж я сделал.

К примеру на радаре есть 1 игрок и я смотрю на 7 градусов вправо ,нужно передвинуть точку игрока на 7 градусов влево.
Как это сделать?
 
Автор
W

winbotx

Новичок
Сообщения
29
Репутация
0
Я тоже так думал , но нет.
Почему?
Потому что точка у меня X и Y , а как же её поставить на круге?
Там начальная точка указана градусами , а мне нужно чтобы точка была указана X и Y ...
Вообщем есть точка на X и Y , её нужно повернуть на 7 градусов к примеру ...
 

scanfail

Знающий
Сообщения
244
Репутация
17
OffTopic:
Буду с интересом наблюдать за темой, ибо сам вот уже пару дней мечтаю сделать радар на автоайти.
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Надо было алгебру не прогуливать на 1-ом курсе!
 
Автор
W

winbotx

Новичок
Сообщения
29
Репутация
0
Блин)
Мне бы лучше код , чем с формулами возиться ...
Не думал что точку с X и Y координатами так сложно повернуть на 7 градусов вправо :D
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Чё тут сложного??? Ну ты вообще!...
На, читай
Код:
$degToRad = 3.14159265358979 / 180
$x = 100
$y = 50
$ugol = 7
$x1 = $x * Cos($ugol*$degToRad) + $y * Sin($ugol*$degToRad)
$y1 = $y * Cos($ugol*$degToRad) - $x * Sin($ugol*$degToRad)
 
Автор
W

winbotx

Новичок
Сообщения
29
Репутация
0
УРАААААААААА
кажется получилось :laugh:
3 дня мучился !
Фууууух
:D
 
Верх