Следующие функции возвращают Булево значение
angle = v1.angleTo (v2, v3);
Следующие функции возвращают Булево значение (TRUE или FALSE) и могут использоваться внутренние условные операторы:
if (v1.isZeroLength ())
if (v1.isParallelTo (v2))
if (v1.isPerpendicularTo (v2))
Векторный класс содержит функции для обычных векторных операций:
len = v1.dotProduct (v2);
v3 = v1.crossProduct (v2);
Заданный по умолчанию конструктор для матрицы инициализирует матрицу к единичной матрице:
AcGeMatrix3d mat1, mat2, mat3;
Следующее вращает p3 90 градусов относительно линии, определенной p1 и v1:
mat1.setToRotation (kPi/2.0, v1, p1);
p3 = mat1 * p2;
Матрица может быть инвертирована, если это не сингулярно:
if (!mat2.isSingular())
mat2.invert();
* оператор определен для связывания матриц:
mat3 = mat1 * mat2;
Следующие испытания, содержит ли матрица равное масштабирование во всех трех координатах (то есть это не изменяет форму любого примитива, к которому это применяется):
if (mat.isUniScaledOrtho ())
Содержание Назад Вперед