affine2d.h 1005 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /*
  2. * Copyright (c), Recep Aslantas.
  3. *
  4. * MIT License (MIT), http://opensource.org/licenses/MIT
  5. * Full license can be found in the LICENSE file
  6. */
  7. #ifndef cglmc_affine2d_h
  8. #define cglmc_affine2d_h
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. #include "../cglm.h"
  13. CGLM_EXPORT
  14. void
  15. glmc_translate2d_make(mat3 m, vec2 v);
  16. CGLM_EXPORT
  17. void
  18. glmc_translate2d_to(mat3 m, vec2 v, mat3 dest);
  19. CGLM_EXPORT
  20. void
  21. glmc_translate2d(mat3 m, vec2 v);
  22. CGLM_EXPORT
  23. void
  24. glmc_translate2d_x(mat3 m, float to);
  25. CGLM_EXPORT
  26. void
  27. glmc_translate2d_y(mat3 m, float to);
  28. CGLM_EXPORT
  29. void
  30. glmc_scale2d_to(mat3 m, vec2 v, mat3 dest);
  31. CGLM_EXPORT
  32. void
  33. glmc_scale2d_make(mat3 m, vec2 v);
  34. CGLM_EXPORT
  35. void
  36. glmc_scale2d(mat3 m, vec2 v);
  37. CGLM_EXPORT
  38. void
  39. glmc_scale2d_uni(mat3 m, float s);
  40. CGLM_EXPORT
  41. void
  42. glmc_rotate2d_make(mat3 m, float angle);
  43. CGLM_EXPORT
  44. void
  45. glmc_rotate2d(mat3 m, float angle);
  46. CGLM_EXPORT
  47. void
  48. glmc_rotate2d_to(mat3 m, float angle, mat3 dest);
  49. #ifdef __cplusplus
  50. }
  51. #endif
  52. #endif /* cglmc_affine2d_h */