Добрый день.
Нужно построить матрицу оператора вращения вокруг прямой

.
В случае с поворотом вокруг оси все понятно. А как легче всего сделать поворот вокруг прямой?
Мои рассуждения таковы: Можно координатную ось "подогнать" под прямую, т.е построить проекцию этой прямой на плоскость, а затем повернуть эту плоскость так, чтобы проекция совпала с осью. И по логике тогда получается, что поворот вокруг прямой будет сводиться к повороту вокруг оси. Так или я ошибаюсь?
Я видел в википедии формулы такого поворота, но не понимаю, откуда они взялись, и пока не пойму, пользоваться ими не хочу. Хочу именно разобраться в вопросе. Помогите, пожалуйста.