Учитывая 2 точки и 2 направления, как я узнаю, пересекаются ли они?

Я делаю тест на столкновение в С#, и у меня есть следующая проблема.

У меня есть объект1 и объект2, они движутся в определенном направлении.

Я хочу активировать эффект, только если объект1 и объект2 сталкиваются под определенным углом

данные у меня есть

Vector2 object1Position
Vector2 object1Direction
float object1ColliderRadius

Vector2 object2Position
Vector2 object2Direction
float object2ColliderRadius

Я уже сделал тест, чтобы узнать, сталкивается ли объект1 с объектом2.

Чего мне не хватает, так это угла столкновения, чтобы активировать или не активировать что-то еще в моем коде. следуйте этому изображению. Учитывая 2 точки и 2 направления, как я узнаю, пересекаются ли они?

Было бы здорово, если бы вы могли предоставить минимальный воспроизводимый пример, если ваш прогресс на данный момент.

mjwills 01.04.2019 09:35

Каковы размеры объектов? Даже если их траектории пересекаются, объекты не обязательно сталкиваются.

Dmitry Bychenko 01.04.2019 09:36
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
3
2
100
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Угол легко вычисляется, например, из скалярное произведение. Более интересный вопрос заключается в том, сталкиваются ли они вообще. Это зависит от скорости, конечно. С этим легко справиться, добавив дополнительное измерение. Вот бы поставить z = t. Используя трехмерную аффинную геометрию, вы проверяете, пересекаются ли трехмерные линии. Если да, то объекты с двумерными траекториями сталкиваются. Это, конечно, для точечных объектов, поэтому в деталях вы должны проверить ближайшее расстояние линий.

предполагая постоянную скорость на данный момент

mikuszefski 01.04.2019 16:52

Другие вопросы по теме