You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
673 B
33 lines
673 B
#include "GMath.h"
|
|
#include "CArrayBuffer.h"
|
|
#include "CDataView.h"
|
|
#include "CFloat32Array.h"
|
|
|
|
int main() {
|
|
|
|
GVector3 v1(SQRT(2)/2, SQRT(2) / 2, 0);
|
|
GVector3 v2(-1, 1, -1);
|
|
GVector3 v3(0, -2, -2);
|
|
|
|
//˹ÃÜÌØÕý½»»¯
|
|
GVector3 w1 = v1;
|
|
GVector3 w2 = v2 - proj(v2, w1); //cout << w2 << endl;
|
|
GVector3 w3 = v3 - proj(v3, w1) - proj(v3, w2); //cout << w3 << endl;
|
|
|
|
//normalize
|
|
w1 = w1 / norm(w1);
|
|
w2 = w2 / norm(w2);
|
|
w3 = w3 / norm(w3);
|
|
|
|
GMatrix M1(3, 3);
|
|
M1.SetRowVec(0, w1);
|
|
M1.SetRowVec(1, w2);
|
|
M1.SetRowVec(2, w3);
|
|
cout << M1 << endl;
|
|
|
|
GMatrix M2 = Transpose(M1);
|
|
cout << M2 << endl;
|
|
|
|
cout << M1 * M2 << endl;
|
|
return 0;
|
|
}
|