Subversion Repositories Games.Carmageddon

Rev

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

  1. #ifndef _MATRIX34_H_
  2. #define _MATRIX34_H_
  3.  
  4. #include "brender/br_types.h"
  5.  
  6. void BrMatrix34Copy(br_matrix34* A, br_matrix34* B);
  7.  
  8. void BrMatrix34Mul(br_matrix34* A, br_matrix34* B, br_matrix34* C);
  9.  
  10. void BrMatrix34Identity(br_matrix34* mat);
  11.  
  12. void BrMatrix34RotateX(br_matrix34* mat, br_angle rx);
  13.  
  14. void BrMatrix34RotateY(br_matrix34* mat, br_angle ry);
  15.  
  16. void BrMatrix34RotateZ(br_matrix34* mat, br_angle rz);
  17.  
  18. void BrMatrix34Rotate(br_matrix34* mat, br_angle r, br_vector3* a);
  19.  
  20. void BrMatrix34Translate(br_matrix34* mat, br_scalar dx, br_scalar dy, br_scalar dz);
  21.  
  22. void BrMatrix34Scale(br_matrix34* mat, br_scalar sx, br_scalar sy, br_scalar sz);
  23.  
  24. void BrMatrix34ShearX(br_matrix34* mat, br_scalar sy, br_scalar sz);
  25.  
  26. void BrMatrix34ShearY(br_matrix34* mat, br_scalar sx, br_scalar sz);
  27.  
  28. void BrMatrix34ShearZ(br_matrix34* mat, br_scalar sx, br_scalar sy);
  29.  
  30. br_scalar BrMatrix34Inverse(br_matrix34* B, br_matrix34* A);
  31.  
  32. void BrMatrix34LPInverse(br_matrix34* A, br_matrix34* B);
  33.  
  34. void BrMatrix34LPNormalise(br_matrix34* A, br_matrix34* B);
  35.  
  36. void BrMatrix34RollingBall(br_matrix34* mat, int dx, int dy, int radius);
  37.  
  38. br_matrix34* BrBoundsToMatrix34(br_matrix34* mat, br_bounds* bounds);
  39.  
  40. void BrMatrix34Copy4(br_matrix34* A, br_matrix4* B);
  41.  
  42. void BrMatrix34TApplyFV(br_vector3* A, br_fvector3* B, br_matrix34* C);
  43.  
  44. void BrMatrix34Apply(br_vector3* A, br_vector4* B, br_matrix34* C);
  45.  
  46. void BrMatrix34ApplyP(br_vector3* A, br_vector3* B, br_matrix34* C);
  47.  
  48. void BrMatrix34ApplyV(br_vector3* A, br_vector3* B, br_matrix34* C);
  49.  
  50. void BrMatrix34TApply(br_vector4* A, br_vector4* B, br_matrix34* C);
  51.  
  52. void BrMatrix34TApplyP(br_vector3* A, br_vector3* B, br_matrix34* C);
  53.  
  54. void BrMatrix34TApplyV(br_vector3* A, br_vector3* B, br_matrix34* C);
  55.  
  56. void BrMatrix34Pre(br_matrix34* mat, br_matrix34* A);
  57.  
  58. void BrMatrix34Post(br_matrix34* mat, br_matrix34* A);
  59.  
  60. void BrMatrix34PreRotateX(br_matrix34* mat, br_angle rx);
  61.  
  62. void BrMatrix34PostRotateX(br_matrix34* mat, br_angle rx);
  63.  
  64. void BrMatrix34PreRotateY(br_matrix34* mat, br_angle ry);
  65.  
  66. void BrMatrix34PostRotateY(br_matrix34* mat, br_angle ry);
  67.  
  68. void BrMatrix34PreRotateZ(br_matrix34* mat, br_angle rz);
  69.  
  70. void BrMatrix34PostRotateZ(br_matrix34* mat, br_angle rz);
  71.  
  72. void BrMatrix34PreRotate(br_matrix34* mat, br_angle r, br_vector3* axis);
  73.  
  74. void BrMatrix34PostRotate(br_matrix34* mat, br_angle r, br_vector3* axis);
  75.  
  76. void BrMatrix34PreTranslate(br_matrix34* mat, br_scalar x, br_scalar y, br_scalar z);
  77.  
  78. void BrMatrix34PostTranslate(br_matrix34* mat, br_scalar x, br_scalar y, br_scalar z);
  79.  
  80. void BrMatrix34PreScale(br_matrix34* mat, br_scalar sx, br_scalar sy, br_scalar sz);
  81.  
  82. void BrMatrix34PostScale(br_matrix34* mat, br_scalar sx, br_scalar sy, br_scalar sz);
  83.  
  84. void BrMatrix34PreShearX(br_matrix34* mat, br_scalar sy, br_scalar sz);
  85.  
  86. void BrMatrix34PostShearX(br_matrix34* mat, br_scalar sy, br_scalar sz);
  87.  
  88. void BrMatrix34PreShearY(br_matrix34* mat, br_scalar sx, br_scalar sz);
  89.  
  90. void BrMatrix34PostShearY(br_matrix34* mat, br_scalar sx, br_scalar sz);
  91.  
  92. void BrMatrix34PreShearZ(br_matrix34* mat, br_scalar sx, br_scalar sy);
  93.  
  94. void BrMatrix34PostShearZ(br_matrix34* mat, br_scalar sx, br_scalar sy);
  95.  
  96. #endif
  97.