📄 matrixrotate.c
字号:
#include <math.h>#include "matrixRotate.h"inline void rotateX(float *out, float angle){vector float* outV = (vector float*) out;outV[0] = (vector float) { 1.0f, 0.0f, 0.0f, 0.0f };outV[1] = (vector float) { 0.0f, cosf(angle), sinf(angle), 0.0f };outV[2] = (vector float) { 0.0f, -sinf(angle), cos(angle), 0.0f };outV[3] = (vector float) { 0.0f, 0.0f, 0.0f, 1.0f };}inline void rotateY(float *out, float angle){vector float* outV = (vector float*) out;outV[0] = (vector float) { cosf(angle), 0.0f, -sinf(angle), 0.0f };outV[1] = (vector float) { 0.0f, 1.0f, 0.0f, 0.0f };outV[2] = (vector float) { sinf(angle), 0, cosf(angle), 0.0f };outV[3] = (vector float) { 0.0f, 0.0f, 0.0f, 1.0f };}inline void rotateZ(float *out, float angle){vector float* outV = (vector float*) out;outV[0] = (vector float) { cosf(angle), sinf(angle), 0.0f, 0.0f };outV[1] = (vector float) { -sinf(angle), cos(angle), 0.0f, 0.0f };outV[2] = (vector float) { 0.0f, 0.0f, 1.0f, 0.0f };outV[3] = (vector float) { 0.0f, 0.0f, 0.0f, 1.0f };}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -