Как определить угол между двумя двумерными векторами, используя перекрестное произведение?

Вот ссылка на тот же вопрос, но лучший ответ не объясняет его полностью:

Повернуть спрайт в положение мыши

Это перекрестный продукт, с которым я застрял, так как формула в этой ссылке может быть применена только в математике вне вычислений.

Какова фактическая формула для расчета перекрестного произведения в вычислительной форме?
Если вы можете опубликовать его как код C ++, это было бы здорово.

Имейте в виду, я ищу перекрестное произведение между двумя 2D векторами, а не 3D.

-4

Решение

Название говорит о том, что вы заинтересованы в вычислении угла между двумя 2D векторами.

Если вы посмотрите на, например, http://mathworld.wolfram.com/DotProduct.html, Это довольно просто реализовать в коде.

Однако есть функция atan2, которая делает это легким:

double angle = atan2(p2y, p2x) - atan2(p1y, p1x);
3

Другие решения


По вопросам рекламы [email protected]