Помощь - Поиск - Пользователи - Календарь
Полная версия: Физическая модель растяжимой веревки
Форум «Всё о Паскале» > Pascal, Object Pascal > Написание игр > Demo,Intro
Бравый генерал
Программа не работает в Windows2000, наверно из-за используемого модуля VESA.
Веревка состоит из некоторого количества узлов. Узлы можно фиксировать (и снимать фиксацию) правой кнопкой мыши. ЛЮБОЙ узел можно перетаскивать мышей, удерживая левую ее кнопку. ЛЮБОЙ узел можно зафиксировать.
'q' - сбросить все фиксации
'ESC' - выход
ЕХЕ-шник использует конфиг, который хранится в файле "config.txt". Формат конфига:
1-я строка: длина веревки в пикселях
2-я строка: кол-во узлов
3-я строка: радиус узлов
4-я строка: масса одного узла
5-я строка: коэффициент упругости веревки
6-я строка: коэффициент сопротивления воздуха
7-я строка: сила тяжести
8-я строка: кол-во зафиксированных узлов (K)
Дальше идет K строк, в каждой из которых записаны через пробел три числа: номер зафиксированного узла, его координата по оси Х, его координата по оси Y.
Для примера я составил три конфига, хранящиеся в архиве в файлах "1.txt", "2.txt", "3.txt". Для использования скопируйте содержимое какого-либо из файлов в файл конфига - "config.txt". Примите во внимание, что в самом начале координаты будут задаватся только фиксированным узлам! Остальные узлы будут с координатами "ноль". Так что не пугайтесь, пока веревка будет некоторое время приходит в состояние покоя. =)
Физика довольно реалистична, не бойтесь поэкспериментировать =) Например, закрепите концы веревки, растянув ее в горизонтальном положении, и дерните за второй слева узел - вы увидите как по веревке до правого конца пройдет волна и, отразившись, вернется обратно. Или, например, опять же закрепите концы веревки, но чтобы она не растянулась, а образовала дугу, и когда она придет в покой отпустите один из концов. =) Или загрузите конфиг "3.txt" и нажмите 'q'. smile.gif Вобщем наслаждайтесь!
volvo
Правила Форума (Пункт 10)

Твое решение?
Бравый генерал
Не понял?

Ааа.... Код. Он просто грязный, я для личного пользования писал. Вот.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.