C3D Kernel  104598
Открытые члены | Открытые статические члены | Открытые атрибуты | Статические открытые данные

Вектор в трехмерном пространстве. Подробнее...

Граф связей класса MbVector3D:
Collaboration graph
[см. легенду]

Полный список членов класса

Открытые члены

 MbVector3D ()
 Конструктор без параметров, вектор нулевой.
 MbVector3D (double a, double b, double c)
 Конструктор по координатам.
 MbVector3D (const MbVector3D &v)
 Конструктор-копия.
 MbVector3D (const MbFloatVector3D &)
 Конструктор копирования.
 MbVector3D (const MbCartPoint3D &p)
 Конструктор по точке.
 MbVector3D (const MbCartPoint3D &p1, const MbCartPoint3D &p2)
 Конструктор по двум точкам.
 MbVector3D (const MbVector &v2d, const MbPlacement3D &place)
 Конструктор по двумерному вектору в плоскости XOY локальной системы координат place.
void Init (const MbVector &, const MbPlacement3D &)
 Инициализировать по двумерному вектору в плоскости XOY локальной системы координат place.
void InitXY (const MbVector &)
 Инициализировать по двумерному вектору.
void Init (double a, double b, double c)
 Инициализировать по координатам.
template<class Vector >
void Init (const Vector &v)
 Инициализировать по другому вектору.
void Init (const MbCartPoint3D &p1, const MbCartPoint3D &p2)
 Инициализировать по двум точкам.
void Add (double a, double b, double c)
 Увеличить координаты на заданные величины.
void Add (const MbVector3D &v)
 Увеличить координаты на значение координат заданного вектора.
void SetZero ()
 Обнулить координаты вектора.
bool IsZero (double eps=Math::lengthEpsilon) const
 Является ли вектор нулевым?
MbVector3DTransform (const MbMatrix3D &matr)
 Преобразовать согласно матрице. Матрица действует на вектор справа.
MbVector3DRotate (const MbVector3D &axis, double angle)
 Повернуть вокруг оси на заданный угол.
MbVector3DRotate (const MbAxis3D &axis, double angle)
 Повернуть вокруг оси на заданный угол.
MbVector3DRotateXYZ (int number, double angle)
 Повернуть вокруг оси (по её номеру) на заданный угол ( 0 - ось X, 1 - ось Y, 2 - ось Z ).
bool IsDegenerate () const
 Проверить вектор на вырожденность.
bool IsNormalized (double eps=Math::lengthEpsilon) const
 Проверить вектор на нормированность.
bool RoundColinear (const MbVector3D &with, double eps=Math::paramNear) const
 Проверить коллинеарность векторов с заданной точностью (по косинусу угла между векторами).
bool Colinear (const MbVector3D &with, double eps=Math::angleRegion) const
 Проверить коллинеарность векторов с заданной точностью (по синусу угла между векторами).
bool Orthogonal (const MbVector3D &with, double eps=Math::angleRegion) const
 Проверить ортогональность векторов с заданной точностью.
double Length () const
 Рассчитать длину вектора.
double Length2 () const
 Рассчитать квадрат длины вектора.
double Angle (const MbVector3D &with) const
 Рассчитать угол между векторами.
bool Normalize ()
 Нормализовать вектор.
MbVector3D GetNormalized () const
 Вернуть нормализованную копию вектора.
MbVector3DInvert ()
 Сменить направление вектора на противоположное.
MbVector3D TangentComponent (const MbVector3D &v) const
 Вернуть составляющую часть вектора, параллельную вектору v.
MbVector3D NormalComponent (const MbVector3D &v) const
 Вернуть составляющую часть вектора, ортогональную вектору v.
void PspDerivative (double, const MbCartPoint3D &)
 Учесть перспективу для первой производной.
void PspDerivative2 (double, const MbCartPoint3D &, const MbVector3D &)
 Учесть перспективу для производной второго порядка.
void PspDerivative2Mix (double, const MbCartPoint3D &, const MbVector3D &, const MbVector3D &)
 Учесть перспективу для смешанной производной второго порядка.
