ivec2
Header: cglm/ivec2.h
Table of contents (click to go):
Macros:
GLM_IVEC2_ONE_INIT
GLM_IVEC2_ZERO_INIT
GLM_IVEC2_ONE
GLM_IVEC2_ZERO
Functions:
Functions documentation
-
void glm_ivec2(int *v, ivec2 dest)
init ivec2 using vec3 or vec4
- Parameters:
- [in] v vector[out] dest destination
-
void glm_ivec2_copy(ivec2 a, ivec2 dest)
copy all members of [a] to [dest]
- Parameters:
- [in] a source vector[out] dest destination
-
void glm_ivec2_zero(ivec2 v)
set all members of [v] to zero
- Parameters:
- [out] v vector
-
void glm_ivec2_one(ivec2 v)
set all members of [v] to one
- Parameters:
- [out] v vector
-
int glm_ivec2_dot(ivec2 a, ivec2 b)
dot product of ivec2
- Parameters:
- [in] a vector1[in] b vector2
- Returns:
dot product
-
int glm_ivec2_cross(ivec2 a, ivec2 b)
cross product of two vector (RH)
- Parameters:
- [in] a vector 1[in] b vector 2
- Returns:
Z component of cross product
-
void glm_ivec2_add(ivec2 a, ivec2 b, ivec2 dest)
add vector [a] to vector [b] and store result in [dest]
- Parameters:
- [in] a first vector[in] b second vector[out] dest destination
-
void glm_ivec2_adds(ivec2 v, int s, ivec2 dest)
add scalar s to vector [v] and store result in [dest]
- Parameters:
- [in] v vector[in] s scalar[out] dest destination
-
void glm_ivec2_sub(ivec2 a, ivec2 b, ivec2 dest)
subtract vector [b] from vector [a] and store result in [dest]
- Parameters:
- [in] a first vector[in] b second vector[out] dest destination
-
void glm_ivec2_subs(ivec2 v, int s, ivec2 dest)
subtract scalar s from vector [v] and store result in [dest]
- Parameters:
- [in] v vector[in] s scalar[out] dest destination
-
void glm_ivec2_mul(ivec2 a, ivec2 b, ivec2 dest)
multiply vector [a] with vector [b] and store result in [dest]
- Parameters:
- [in] a first vector[in] b second vector[out] dest destination
-
void glm_ivec2_scale(ivec2 v, int s, ivec2 dest)
multiply vector [a] with scalar s and store result in [dest]
- Parameters:
- [in] v vector[in] s scalar[out] dest destination
-
void glm_ivec2_div(ivec2 a, ivec2 b, ivec2 dest)
div vector with another component-wise division: d = a / b
- Parameters:
- [in] a vector 1[in] b vector 2[out] dest result = (a[0] / b[0], a[1] / b[1], a[2] / b[2])
-
void glm_ivec2_divs(ivec2 v, int s, ivec2 dest)
div vector with scalar: d = v / s
- Parameters:
- [in] v vector[in] s scalar[out] dest result = (a[0] / s, a[1] / s, a[2] / s)
-
void glm_ivec2_mod(ivec2 a, ivec2 b, ivec2 dest)
mod vector with another component-wise modulo: d = a % b
- Parameters:
- [in] a vector[in] b scalar[out] dest result = (a[0] % b[0], a[1] % b[1])
-
int glm_ivec2_distance2(ivec2 a, ivec2 b)
squared distance between two vectors
- Parameters:
- [in] a first vector[in] b second vector
- Returns:
squared distance (distance * distance)
-
float glm_ivec2_distance(ivec2 a, ivec2 b)
distance between two vectors
- Parameters:
- [in] a first vector[in] b second vector
- Returns:
distance
-
void glm_ivec2_fill(ivec2 v, int val)
fill a vector with specified value
- Parameters:
- [out] v vector[in] val value
-
bool glm_ivec2_eq(ivec2 v, int val)
check if vector is equal to value
- Parameters:
- [in] v vector[in] val value
-
bool glm_ivec2_eqv(ivec2 v1, ivec2 v2)
check if vector is equal to another vector
- Parameters:
- [in] vec vector 1[in] vec vector 2
-
void glm_ivec2_maxv(ivec2 a, ivec2 b, ivec2 dest)
set each member of dest to greater of vector a and b
- Parameters:
- [in] a first vector[in] b second vector[out] dest destination
-
void glm_ivec2_minv(ivec2 a, ivec2 b, ivec2 dest)
set each member of dest to lesser of vector a and b
- Parameters:
- [in] a first vector[in] b second vector[out] dest destination
-
void glm_ivec2_clamp(ivec2 v, int minVal, int maxVal)
clamp each member of [v] between minVal and maxVal (inclusive)
- Parameters:
- [in, out] v vector[in] minVal minimum value[in] maxVal maximum value
-
void glm_ivec2_abs(ivec2 v, ivec2 dest)
absolute value of each vector item
- Parameters:
- [in] v vector[out] dest destination vector