![]() |
PIP 5.6.1
Platform-Independent Primitives
|
Вектор математический фиксированного размера с размером во время компиляции Подробнее...
#include <pimathvector.h>
Открытые члены | |
| PIMathVectorT (const Type &v=Type()) | |
| Создает вектор и заполняет все координаты значением v. | |
| PIMathVectorT (const PIVector< Type > &val) | |
| Создает вектор фиксированного размера из динамического вектора той же длины. | |
| PIMathVectorT (std::initializer_list< Type > init_list) | |
| Создает вектор из списка инициализации ровно с Size элементами. | |
| constexpr uint | size () const |
| Возвращает размерность вектора, заданную во время компиляции. | |
| _CVector & | fill (const Type &v) |
| Заполняет все координаты значением v. | |
| _CVector & | move (const Type &v) |
| Прибавляет v к каждой координате. | |
| _CVector & | move (const _CVector &v) |
| Прибавляет другой вектор покомпонентно. | |
| _CVector & | swapElements (uint f, uint s) |
| Меняет местами две координаты. | |
| Type | lengthSqr () const |
| Возвращает квадрат евклидовой длины. | |
| Type | length () const |
| Возвращает евклидову длину. Доступно для арифметических типов элементов. | |
| Type | manhattanLength () const |
| Возвращает манхэттенскую длину. Доступно для арифметических типов элементов. | |
| Type | angleCos (const _CVector &v) const |
| Возвращает косинус угла к вектору v. | |
| Type | angleSin (const _CVector &v) const |
| Возвращает синус угла к вектору v. | |
| Type | angleRad (const _CVector &v) const |
| Возвращает угол к вектору v в радианах. | |
| Type | angleDeg (const _CVector &v) const |
| Возвращает угол к вектору v в градусах. | |
| Type | angleElevation (const _CVector &v) const |
| Возвращает угол возвышения от этой точки к v в градусах. | |
| _CVector | projection (const _CVector &v) |
| Возвращает проекцию этого вектора на v. | |
| _CVector & | normalize () |
| Нормализует этот вектор на месте. | |
| _CVector | normalized () |
| Возвращает нормализованную копию этого вектора. | |
| bool | isNull () const |
| Возвращает true, если все координаты равны нулю. | |
| bool | isOrtho (const _CVector &v) const |
| Возвращает true, если этот вектор ортогонален v. | |
| Type & | operator[] (uint index) |
| Возвращает доступ на запись к координате. | |
| const Type & | operator[] (uint index) const |
| Возвращает доступ только для чтения к координате. | |
| Type | at (uint index) const |
| Возвращает координату по значению. | |
| Type & | element (uint index) |
| Возвращает доступ на запись к координате. | |
| const Type & | element (uint index) const |
| Возвращает доступ только для чтения к координате. | |
| _CVector & | operator= (const Type &v) |
| Присваивает всем координатам одно и то же значение. | |
| bool | operator== (const _CVector &v) const |
| Сравнивает два вектора покомпонентно. | |
| bool | operator!= (const _CVector &v) const |
| Возвращает true, если векторы различаются хотя бы по одной координате. | |
| void | operator+= (const _CVector &v) |
| Прибавляет v покомпонентно. | |
| void | operator-= (const _CVector &v) |
| Вычитает v покомпонентно. | |
| void | operator*= (const Type &v) |
| Умножает все координаты на v. | |
| void | operator/= (const Type &v) |
| Делит все координаты на v. | |
| _CVector | operator- () const |
| Возвращает вектор с противоположным знаком. | |
| _CVector | operator+ (const _CVector &v) const |
| Возвращает покомпонентную сумму с v. | |
| _CVector | operator- (const _CVector &v) const |
| Возвращает покомпонентную разность с v. | |
| _CVector | operator* (const Type &v) const |
| Возвращает копию, масштабированную на v. | |
| _CVector | operator/ (const Type &v) const |
| Возвращает копию, поделенную на v. | |
| _CVector | cross (const _CVector &v) const |
| Возвращает 3D-векторное произведение с v. | |
| Type | dot (const _CVector &v) const |
| Возвращает скалярное произведение с v. | |
| _CVector | mul (const _CVector &v) const |
| Возвращает покомпонентное произведение с v. | |
| _CVector | mul (const Type &v) const |
| Возвращает копию, масштабированную на v. | |
| _CVector | div (const _CVector &v) const |
| Возвращает покомпонентное деление на v. | |
| _CVector | div (const Type &v) const |
| Возвращает копию, поделенную на v. | |
| PIMathMatrixT< 1, Size, Type > | transposed () const |
| Возвращает вектор как матрицу 1 x Size. | |
| Type | distToLine (const _CVector &lp0, const _CVector &lp1) |
| Возвращает расстояние от этой 2D-точки до прямой через lp0 и lp1. | |
| template<uint Size1, typename Type1 > | |
| PIMathVectorT< Size1, Type1 > | turnTo () const |
| Преобразует этот вектор к другой размерности и типу элементов. | |
| template<typename T > | |
| PIMathVectorT< Size, T > | toType () const |
| Возвращает этот вектор с другим типом элементов. | |
| template<uint SubSize> | |
| PIMathVectorT< SubSize, Type > | subvector (int offset=0) const |
| Возвращает подвектор, начиная с offset, и заполняет нулями координаты вне исходного диапазона. | |
| template<uint SubSize> | |
| PIMathVectorT< Size, Type > & | setSubvector (int index, const PIMathVectorT< SubSize, Type > &v) |
| Записывает v в этот вектор, начиная с index, и игнорирует координаты вне диапазона назначения. | |
Открытые статические члены | |
| static _CVector | fromTwoPoints (const _CVector &st, const _CVector &fn) |
| Строит вектор смещения от точки st к точке fn. | |
| static _CVector | cross (const _CVector &v1, const _CVector &v2) |
| Возвращает векторное произведение v1 и v2. | |
| static Type | dot (const _CVector &v1, const _CVector &v2) |
| Возвращает скалярное произведение v1 и v2. | |
| static _CVector | mul (const _CVector &v1, const _CVector &v2) |
| Возвращает покомпонентное произведение v1 и v2. | |
| static _CVector | mul (const Type &v1, const _CVector &v2) |
| Возвращает v2, масштабированный на v1. | |
| static _CVector | mul (const _CVector &v1, const Type &v2) |
| Возвращает v1, масштабированный на v2. | |
| static _CVector | div (const _CVector &v1, const _CVector &v2) |
| Возвращает покомпонентное деление v1 на v2. | |
| static _CVector | div (const _CVector &v1, const Type &v2) |
| Возвращает v1, поделенный на скаляр v2. | |
Вектор математический фиксированного размера с размером во время компиляции
Предоставляет операции вектора включая арифметику, нормализацию, углы, векторное произведение и скалярное произведение
| Size | The fixed size of the vector |
| Type | The element type (arithmetic or complex) |