Реализовать класс "Rotation", представляющий вращение
трехмерного пространства, т.е. линейное ортогональное
преобразование векторного пространства R3, сохраняющее
ориентацию. (Как известно, любое такое преобразование --
это поворот вокруг некоторой оси.) Должны быть реализованы
-
конструктор по умолчанию (тождественное преобразование);
-
copy-конструктор;
-
конструктор, на вход которому подаются 3 координаты направляющего
вектора оси вращения и угол поворота в радианах. Поворот происходит
против часовой стрелки, если смотреть из конца вектора
(т.е. по правилу правого винта);
-
композиция преобразований (operator*);
-
действие преобразования на вектор R3, вектор представляется
массивом из трех элементов типа double.