Subversion Repositories Games.Carmageddon

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. #ifndef _MATRIX23_H_
  2. #define _MATRIX23_H_
  3.  
  4. #include "brender/br_types.h"
  5.  
  6. void BrMatrix23Copy(br_matrix23* A, br_matrix23* B);
  7.  
  8. void BrMatrix23Mul(br_matrix23* A, br_matrix23* B, br_matrix23* C);
  9.  
  10. void BrMatrix23Identity(br_matrix23* mat);
  11.  
  12. void BrMatrix23Rotate(br_matrix23* mat, br_angle rz);
  13.  
  14. void BrMatrix23Translate(br_matrix23* mat, br_scalar dx, br_scalar dy);
  15.  
  16. void BrMatrix23Scale(br_matrix23* mat, br_scalar sx, br_scalar sy);
  17.  
  18. void BrMatrix23ShearX(br_matrix23* mat, br_scalar sy);
  19.  
  20. void BrMatrix23ShearY(br_matrix23* mat, br_scalar sx);
  21.  
  22. br_scalar BrMatrix23Inverse(br_matrix23* B, br_matrix23* A);
  23.  
  24. void BrMatrix23LPInverse(br_matrix23* B, br_matrix23* A);
  25.  
  26. void BrMatrix23LPNormalise(br_matrix23* A, br_matrix23* B);
  27.  
  28. void BrMatrix23ApplyP(br_vector2* A, br_vector2* B, br_matrix23* C);
  29.  
  30. void BrMatrix23ApplyV(br_vector2* A, br_vector2* B, br_matrix23* C);
  31.  
  32. void BrMatrix23TApplyP(br_vector2* A, br_vector2* B, br_matrix23* C);
  33.  
  34. void BrMatrix23TApplyV(br_vector2* A, br_vector2* B, br_matrix23* C);
  35.  
  36. void BrMatrix23Pre(br_matrix23* mat, br_matrix23* A);
  37.  
  38. void BrMatrix23Post(br_matrix23* mat, br_matrix23* A);
  39.  
  40. void BrMatrix23PreRotate(br_matrix23* mat, br_angle rz);
  41.  
  42. void BrMatrix23PostRotate(br_matrix23* mat, br_angle rz);
  43.  
  44. void BrMatrix23PreTranslate(br_matrix23* mat, br_scalar x, br_scalar y);
  45.  
  46. void BrMatrix23PostTranslate(br_matrix23* A, br_scalar x, br_scalar y);
  47.  
  48. void BrMatrix23PreScale(br_matrix23* mat, br_scalar sx, br_scalar sy);
  49.  
  50. void BrMatrix23PostScale(br_matrix23* mat, br_scalar sx, br_scalar sy);
  51.  
  52. void BrMatrix23PreShearX(br_matrix23* mat, br_scalar sy);
  53.  
  54. void BrMatrix23PostShearX(br_matrix23* mat, br_scalar sy);
  55.  
  56. void BrMatrix23PreShearY(br_matrix23* mat, br_scalar sx);
  57.  
  58. void BrMatrix23PostShearY(br_matrix23* mat, br_scalar sx);
  59.  
  60. #endif
  61.