|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.11.2011, 19:11 | #1 |
Регистрация: 24.01.2010
Сообщений: 6
|
Шары, которые двигаются хаотично и могут примагнититься, или оттолкнуться.
Здравствуйте, у меня есть программа, где на форме есть PictereBox, при запуске программы в нём создаются несколько шариков и они хаотично движутся и если соударяются, тогда разлетаются в сторону. Я хочу несколько изменить программу, чтобы эти шарики были наподобие магнитов, то есть движутся стабильно с одной скоростью, если входят в поле действия другого шара идёт рассмотрение валентностей у обоих шаров, если разные, тогда притягиваются, если одинаковые, тогда отталкиваются. При сближении, или отталкивание скорость повышается. Тут у меня есть идея как можно сделать, задать каждому шарику два радиусу, первый будет отображать границы самого шара, а второй будет отображать границы поля. И проверять расстояние от центров шаров и если оно равно, или меньше диаметру шара, который отображает поле, тогда начинается притягивание. Вот как сделать притягивание и отталкивание грамотно, я не понимаю. Соответственно при конечном сближении там просто они будут объединяться в один объект. Как мне можно сделать такое?
Код не привожу, поскольку в программе есть отдельная функция, где проверяется, соударились ли шары, и отдельная функция для расчёта новой траектории, как я написал выше, как проверить силовые поля шаров пересеклись, или нет, это ясно, а вот как сделать дальнейшее, чтобы они примагнителись, или оттолкнулись мне не ясно. Сами шары выведены в класс. |
15.11.2011, 19:20 | #2 |
Форумчанин
Регистрация: 06.11.2011
Сообщений: 214
|
Если один шар входит в радиус другого вектор скорости у шара становиться направлен к другому шару, чем они ближе тем он больше.
Для второго аналогично. Если грамотно, то необходимо для каждого шара добавить силу притяжения зависящую от радиуса. Если совсем грамотно школьная физика за 10-11 класс тебе в помощь
Помог, нажми на весы
html, js, php, С++, С#, OpenGl, DirectX, XNA, HLSL |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Определить номера точек, которые могут являться вершинами равнобедренного треугольника (Паскаль) | Dangersss | Помощь студентам | 3 | 14.11.2011 10:59 |
Людям которые не могут определится с выбором ЯП | Glamur1k | Общие вопросы по программированию, компьютерный форум | 52 | 13.05.2011 13:50 |
Интерфейс.Хаотично перемещающийся Button | Pang | Помощь студентам | 5 | 13.09.2008 19:04 |
VB - обькты не двигаются | sqvair | Помощь студентам | 3 | 14.10.2007 13:24 |