96 v3D(
const std::initializer_list<double>& z)
98 for (
size_t i = 0; i < 3; ++i)
99 data[i] = *(z.begin() + i);
131 for (
size_t i = 0; i < 3; ++i)
137 inline std::pair<v3D, v3D>&
operator+=(std::pair<v3D, v3D>& a,
const std::pair<v3D, v3D>& b)
140 a.second += b.second;
144 inline std::pair<v3D, v3D>&
operator*=(std::pair<v3D, v3D>& a,
double c)
151 inline std::pair<v3D, v3D>
operator*(std::pair<v3D, v3D>& a,
double c)
153 return {a.first * c, a.second * c};
Шаблонный класс, определяющий вектор фиксированной длины Фактически представляет собой массив,...
Класс, опеделяющий двумерный вектор
v3D rotated(const double angle, const v3D &axis) const
Поворот вектора на произвольный угол против часовой стрелки (по умолчанию 90 градусов)
v3D(const numvector< double, 3 > &_r)
Конструктор и приведение типа из numvector<double, 3>
v3D(const v3D &_r)
Конструктор копирования
v3D(const std::initializer_list< double > &z)
Конструктор инициализации списком
numvector< T, n > operator*(double c, const numvector< T, n > &x)
Оператор "*" умножения вектора на число (число слева, вектор справа)
std::pair< numvector< T, n >, numvector< P, n > > & operator*=(std::pair< numvector< T, n >, numvector< P, n > > &a, R c)
Оператор домножения "*=" пары векторов на число (пара слева, число справа)
std::pair< numvector< T, n >, numvector< P, n > > & operator+=(std::pair< numvector< T, n >, numvector< P, n > > &a, const std::pair< numvector< R, n >, numvector< S, n > > &b)
Оператор прибавления "+=" для пар векторов
Описание класса numvector.