{{notification.text}}

MirGames

20.02.09 01:31
0
Чет затупил :)
Задача - найти координаты границы взрывной волны или кругов на воде, скорость распространения известна, время тоже, центр есть, без проблем узнать нужные координаты нужной точки границы в нужное время, линейно и не сложно.
Теперь добавляется ветер, граница уже представляет собой не круг (эллипс чтоль), сносит ее, и тут затуп, как выглядит уравнение в этом случае? Скорость и угол ветра знаем.
Подпните в нужную сторону (можно словами, а не кодом)
#1
Студент
20.02.09 02:24
0
Матрицами. У тебя есть вектор направления ветра. Составляешь из него матрицу такого вида:
Xв Xn
Yв Yn

Где В - вектор направления твоего ветра, а n - вектор, нормальный ему. Далее надо скомбинировать эту матрицу и матрицу смещения:
1 0 0
0 1 0
x y 1
Тут x и y - координаты вектора направления ветра.
Полученную матрицу применяешь к точкам, которые представляюттвою волну.

Вроде бы так. Но это в случае с эллипсом, т.е. тухло. В волне, скорее всего, будет что-то яйцевидное. Но, по-моему в данном случае проще сделать либо физику частиц, либо забить вообще на подобные мелочи.
#2
20.02.09 02:43
0
в том то и дело, что не сложно сделать частицы, когда они отрабатывают "за цикл", я не могу составить уравнение, по которому узнать растояние от центра до точки в определенном направлении (грубо говоря построить это яйко) в любой момент времени. Обычное школьное уравнение, без всяких матриц, сижу и не врубаюсь...
ЗЫ не частицы делаю :(
#3
20.02.09 04:19
0
или все же круг получается... совсем запутался :)
#4
20.02.09 13:31
0
antonn
Насколько я помню - круг, центр которого двигается. Хотя не уверен в том, что на движение влияет.
#6
Студент
20.02.09 17:52
0
Цитата(antonn @ Вчера, 20:43)
[snapback]93329[/snapback]
я не могу составить уравнение, по которому узнать растояние от центра до точки

Эмн... Я могу :)

sqrt((x-x0)^2+(y-y0)^2) = result

Где result - расстояние меду двумя точками. x, y - координаты первой точки. x0,y0 - координаты второй точки.
sqrt - операция нахождения квадратного корня.
x^2 - это икс в квадрате.
#7
21.02.09 00:49
0
Если каждую точку сносит с одинаковой скоростью, то очевидно, что расположение точек друг относительно друга меняться не будет. (Представь себе, что волна не увеличивается, а ее просто сносит.)

Поэтому это будет круг.
#8
21.02.09 02:38
0
visual а если учесть, что точки разлетаются от центра круга, а на них действует боковой ветер, и при этом какие то точки летят по ветру, а другие против него? :) Почему то кажется, что должен быть эллипс, но по опытам остается все тот же круг (или примерно круг)...

Pierre Kurochkin
Правильная цитата выглядит так:
Цитата
я не могу составить уравнение, по которому узнать растояние от центра до точки в определенном направлении (грубо говоря построить это яйко) в любой момент времени

Где у тебя время? :)
У меня всего одна координата - центр взрыва, есть скорость распространения, есть угол и сила ветра, усе, больше ничего :)

lans
Цитата
а эллепс и яйцо не одно и тоже?))

неа, разные :)
Отредактировано: 21.02.09 02:54
#9
21.02.09 02:42
0
я уже MBo потревожил, никак не допру...
#10
21.02.09 03:06
0
В общем тему можно закрыть, в результате всех взрывов все равно окажется круг, пойду сожгу учебники ОБЖ с их эллипсами, потому что он образуется от высоты выброса и большим временем падения обломков, а не из-за ветра :)
#11
Почетный ламер :)
21.02.09 03:07
0
antonn
скорость это первая производная координаты по ВРЕМЕНИ.
#12
21.02.09 03:10
0
Цитата(antonn @ Сегодня, 00:38)
[snapback]93403[/snapback]
Почему то кажется, что должен быть эллипс, но по опытам остается все тот же круг (или примерно круг)...

Это только кажется. Происходит именно снос, волна остается круглой/сферической. Разумеется, если скорость ветра равномерна в пространстве волны. Иначе снос будет неравномерный и волна соответственно исказится.
#{{post.Index}}
{{post.Author.Login}}
{{post.CreatedDate | date:'dd.MM.yy HH:mm'}}
{{post.VotesRating}}
Отредактировано: {{post.UpdatedDate | date:'dd.MM.yy HH:mm'}}