ChristianGaerter

Untitled

Mar 8th, 2014
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.93 KB | None | 0 0
  1. public Matrix4f initRotation(float x, float y, float z) {
  2.  
  3. Matrix4f mx = new Matrix4f();
  4. Matrix4f my = new Matrix4f();
  5. Matrix4f mz = new Matrix4f();
  6.  
  7. x = (float) Math.toRadians(x);
  8. y = (float) Math.toRadians(x);
  9. z = (float) Math.toRadians(x);
  10.  
  11. mx.m[0][0] = (float) Math.cos(z); mx.m[0][1] = (float) - Math.sin(z); mx.m[0][2] = 0; mx.m[0][3] = 0;
  12. mx.m[1][0] = (float) Math.sin(z); mx.m[1][1] = (float) + Math.cos(z); mx.m[1][2] = 0; mx.m[1][3] = 0;
  13. mx.m[2][0] = 0; mx.m[2][1] = 0; mx.m[2][2] = 1; mx.m[2][3] = 0;
  14. mx.m[3][0] = 0; mx.m[3][1] = 0; mx.m[3][2] = 0; mx.m[3][3] = 1;
  15.  
  16. my.m[0][0] = 1; my.m[0][1] = 0; my.m[0][2] = 0; my.m[0][3] = 0;
  17. my.m[1][0] = 0; my.m[1][1] = (float) Math.cos(x); my.m[1][2] = (float) - Math.sin(x); my.m[1][3] = 0;
  18. my.m[2][0] = 0; my.m[2][1] = (float) Math.sin(x); my.m[2][2] = (float) + Math.cos(x); my.m[2][3] = 0;
  19. my.m[3][0] = 0; my.m[3][1] = 0; my.m[3][2] = 0; my.m[3][3] = 1;
  20.  
  21. mz.m[0][0] = (float) Math.cos(y); mz.m[0][1] = 0; mz.m[0][2] = (float) - Math.sin(y); mz.m[0][3] = 0;
  22. mz.m[1][0] = 0; mz.m[1][1] = 1; mz.m[1][2] = 0; mz.m[1][3] = 0;
  23. mz.m[2][0] = (float) Math.sin(y); mz.m[2][1] = 0; mz.m[2][2] = (float) + Math.cos(y); mz.m[2][3] = 0;
  24. mz.m[3][0] = 0; mz.m[3][1] = 0; mz.m[3][2] = 0; mz.m[3][3] = 1;
  25.  
  26. m = mz.mul(my.mul(mx)).getM();
  27.  
  28. return this;
  29. }
Advertisement
Add Comment
Please, Sign In to add comment