ivec4.rst 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. .. default-domain:: C
  2. ivec4
  3. =====
  4. Header: cglm/ivec4.h
  5. Table of contents (click to go):
  6. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  7. Macros:
  8. 1. GLM_IVEC4_ONE_INIT
  9. #. GLM_IVEC4_ZERO_INIT
  10. #. GLM_IVEC4_ONE
  11. #. GLM_IVEC4_ZERO
  12. Functions:
  13. 1. :c:func:`glm_ivec4`
  14. #. :c:func:`glm_ivec4_copy`
  15. #. :c:func:`glm_ivec4_zero`
  16. #. :c:func:`glm_ivec4_one`
  17. #. :c:func:`glm_ivec4_add`
  18. #. :c:func:`glm_ivec4_adds`
  19. #. :c:func:`glm_ivec4_sub`
  20. #. :c:func:`glm_ivec4_subs`
  21. #. :c:func:`glm_ivec4_mul`
  22. #. :c:func:`glm_ivec4_scale`
  23. #. :c:func:`glm_ivec4_distance2`
  24. #. :c:func:`glm_ivec4_distance`
  25. #. :c:func:`glm_ivec4_maxv`
  26. #. :c:func:`glm_ivec4_minv`
  27. #. :c:func:`glm_ivec4_clamp`
  28. #. :c:func:`glm_ivec4_abs`
  29. Functions documentation
  30. ~~~~~~~~~~~~~~~~~~~~~~~
  31. .. c:function:: void glm_ivec4(ivec3 v3, int last, ivec4 dest)
  32. init ivec4 using ivec3
  33. Parameters:
  34. | *[in]* **v** vector
  35. | *[out]* **dest** destination
  36. .. c:function:: void glm_ivec4_copy(ivec4 a, ivec4 dest)
  37. copy all members of [a] to [dest]
  38. Parameters:
  39. | *[in]* **a** source vector
  40. | *[out]* **dest** destination
  41. .. c:function:: void glm_ivec4_zero(ivec4 v)
  42. set all members of [v] to zero
  43. Parameters:
  44. | *[out]* **v** vector
  45. .. c:function:: void glm_ivec4_one(ivec4 v)
  46. set all members of [v] to one
  47. Parameters:
  48. | *[out]* **v** vector
  49. .. c:function:: void glm_ivec4_add(ivec4 a, ivec4 b, ivec4 dest)
  50. add vector [a] to vector [b] and store result in [dest]
  51. Parameters:
  52. | *[in]* **a** first vector
  53. | *[in]* **b** second vector
  54. | *[out]* **dest** destination
  55. .. c:function:: void glm_ivec4_adds(ivec4 v, int s, ivec4 dest)
  56. add scalar s to vector [v] and store result in [dest]
  57. Parameters:
  58. | *[in]* **v** vector
  59. | *[in]* **s** scalar
  60. | *[out]* **dest** destination
  61. .. c:function:: void glm_ivec4_sub(ivec4 a, ivec4 b, ivec4 dest)
  62. subtract vector [b] from vector [a] and store result in [dest]
  63. Parameters:
  64. | *[in]* **a** first vector
  65. | *[in]* **b** second vector
  66. | *[out]* **dest** destination
  67. .. c:function:: void glm_ivec4_subs(ivec4 v, int s, ivec4 dest)
  68. subtract scalar s from vector [v] and store result in [dest]
  69. Parameters:
  70. | *[in]* **v** vector
  71. | *[in]* **s** scalar
  72. | *[out]* **dest** destination
  73. .. c:function:: void glm_ivec4_mul(ivec4 a, ivec4 b, ivec4 dest)
  74. multiply vector [a] with vector [b] and store result in [dest]
  75. Parameters:
  76. | *[in]* **a** first vector
  77. | *[in]* **b** second vector
  78. | *[out]* **dest** destination
  79. .. c:function:: void glm_ivec4_scale(ivec4 v, int s, ivec4 dest)
  80. multiply vector [a] with scalar s and store result in [dest]
  81. Parameters:
  82. | *[in]* **v** vector
  83. | *[in]* **s** scalar
  84. | *[out]* **dest** destination
  85. .. c:function:: int glm_ivec4_distance2(ivec4 a, ivec4 b)
  86. squared distance between two vectors
  87. Parameters:
  88. | *[in]* **a** first vector
  89. | *[in]* **b** second vector
  90. Returns:
  91. squared distance (distance * distance)
  92. .. c:function:: float glm_ivec4_distance(ivec4 a, ivec4 b)
  93. distance between two vectors
  94. Parameters:
  95. | *[in]* **a** first vector
  96. | *[in]* **b** second vector
  97. Returns:
  98. distance
  99. .. c:function:: void glm_ivec4_maxv(ivec4 a, ivec4 b, ivec4 dest)
  100. set each member of dest to greater of vector a and b
  101. Parameters:
  102. | *[in]* **a** first vector
  103. | *[in]* **b** second vector
  104. | *[out]* **dest** destination
  105. .. c:function:: void glm_ivec4_minv(ivec4 a, ivec4 b, ivec4 dest)
  106. set each member of dest to lesser of vector a and b
  107. Parameters:
  108. | *[in]* **a** first vector
  109. | *[in]* **b** second vector
  110. | *[out]* **dest** destination
  111. .. c:function:: void glm_ivec4_clamp(ivec4 v, int minVal, int maxVal)
  112. clamp each member of [v] between minVal and maxVal (inclusive)
  113. Parameters:
  114. | *[in, out]* **v** vector
  115. | *[in]* **minVal** minimum value
  116. | *[in]* **maxVal** maximum value
  117. .. c:function:: void glm_ivec4_abs(ivec4 v, ivec4 dest)
  118. absolute value of each vector item
  119. Parameters:
  120. | *[in]* **v** vector
  121. | *[out]* **dest** destination vector