void PspDerivative3 (double, const MbCartPoint3D &, const MbVector3D &, const MbVector3D &)
 Учесть перспективу для производной третьего порядка.
void PspDerivative3Mix (double, const MbCartPoint3D &, const MbVector3D &, const MbVector3D &, const MbVector3D &, const MbVector3D &)
 Учесть перспективу для смешанной производной третьего порядка.
void PspNormal (double, const MbCartPoint3D &)
 Учесть перспективу для нормали.
void PspNormalDerivative (double, const MbCartPoint3D &, const MbVector3D &, const MbVector3D &)
 Учесть перспективу для производной нормали.
bool operator== (const MbVector3D &) const
 Проверить на равенство.
bool operator!= (const MbVector3D &) const
 Проверить на неравенство.
MbVector3D operator+ (const MbVector3D &) const
 Сложить векторы.
MbVector3D operator- (const MbVector3D &) const
 Найти разность векторов.
MbVector3D operator+ (const MbCartPoint3D &) const
 Сложить вектор с точкой.
MbVector3D operator- (const MbCartPoint3D &) const
 Вычесть из вектора точку.
MbVector3D operator- () const
 Унарный минус.
MbVector3Doperator+= (const MbVector3D &)
 Сложить векторы.
MbVector3Doperator-= (const MbVector3D &)
 Вычесть из вектора точку.
MbVector3Doperator*= (double)
 Умножить вектор на число.
MbVector3Doperator/= (double)
 Разделить вектор на число.
double operator* (const MbVector3D &) const
 Вычислить скалярное произведение двух векторов.
MbVector3D operator| (const MbVector3D &) const
 Вычислить векторное произведение двух векторов.
MbMatrix3D operator& (const MbVector3D &) const
 Вычислить прямое произведение двух векторов.
MbVector3D operator* (const MbMatrix3D &) const
 Вычислить вектор как копию данного вектора, преобразованную матрицей.
MbVector3Doperator= (const MbCartPoint3D &)
 Присвоить вектору значения координат точки.
MbVector3Doperator= (const MbHomogeneous3D &)
 Присвоить вектору значения однородных координат точки.
MbVector3Doperator= (const MbFloatVector3D &)
 Присвоить вектору координаты другого вектора.
double & operator[] (size_t i)
 Получить доступ к координате по индексу.
double operator[] (size_t i) const
 Получить значение координаты по индексу.
void Set (const MbVector3D &v1, double t1)
 Приравнять вектору вектор v1, умноженный на t1.
void Set (const MbVector3D &v1, double t1, const MbVector3D &v2, double t2)
 Приравнять вектору сумму векторов v1 и v2, умноженных на t1 и t2 соответственно.
void Set (const MbVector3D &v1, double t1, const MbVector3D &v2, double t2, const MbVector3D &v3, double t3)
 Приравнять вектору сумму векторов v1, v2 и v3, умноженных на t1, t2 и t3 соответственно.
void Set (const MbVector3D &v1, double t1, const MbVector3D &v2, double t2, const MbVector3D &v3, double t3, const MbVector3D &v4, double t4)
 Приравнять вектору сумму векторов v1, v2, v3 и v4, умноженных на t1, t2, t3 и t4 соответственно.
void Set (const MbCartPoint3D &v1, double t1)
 Приравнять координаты вектора координатам точки v1, умноженных на t1.
void Set (const MbCartPoint3D &v1, double t1, const MbCartPoint3D &v2, double t2)
 Приравнять координаты вектора координатам суммы точек v1 и v2, умноженных на t1 и t2 соответственно.
void Set (const MbCartPoint3D &v1, double t1, const MbCartPoint3D &v2, double t2, const MbCartPoint3D &v3, double t3)
 Приравнять координаты вектора координатам суммы точек v1, v2 и v3, умноженных на t1, t2 и t3 соответственно.
void Set (const MbCartPoint3D &v1, double t1, const MbCartPoint3D &v2, double t2, const MbCartPoint3D &v3, double t3, const MbCartPoint3D &v4, double t4)
 Приравнять координаты вектора координатам суммы точек v1, v2, v3 и v4, умноженных на t1, t2, t3 и t4 соответственно.
