Processing:Справочник языка Processing/applyMatrix()

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску


Перевод: Максим Кузьмин (Cubewriter) Контакты:</br>* Skype: cubewriter</br>* E-mail: cubewriter@gmail.com</br>* Максим Кузьмин на freelance.ru
Проверка/Оформление/Редактирование: Мякишев Е.А.


Cat poo.png Черновик


applyMatrix() [1]

Обозначение

applyMatrix()

Описание

Умножает текущую матрицу на ту, что указана в параметрах. Этот метод работает очень медленно, т.к. пытается рассчитать инверсию трансформации, так что, если возможно, лучше его избегать. Эквивалент этого метода в OpenGL – это glMultMatrix().

Синтаксис

applyMatrix(source)
applyMatrix(n00, n01, n02, n10, n11, n12)
applyMatrix(n00, n01, n02, n03, n10, n11, n12, n13, n20, n21, n22, n23, n30, n31, n32, n33)

Параметры

n00  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n01  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n02  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n10  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n11  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n12  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n03  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n13  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n20  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n21  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n22  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n23  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float 
n30  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n31  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n32  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float
n33  число, чтобы задать матрицу 4х4 для умножения. Тип данных  float

Возвращаемое значение

void

Пример

size(100, 100, P3D);
noFill();
translate(50, 50, 0);
rotateY(PI/6); 
stroke(153);
box(35);
// задаем углы вращения:
float ct = cos(PI/9.0);
float st = sin(PI/9.0);          
// матрица для вращения вокруг оси Y:
applyMatrix(  ct, 0.0,  st,  0.0,
             0.0, 1.0, 0.0,  0.0,
             -st, 0.0,  ct,  0.0,
             0.0, 0.0, 0.0,  1.0);  
stroke(255);
box(50);

См.также

Внешние ссылки