Умные вопросы
Войти
Регистрация
Нахождение центра тяжести
Я пытаюсь сделать свою игру. Она в формате 2D. Хотелось бы, что бы в ней была физика (точне, механика) . С гравитацией я боле-мене разобрался, а вот сделать так, чтобы объекты, задевая краешком другие, начинали крутиться, вращаться и т. д, а не останавливаться, не получается. Я так думаю, для того, чтобы это реализовать, нужно знать центр тяжести всех объектов. Как его найти в реальном мире, я знаю, а как математически - нет. (Конечно, можно пытаться наугад поставить этот самый центр тяжести, но объектов будет много, и вручную заниматься такими делами - грешно) . Может, кто-нибудь знает решение этой проблемы, или в курсе, как такие вещи реализовываются при программировании?
10 года
назад
от
Владислав Лисицин
2 Ответы
▲
▼
0
голосов
. Если фигур произвольная, то её триангулируют (разбивают на треугольники) , а затем вычисляют центр масс для точек-центров пересечений медиан каждого треугольника. Как найти центр масс для точек - тут . Впрочем, думаю что чтобы единожды найти центр масс можно с триангулированием не заморачиваться, а тупо разбить картинку на пиксели и посчитать центр для нескольких тысяч точек, для компьютера это плёвое дело. Если фигуры не произвольные, а какие-нибудь прямоугольники, для них центр масс уже найден мматематически.
10 года
назад
от
Алексей
▲
▼
0
голосов
Для реальности нужно не только знать центр тяжести, но и уметь определять с какой скоростью будет вращаться объект после удара в ту или иную точку.
Скорость вращения будет сильно зависеть от того, насколько основная масса удалена от центра тяжести, то есть от момента инерции.
Пусть диск и кольцо одинаковых размеров и массы, тогда кольцо раскрутить трудне. Маховики делают с тяжёлым ободом, их трудно раскрутить и трудно остановить. Если силу приложить не к краю объекта, а по направлению, близкому к центру тяжести, то воздействие будет мене значительным.
Центр тяжести эквивалентен центру масс и через него проходя все оси главных моментов инерции, то есть при любом заданном направлении оси вращения, ось проходящая в этом направлении через центр тяжести позволяет телу легче раскручиваться (момент инерции вращения минимален для оси, проходящей именно через центр масс) . Для осей вращения удалённых момент инерции возрастает.
Придётся изучать динамику, помимо статики ) .
10 года
назад
от
Andrew Alekovs
Связанные вопросы
2
ответов
Я тут подумал а кто и с какой целью построил Великую китайскую стену? Разве там были какие-то войны?
4 месяцев
назад
от
Юля = )
1
ответ
Что означают полоски и их количество на руках пилотов?
3 года
назад
от
NoreenLett49
3
ответов
Почему, если котенка или щенка изолировать от животных, они все равно будут мяукать и лаять, хотя их никто не учил?
5 года
назад
от
Александр Матлах