Несколько вопросов о реакции на столкновение 2D-полигонов

#math #response #collision-detection #physics #collision

#математика #ответ #обнаружение столкновений #физика #столкновение

Вопрос:

Привет, после прочтения этой статьи у меня осталось несколько вопросов, которые я надеюсь разрешить здесь.

Я понимаю, что цель любого ответа на многомерное столкновение — преобразовать его в одномерное столкновение, поместив тела на какую-то общую ось. Из статьи я сделал вывод, что шаги по реагированию на 2d-столкновение между двумя полигонами заключаются в

  1. Сначала найдите вектор скорости для каждой точки столкновения тел
  2. Найдите относительную скорость на основе скорости каждой точки столкновения (см. вопрос 1)
  3. Учитывайте, какая часть этой скорости находится вдоль «линии передачи силы (см. Вопрос 2
    (это единственная скорость, которая имеет значение для столкновения)
  4. Фактор эластичности
  5. Фактор массы
  6. Найдите импульс / новую линейную скорость на основе 2-4
  7. Наконец, определите новую угловую скорость, выяснив, какая часть импульса «вращается» вокруг сантиметра каждого объекта (что определяет угловое ускорение)

Все эти шаги в основном определяют, с какой скоростью каждая точка приближается к другой после перевода каждой скорости в новую одномерную систему координат, верно?

Вопрос 1: В статье говорится, что относительная скорость предназначена для нахождения и выражения скорости, с которой точки столкновения приближаются друг к другу, но мне кажется, что это просто вектор
СМ 1 -> СМ 2, величина которого основана на скорости каждой точки. Я не понимаю причины даже включения CMS в вычисления, поскольку это точки, сталкивающиеся, а не CMs. Кроме того, мне нравится визуализировать вещи, итак, как относительная скорость преобразуется геометрически и как это работает для достижения цели получения задачи о столкновении 2D.

Вопрос 2: В статье говорится, что единственная сила во время столкновения действует в направлении, перпендикулярном затронутому краю, но как это было решено? Также, как они могут быть только силой в одном направлении, когда предполагается, что каждое тело в конечном итоге отскакивает в 2 разных направлениях.

Комментарии:

1. Для 2D-задачи вы можете рассматривать векторы x и y каждый по отдельности как ОДНОМЕРНУЮ задачу и объединить результаты. Это будет работать для линейных движений, но не так хорошо работает при вращательных движениях. Что вы подразумеваете под «преобразованием» задачи в задачу с одномерным столкновением?

2. @XavierHo под преобразованием я подразумеваю превращение 2d-задачи в одномерную задачу с помощью некоторой математики и знания того, что вся сила приложена к одной оси.

3. Если вы рассматриваете x и y как два измерения, с которыми работаете, преобразование их в 1D будет означать потерю одного измерения тем или иным способом. Я не уверен, к чему вы клоните. Не могли бы вы уточнить?

4. взгляните на это изображение: director-online.com/howTo/UD_articles/UD105/figure1.gif новая ось x формируется из линии, которая проходит через обе окружности, и сила действует только на эту ось, формируя ОДНОМЕРНУЮ проблему

5. У меня такое чувство, что вы хотите спроецировать векторы на другой для Q1, а для Q2 это «одно и то же направление», но с разными знаками. Это было то, что ты искал? Если да, я могу опубликовать ответ, когда вернусь домой.

Ответ №1:

«Все эти шаги в основном определяют, с какой скоростью каждая точка приближается к другой после перевода каждой скорости в новую одномерную систему координат, верно?»

Это кажется довольно хорошим описанием шагов 1 и 2.

«Вопрос 1: В статье говорится, что относительная скорость предназначена для нахождения и выражения скорости, с которой точки столкновения приближаются друг к другу, но мне кажется, что это просто вектор CM1 -> CM2, величина которого основана на скорости каждой точки «.

Нет, представьте, что обе CMS почти неподвижны, но один прямоугольник вращается и ударяется о другой. Относительная скорость точек столкновения будет почти перпендикулярна вектору смещения между СМ1 и СМ2.

«… Как относительная скорость преобразуется геометрически?»

Увеличьте место столкновения непосредственно перед ударом. Если вы стоите в точке столкновения одного тела, вы видите, что точка столкновения в другой точке приближается к вам с определенной скоростью (в вашем кадре, в котором вы стоите неподвижно).

«… И как это работает для достижения цели получения проблемы с одномерным столкновением?»

В месте столкновения это является проблемой одномерного столкновения.

«Вопрос 2. В статье утверждается, что единственная сила во время столкновения действует в направлении, перпендикулярном затронутому краю, но как это было решено?»

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

«Также, как [может] быть только сила в одном направлении, когда предполагается, что каждое тело в конечном итоге отскакивает в двух разных направлениях «.

Каждое тело испытывает силу в одном направлении. Он отходит в определенном направлении, вращаясь с определенной угловой скоростью. Я не могу разобрать остальную часть вопроса.

Комментарии:

1. Хорошо, спасибо, но у меня есть еще один вопрос =), почему в статье говорится, что относительная нормальная скорость должна быть отрицательной, чтобы точки приближались друг к другу? Относительная скорость не всегда отрицательна в зависимости от ориентации сталкивающихся тел, и я не понимаю, как точечное произведение относительной скорости на нормаль к краю поражаемого тела всегда может превратить эти положительные относительные скорости в отрицательные.

2. @Griffin, относительная скорость — это вектор, он не может быть положительным или отрицательным. Если вы возьмете нормальное направление наружу тела и возьмете его скалярное произведение на относительную скорость, результат (скаляр) будет отрицательным, если приближается другое тело.

3. Как был сделан вывод о том, что «результат был бы отрицательным, если бы приближалось другое тело»? Это то, что я хочу знать; как физик до этого додумался? Посмотрите на мой оригинальный комментарий, зная, что под «относительной нормальной скоростью» я подразумеваю скалярное произведение вектора относительной скорости и вектора нормали затронутых сторон.

4. @Griffin, тебе нужно математическое доказательство? Вы должны поиграть с этими вещами и посмотреть, как они работают. Скалярное произведение равно нулю, когда векторы перпендикулярны, положительно, когда они движутся в одном направлении (например, Север и северо-восток), и отрицательно, когда они противоположны (например, Север и юго-восток). Думайте о нормали как о Севере.