Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
11 / 11 / 5
Регистрация: 02.02.2011
Сообщений: 211

Полет пули.

01.06.2011, 23:15. Показов 3318. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пуля должна по прямой лететь в точку назначения. Сначала я вот как делал.
x, y -координаты пули.
tx, ty - назначение пули.
speed расстояние, которое пролетает пуля за один проход цикла.
C++
1
2
3
4
5
6
7
8
9
while(...)
{
...
      if(x > tx)   x -= speed;
      else if(x < tx)   x += speed;
 
      if(y > ty)   y -= speed;
      else if(y < ty)   y += speed;
}
Но при таком коде пуля летит не прямо к своему назначению, а сначала наискосок, потом достигает края и тогда просто прямо..
HTML5
1
2
3
4
\
 \              Вот так летит пуля.
  \
   \______________*
Вот как я решил это исправить:
Точна B(x,y) лежит на прямой AC. Точки A(x1,y1), B(x2,y2).
Пуля находится в точке A(x1,y1), а точка, куда она, летит B(x2,y2).
Есть цикл. За один проход должен поместить точку A(x1,y1) в точку B(x, y) (расстояние между A и B это та speed, о которой я говорил раньше).
То есть A это там где сейчас находится пуля, а B это куда она должна прилететь за один проход цикла.

Но я никак не могу вывести формулу, чтобы узнать координаты точки B.
1. Возможно, есть другой способ решения этой проблемы?
2. Или может кто-то поможет решить мой способ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.06.2011, 23:15
Ответы с готовыми решениями:

Создание следа "трассирующие пули"
Снова всем здравствуйте. Подскажите как можно сделать след от пули типа трассера? Я пробовал делать анимированной текстурой, но не то...

Полёт пули в игре html5+JS
Друзья всем привет! Мне нужна ваша помощь. У меня игра на HTML5 + JS на полотне canvas. На этом полотне есть объект, который стреляет...

Полет снаряда
Здравствуйте, нужна помощь по написанию программы в среде Делфи. Тема: Расчет траектории полета снаряда выпущенного пушкой, с указанием...

3
11 / 11 / 5
Регистрация: 02.02.2011
Сообщений: 211
03.06.2011, 14:58  [ТС]
Может кто-то другой алгоритм знает?
А то делаю игрушку и пули криво летают...
0
1080 / 1007 / 107
Регистрация: 28.02.2010
Сообщений: 2,889
04.06.2011, 06:22
Дано:
https://www.cyberforum.ru/cgi-bin/latex.cgi?(x_0; y_0) - откуда стреляли
https://www.cyberforum.ru/cgi-bin/latex.cgi?(x_1; y_1) - куда попадет
https://www.cyberforum.ru/cgi-bin/latex.cgi?V - speed
Вот формула зависимости координат от времени:
https://www.cyberforum.ru/cgi-bin/latex.cgi?x(t) = x_0 + V cos(\varphi) t \\y(t) = y_0 + V sin(\varphi) t \\\varphi = arctg{\frac{y_1 - y_0}{x_1 - x_0}}
Нужно еще учитывать случай https://www.cyberforum.ru/cgi-bin/latex.cgi?x_1 = x_0.
Вроде так.
1
Эксперт С++
 Аватар для Хохол
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
04.06.2011, 08:58
Чтобы не учитывать частный случай, можно воспользоваться функцией atan2 (во всех приличных языках есть).
C++
1
phi = atan2(y1-y0, x1-x0);
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.06.2011, 08:58
Помогаю со студенческими работами здесь

Полёт самолёта
Вечер добрый господа и дамы. Мне была поставлена следующая задача: &quot;Написать программу, которая рисует полет самолета. Раскрасть свой...

Полет самолета
надо создать программу о полете самолете! Точнее как летящий сомлеет:)

Полёт предмета
Всем привет. У меня вот какой вопрос. Я хочу чтобы предмет, в моём случае ящик подлетал в верх и падал по параболической траектории. Вот...

Полет самолета
На форуме я нашел нужную программу, где самолет летает на белом фоне. Вот только мне нужны облака на фоне. Попытался менять фон, но...

Полёт объекта
Всем здрасьте. Проблема в задаче, не могу сообразить как решить ... Это больше вопрос не по ЯП, но я не знаю куда можно было ещё...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru