eina_vector.h(3)

NAME
eina_vector.h

SYNOPSIS

  Data Structures
struct _Eina_Vector2
struct _Eina_Vector3

  Macros
#define EINA_VECTOR2(x, y) ((Eina_Vector2) {(x), (y)})

  Typedefs
typedef struct _Eina_Vector2 Eina_Vector2
typedef struct _Eina_Vector3 Eina_Vector3

  Functions
static void eina_vector2_set (Eina_Vector2 *dst, double x, double y)
Set parameters to vector.
static void eina_vector2_array_set (Eina_Vector2 *dst, const double *v)
Set array to vector.
static void eina_vector2_copy (Eina_Vector2 *dst, const Eina_Vector2 *src)
Copy vector.
static void eina_vector2_negate (Eina_Vector2 *out, const Eina_Vector2 *v)
Make negative vector.
static void eina_vector2_add (Eina_Vector2 *out, const Eina_Vector2 *a, const Eina_Vector2 *b)
Add two vectors.
static void eina_vector2_subtract (Eina_Vector2 *out, const Eina_Vector2 *a, const Eina_Vector2 *b)
Subtract two vectors.
static void eina_vector2_scale (Eina_Vector2 *out, const Eina_Vector2 *v, double scale)
Scale vector.
static double eina_vector2_dot_product (const Eina_Vector2 *a, const Eina_Vector2 *b)
Return the dot product of the two vectors.
static double eina_vector2_length_get (const Eina_Vector2 *v)
Return the length of the given vector.
static double eina_vector2_length_square_get (const Eina_Vector2 *v)
Return the length in square of the given vector.
static double eina_vector2_distance_get (const Eina_Vector2 *a, const Eina_Vector2 *b)
Return the distance between of two vectors.
static double eina_vector2_distance_square_get (const Eina_Vector2 *a, const Eina_Vector2 *b)
Return the distance in square between of two vectors.
static void eina_vector2_normalize (Eina_Vector2 *out, const Eina_Vector2 *v)
normalize vector.
static void eina_vector2_transform (Eina_Vector2 *out, const Eina_Matrix2 *m, const Eina_Vector2 *v)
Transform vector.
static void eina_vector2_homogeneous_position_transform (Eina_Vector2 *out, const Eina_Matrix3 *m, const Eina_Vector2 *v)
Homogeneous position transform vector.
static void eina_vector2_homogeneous_direction_transform (Eina_Vector2 *out, const Eina_Matrix3 *m, const Eina_Vector2 *v)
Homogeneous direction transform vector.
static void eina_vector3_set (Eina_Vector3 *dst, double x, double y, double z)
Set parameters to vector.
static void eina_vector3_array_set (Eina_Vector3 *dst, const double *v)
Set array to vector.
static void eina_vector3_copy (Eina_Vector3 *dst, const Eina_Vector3 *src)
Copy vector.
static void eina_vector3_negate (Eina_Vector3 *out, const Eina_Vector3 *v)
Make negative vector.
static void eina_vector3_add (Eina_Vector3 *out, const Eina_Vector3 *a, const Eina_Vector3 *b)
Add two vectors.
static void eina_vector3_subtract (Eina_Vector3 *out, const Eina_Vector3 *a, const Eina_Vector3 *b)
Subtract two vectors.
static void eina_vector3_scale (Eina_Vector3 *out, const Eina_Vector3 *v, double scale)
Scale vector.
static void eina_vector3_multiply (Eina_Vector3 *out, const Eina_Vector3 *a, const Eina_Vector3 *b)
Multiply two vectors.
static double eina_vector3_dot_product (const Eina_Vector3 *a, const Eina_Vector3 *b)
Return the dot product of the two vectors.
static void eina_vector3_cross_product (Eina_Vector3 *out, const Eina_Vector3 *a, const Eina_Vector3 *b)
Create the cross product of the two vectors.
static double eina_vector3_length_get (const Eina_Vector3 *v)
Return the length of the given vector.
static double eina_vector3_length_square_get (const Eina_Vector3 *v)
Return the length in square of the given vector.
static double eina_vector3_distance_get (const Eina_Vector3 *a, const Eina_Vector3 *b)
Return the distance between of two vectors.
static double eina_vector3_distance_square_get (const Eina_Vector3 *a, const Eina_Vector3 *b)
Return the distance in square between of two vectors.
static double eina_vector3_angle_get (const Eina_Vector3 *a, const Eina_Vector3 *b)
Return the angle between of two vectors.
static void eina_vector3_normalize (Eina_Vector3 *out, const Eina_Vector3 *v)
normalize vector.
static void eina_vector3_transform (Eina_Vector3 *out, const Eina_Matrix3 *m, const Eina_Vector3 *v)
Transform vector.
static void eina_vector3_homogeneous_direction_transform (Eina_Vector3 *out, const Eina_Matrix4 *m, const Eina_Vector3 *v)
Homogeneous direction transform vector.
static void eina_vector3_homogeneous_position_transform (Eina_Vector3 *out, const Eina_Matrix4 *m, const Eina_Vector3 *v)
Homogeneous position transform vector.
static void eina_vector3_quaternion_rotate (Eina_Vector3 *out, const Eina_Vector3 *v, const Eina_Quaternion *q)
Rotate vector.
static void eina_vector3_orthogonal_projection_on_plane (Eina_Vector3 *out, const Eina_Vector3 *v, const Eina_Vector3 *normal)
Create orthogonal projection on plane between vector and normal.
static void eina_vector3_plane_by_points (Eina_Quaternion *out, const Eina_Vector3 *a, const Eina_Vector3 *b, const Eina_Vector3 *c)
Plane by points between three vectors.
static void eina_vector3_homogeneous_position_set (Eina_Vector3 *out, const Eina_Quaternion *v)
Homogeneous position set.
static void eina_vector3_homogeneous_direction_set (Eina_Vector3 *out, const Eina_Quaternion *v)
Homogeneous direction set.
static Eina_Bool eina_vector3_equivalent (Eina_Vector3 *a, const Eina_Vector3 *b)
Check the equivalent between of two vectors.
static Eina_Bool eina_vector3_triangle_equivalent (Eina_Vector3 *v0, Eina_Vector3 *v1, Eina_Vector3 *v2, Eina_Vector3 *w0, Eina_Vector3 *w1, Eina_Vector3 *w2)
Check the equivalent between of two triangles of vectors.

Author

Generated automatically by Doxygen for EFL from the source code.