Если вам нужен угол для поворота, рассчитайте его как
dAx = P1.x - P2.x
dAy = P1.y - P2.y
dBx = P3.x - P2.x
dBy = P2.y - P2y
an = atan2(dAx * dBy - dAy * dBx, dAx * dBx + dAy * dBy)
, но ваша картинка, возможно, показывает, что вам нужно просто сделать вектор с длиной P2P3, но коллинеарный с P2P1.В этом случае:
- вычислить длину обоих векторов
- найти вектор нормализованного направления для P2P1 - получить его компонент и делить на длину вектора
- умножить компоненты нормализованного вектора на длину P2P3