Консультация № 40140
13.04.2006, 00:40
0.00 руб.
0 1 1
Здравствуте, у меня такая проблема. В универе задали задачу решать.
______
Разработать приложение на языке Visual Basic для моделирования траектории движения некоторого объекта перемещающегося по синусоидальному закону в некоторой плоскости. При столкновении объекта с препятствиями, расположенными случайным образом в данной плоскости, объект зеркально отталкивается от препятствия и меняет при каждом столкновении закон движения с синусоидального на косинусоидальный и наоборот. Объект движется по текущему закону относительно оси, направление которой определяется начальным направлением движения в момент столкновения. Направление оси в начальный момент времени определяется случайным образом
----------------------
Само движение я сделал, а вот отражение чего не получается???
Не поможете ли дорогие эксперты?????

Обсуждение

Неизвестный
13.04.2006, 10:38
общий
это ответ
Здравствуйте, Stamm!

Общее движение состоит из двух - линейное (основное) и колебательное (по синусу или косинусу относительно линейной). По обоим этим движения тело имеет текущее положение и "скорость"

1. Задать каждому обьекту начальные условия - "линейную" и "колебательную" координату и скорости к ним (вектора) и еще тип колебаний - синус или косинус.
2. Вычислить новую координату тела. Между старой и новой координатой нарисовать вектор смещения.
3. Посмотреть - пересекается ли он с препятствием. Если пересекается - соответственно меняем вектор смещения главный (просто отражением зеркальным) и закон движения (синус на косинус и наоборот), Ну движение тут виртуальное, не по законам физики - синус меняется на косинус, как надо изменять относительную координату - тут нужно будет спросить дополнительно у давшего задание. После вычисляем нужную новую координату.
4. Старой координате присваиваем значение новой ("физический" двигаем тело)...
5. Идем пункт 2.
Форма ответа