Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Движеня шариков 
:(
    Опции темы
Elfet
  Дата 12.5.2004, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



Есть два шарика. Известен радиус и координаты обоих. Нужно чтоб один шарик не мог попасть
в другой.
Помогите пожалуйст!


--------------------
PM MAIL WWW Skype   Вверх
maxim1000
Дата 12.5.2004, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 33
Всего: 110



учтановить им начальные скорости в противоположных направлениях smile.gif
а вообще не помешало бы нормально поставить вопрос...


--------------------
qqq
PM WWW   Вверх
Dr.Drunk
Дата 12.5.2004, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 12.1.2004
Где: Волжский

Репутация: нет
Всего: нет



Elfet, Вы, условия нормально поставьте, где они находяться, как должны двигаться? bored.gif

--------------------
_Theory_ is when you know everything but nothning works._Practice_ is when everything works but no one knows why._IN THIS PLACE_ we're combining theory and practice -nothing works and no one knows why!
PM MAIL WWW ICQ   Вверх
Elfet
Дата 12.5.2004, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



Ну я вообщем пытался вот так сделать на с :
sqrt(pow(x2-x1, 2)+pow(y2-y1, 2))-r2-r1<0

Но так один шарик "прилепает" к другому[s].


Условия есть координаты x1 x2 y1 y2 и радиусы r1 r2
Нуна двигать их но чтоб они не попадали внутрь друг друга и если всё же попадут внутрь друг друга
чтоб могли вылезти smile.gif



--------------------
PM MAIL WWW Skype   Вверх
Lan
Дата 12.5.2004, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 12.3.2004
Где: Владимир

Репутация: нет
Всего: 1



Забавная постановка задачи.

Если то, что я понял - вернО, то шарики могут двигаться абсолютно хаотично и независимо друг от друга.

И, спрашивается, в чём тогда проблема? smile.gif
PM ICQ   Вверх
setq
Дата 12.5.2004, 19:53 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











зафиксировать столкновение наверно

?

если да - то формула вроде правильная.
  Вверх
Elfet
Дата 12.5.2004, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



ага тока они прилепают друг к другу smile.gif


--------------------
PM MAIL WWW Skype   Вверх
Elfet
Дата 12.5.2004, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



cool.gif ! сам додумался smile.gif я просто теперь отбрасываю шарик на маленькое растояние обратно smile.gif

Теперь задача услажнилась hmmm.gif теперь движутся и шарики и примоугольники (какие извесно) hmmm.gif

sad.gif ума не приложу, как это сделать sad.gif


--------------------
PM MAIL WWW Skype   Вверх
dargaard
Дата 12.5.2004, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Экс. модератор
Сообщений: 450
Регистрация: 7.5.2004

Репутация: нет
Всего: 25



Если данны x1,y1 x2,y2, x3,y3 x4,y4

---------------------------> X
|
| P1 _____ P2
| | |
| | |
| | |
| P4|_____|P3
v
Y


и Xc,Yc то

чтоб шарик не попал в прямоугольник:
if (xc+R>x1 && xc-R<x3 && yc+R>y1 && yc-R<y3) - отталкиваем

Для того чтоб не врезались 2 прямоугольника
для каждой вершины одного проверяем так же как для круга но с R=0

Кажись такsmile.gif

Это сообщение отредактировал(а) dargaard - 12.5.2004, 22:57


--------------------
Ты должна сделать добро из зла 
потому что его больше не из чего
сделать. Р.П.Уоррен
PM MAIL WWW ICQ   Вверх
Crot
Дата 13.5.2004, 05:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 31.1.2004

Репутация: нет
Всего: 3



Цитата(Elfet @ 12.5.2004, 22:17)
Есть два шарика. Известен радиус и координаты обоих. Нужно чтоб один шарик не мог попасть
в другой.
Помогите пожалуйст!

А по какому закону двигаются шарики?
PM MAIL WWW ICQ   Вверх
Elfet
Дата 13.5.2004, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и Пушистый
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 3776
Регистрация: 2.4.2003

Репутация: нет
Всего: 16



Crot , произвольно smile.gif


Цитата
---------------------------> X
|
| P1 _____ P2
| | |
| | |
| | |
| P4|_____|P3
v
Y


ето что? smile.gif


Цитата
Для того чтоб не врезались 2 прямоугольника
для каждой вершины одного проверяем так же как для круга но с R=0


и ето не совсем понял smile.gif



--------------------
PM MAIL WWW Skype   Вверх
dargaard
Дата 13.5.2004, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Экс. модератор
Сообщений: 450
Регистрация: 7.5.2004

Репутация: нет
Всего: 25



Elfet
1)
Это была попытка нарисовать x,y ось и прямоугольник (p1,p2,p3,p4 - учитывалось что
в такой последовательности даны координаты)
---------------------
2)
Для того чтоб не врезались 2 прямоугольника
для каждой вершины одного проверяем так же как для круга но с R=0
Имелось в виду по формуле
if (xc+R>x1 && xc-R<x3 && yc+R>y1 && yc-R<y3)
при этом берем R=0, x1,y1 и x3,y3 - координаты первого прям. а xc,yc - координаты каждой вершины второго

например:
если даны координаты 2х прямоугольников
(xA1, yA1 xA2,yA2, xA3, yA3, xA4, yA4) и
(xB1, yB1 xB2, yB2, xB3, yB3, xB4, yB4)

то

if (xA1 > xB1 && xA1 < xB3 && yA1 > yB1 && yA1 < yB3) - отталкиваем
if (xA2 > xB1 && xA2 < xB3 && yA2 > yB3 && yA2 < yB3) - отталкиваем
тоже самое для (xA3,yA3) и (xA4, yB4)



--------------------
Ты должна сделать добро из зла 
потому что его больше не из чего
сделать. Р.П.Уоррен
PM MAIL WWW ICQ   Вверх
Crot
  Дата 14.5.2004, 02:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 31.1.2004

Репутация: нет
Всего: 3



Цитата(Elfet @ 13.5.2004, 21:45)
Crot , произвольно smile.gif

Подожди, подожди...
Если я правильно понял, у тебя координаты центра шарика меняются через определённый временной интервая на постоянную величину ?
PM MAIL WWW ICQ   Вверх
beif
Дата 16.5.2004, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 25.8.2003
Где: Россия, Кемерово

Репутация: 1
Всего: 1



А если прямоугольники "мысленно" вписать в круги и следить чтобы они не сталкивались... т.е. свести задачу к ранее решенной.. ? smile.gif
PM MAIL WWW ICQ   Вверх
dargaard
Дата 16.5.2004, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Экс. модератор
Сообщений: 450
Регистрация: 7.5.2004

Репутация: нет
Всего: 25



beif
Не очень выидет по моему - для прямоугольника со сторонами 5 и 1 к примеру
user posted image
отталкивание будет поисходить от попадания в зеленые участки


--------------------
Ты должна сделать добро из зла 
потому что его больше не из чего
сделать. Р.П.Уоррен
PM MAIL WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.1111 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.