void Add (const MbVector3D &v1, double t1)
 Прибавить к вектору вектор v1, умноженный на t1.
void Add (const MbVector3D &v1, double t1, const MbVector3D &v2, double t2)
 Прибавить к вектору сумму векторов v1 и v2, умноженных на t1 и t2 соответственно.
void Add (const MbVector3D &v1, double t1, const MbVector3D &v2, double t2, const MbVector3D &v3, double t3)
 Прибавить к вектору сумму векторов v1, v2 и v3, умноженных на t1, t2 и t3 соответственно.
void Add (const MbVector3D &v1, double t1, const MbVector3D &v2, double t2, const MbVector3D &v3, double t3, const MbVector3D &v4, double t4)
 Прибавить к вектору сумму векторов v1, v2, v3 и v4, умноженных на t1, t2, t3 и t4 соответственно.
void Add (const MbCartPoint3D &v1, double t1)
 Прибавить к координатам вектора координаты точки v1, умноженных на t1.
void Add (const MbCartPoint3D &v1, double t1, const MbCartPoint3D &v2, double t2)
 Прибавить к координатам вектора координаты точек v1 и v2, умноженных на числа t1 и t2, соответственно.
void Add (const MbCartPoint3D &v1, double t1, const MbCartPoint3D &v2, double t2, const MbCartPoint3D &v3, double t3)
 Прибавить к координатам вектора координаты точек v1, v2 и v3, умноженных на числа t1, t2 и t3, соответственно.
void Add (const MbCartPoint3D &v1, double t1, const MbCartPoint3D &v2, double t2, const MbCartPoint3D &v3, double t3, const MbCartPoint3D &v4, double t4)
 Прибавить к координатам вектора координаты точек v1, v2, v3 и v4, умноженных на числа t1, t2, t3 и t4, соответственно.
void SetVecM (const MbVector3D &vF, const MbVector3D &vS)
 Задать векторное произведение двух заданных векторов.
void SetVecM (const MbVector3D &vF, const MbVector3D &vS, double mulKoef)
 Задать векторное произведение двух заданных векторов, умноженное на mulKoef.
void AddVecM (const MbVector3D &vF, const MbVector3D &vS)
 Добавить к вектору векторное произведение двух заданных векторов.
void AddVecM (const MbVector3D &vF, const MbVector3D &vS, double mulKoef)
 Добавить к вектору векторное произведение двух заданных векторов, умноженное на mulKoef.
double MaxFactor () const
 Найти максимальную по модулю компоненту вектора.
void Scale (double sx, double sy, double sz)
 Масштабировать компоненты.
void Scale (double s)
 Масштабировать компоненты.
bool SetRoundedValue (bool total, double eps)
 Округлить компоненты вектора.
void GetProperties (MbProperties &)
 Выдать свойства объекта.
void SetProperties (const MbProperties &)
 Записать свойства объекта.
bool IsSame (const MbVector3D &other, double accuracy) const
 Являются ли объекты равными?

Открытые статические члены

static size_t GetDimension ()
 Получить количество координат точки.

Открытые атрибуты

double x
 Первая компонента вектора.
double y
 Вторая компонента вектора.
double z
 Третья компонента вектора.

Статические открытые данные

static const MbVector3D zero
 Нулевой вектор.
static const MbVector3D xAxis
 Вектор "X" стандартного базиса.
static const MbVector3D yAxis
 Вектор "Y" стандартного базиса.
static const MbVector3D zAxis
 Вектор "Z" стандартного базиса.

Подробное описание

Вектор описывает перемещение или направление в трёхмерном пространстве и определяется тремя компонентами x, y, z в декартовой системе координат.
Вектор не привязан к точкам пространства и поэтому не имеет метода, перемещающего его в пространстве.


Методы

bool MbVector3D::IsSame ( const MbVector3D other,
double  accuracy 
) const [inline]

Равными считаются объекты, данные которых равны с заданной точностью.

Аргументы:
[in]other- Объект для сравнения.
[in]accuracy- Точность сравнения.
Возвращает:
Равны ли объекты.

Объявления и описания членов классов находятся в файлах:
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Макросы