Есть три ортогональных вектора (не единичных). Есть четвёртый произвольный вектор. Надо найти такой вектор, чтобы он был ортогонален четвёртому и направлен в сторону* градиента, построенного в системе отсчёта из трёх ортогональных векторов.
* имеется в виду в сторону проекции градиента на плоскость, ортогональную четвёртому вектору
Ответ:
result = (a+b+c) - ( (a+b+c) \cdot d ) d/abs^2(d)