Как вычислить траекторию на PHP?

Печать RSS
168

Автор
Землянин
0
Простите, что в школьные времена прогуливал уроки по физике и теперь задаю столь глупые вопросы.
Вопрос относится не чисто к php. как таковой код я набросаю, мне необходим пинок в верную сторону.
И так задача:
У меня есть плоскость (500x500 пикселей).
На плоскости две точки, условно обозначим их точками A и B.
Задача заключается в том что точка B должна двигаться к точки A при чем при каждом запуске скрипта на шаг ближе (пусть это будет ~10px).
в общем сама задача как рассчитать траекторию в каком направлении двигаться точки B по осям x и y?

Заранее благодарю вас за то что вы сидели на уроках smile
Изменил: Виталий (04.01.2012 / 19:49)
Автор
Землянин
0
паходу все прогуливали smile

2000 лет д.н.э.
0
Координаты точек А и В то есть?
H

Чатланин
0
У тебя есть координаты точки А? Есть координаты точки Б? Делай задачу, чтобы Б постепенно переходило к точке А. Вот и всё.

Добавлено через 00:28 сек.
Ну т.е. Зная координаты вычисления проводишь сколько нужно и т.д. и прибавляешь\убавляешь дистанцию.
Автор
Землянин
0
Hennessy (4 Января 2012 / 20:10)
У тебя есть координаты точки А? Есть координаты точки Б? Делай задачу, чтобы Б постепенно переходило к точке А. Вот и всё.

Добавлено через 00:28 сек.
Ну т.е. Зная координаты вычисления проводишь сколько нужно и т.д. и прибавляешь\убавляешь дистанцию.
это сработает только запустив два цикла и сначала сдвинутся в сторону координаты x точки Аа потом сдвигаться к точке y во вложеном цикле. но согласись получится некрасиво хоть и дойдет до цели.

я кажется понял что нужно делать. просто вычесть коефициент шага здесь и вступает еще один параметр скорости. думаю сейчас реализую.

2000 лет д.н.э.
0
$c[x] = ($a[x]<$b[x]) ? ($a[x]+5] : ($a[x]-5);
$c[y] = ($a[y]<$b[y]) ? ($a[y]+5] : ($a[y]-5);
$c[x] = ($c[x] > $b[x]) ? $b[x] : $c[x];
$c[y] = ($c[y] > $b[y]) ? $b[y] : $c[y];
координаты движения $c[x] и $c[y]
это так не думая, примерный вариант
Автор
Землянин
0
6. ramzes, прокрутил код в голове. поидее он пройдет по диагонале в сторону к точке A а потом тупо по прямой дойдет свой путь по оси на которую наткнулся.
не сойдет. sad

Добавлено через 01:33 сек.
что то в голове крутится но не могу разобратся что =/ печально
Изменил: Виталий (04.01.2012 / 20:35)

Чатланин
0
7. free, не держи в голове, рисуй. возьми листок и нарисуй, помогает.
Автор
Землянин
0
8. GingerBread, ууу.. два листка исписано вроде бы правильно но теперь понять что написал запара... хотел отсканить и скинуть но понял что сканер закидан )
Изменил: Виталий (04.01.2012 / 20:43)

2000 лет д.н.э.
0
7. free, да, я там не учел кое что, а именно длинну шага.
вместо +5 надо задать длину шага
которую надо изначально высчитать, до старта, из расчета скажем, расстояние по оси Х от точки А до точки В деленное на кол-во шагов
и так же для оси У
примерноsmile
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск