Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
graphene-quaternion.h File Reference
#include "graphene-types.h"
#include "graphene-vec4.h"

Go to the source code of this file.

Data Structures

struct  _graphene_quaternion_t
 

Functions

GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_tgraphene_quaternion_alloc (void)
 
GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_free (graphene_quaternion_t *q)
 
GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_tgraphene_quaternion_init (graphene_quaternion_t *q, float x, float y, float z, float w)
 
GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_tgraphene_quaternion_init_identity (graphene_quaternion_t *q)
 
GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_tgraphene_quaternion_init_from_quaternion (graphene_quaternion_t *q, const graphene_quaternion_t *src)
 
GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_tgraphene_quaternion_init_from_vec4 (graphene_quaternion_t *q, const graphene_vec4_t *src)
 
GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_tgraphene_quaternion_init_from_matrix (graphene_quaternion_t *q, const graphene_matrix_t *m)
 
GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_tgraphene_quaternion_init_from_angles (graphene_quaternion_t *q, float deg_x, float deg_y, float deg_z)
 
GRAPHENE_AVAILABLE_IN_1_4 graphene_quaternion_tgraphene_quaternion_init_from_radians (graphene_quaternion_t *q, float rad_x, float rad_y, float rad_z)
 
GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_tgraphene_quaternion_init_from_angle_vec3 (graphene_quaternion_t *q, float angle, const graphene_vec3_t *axis)
 
GRAPHENE_AVAILABLE_IN_1_2 graphene_quaternion_tgraphene_quaternion_init_from_euler (graphene_quaternion_t *q, const graphene_euler_t *e)
 
GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_to_vec4 (const graphene_quaternion_t *q, graphene_vec4_t *res)
 
GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_to_matrix (const graphene_quaternion_t *q, graphene_matrix_t *m)
 
GRAPHENE_AVAILABLE_IN_1_2 void graphene_quaternion_to_angles (const graphene_quaternion_t *q, float *deg_x, float *deg_y, float *deg_z)
 
GRAPHENE_AVAILABLE_IN_1_4 void graphene_quaternion_to_radians (const graphene_quaternion_t *q, float *rad_x, float *rad_y, float *rad_z)
 
GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_to_angle_vec3 (const graphene_quaternion_t *q, float *angle, graphene_vec3_t *axis)
 
GRAPHENE_AVAILABLE_IN_1_0 bool graphene_quaternion_equal (const graphene_quaternion_t *a, const graphene_quaternion_t *b)
 
GRAPHENE_AVAILABLE_IN_1_0 float graphene_quaternion_dot (const graphene_quaternion_t *a, const graphene_quaternion_t *b)
 
GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_invert (const graphene_quaternion_t *q, graphene_quaternion_t *res)
 
GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_normalize (const graphene_quaternion_t *q, graphene_quaternion_t *res)
 
GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_slerp (const graphene_quaternion_t *a, const graphene_quaternion_t *b, float factor, graphene_quaternion_t *res)
 
GRAPHENE_AVAILABLE_IN_1_10 void graphene_quaternion_multiply (const graphene_quaternion_t *a, const graphene_quaternion_t *b, graphene_quaternion_t *res)
 
GRAPHENE_AVAILABLE_IN_1_10 void graphene_quaternion_scale (const graphene_quaternion_t *q, float factor, graphene_quaternion_t *res)
 
GRAPHENE_AVAILABLE_IN_1_10 void graphene_quaternion_add (const graphene_quaternion_t *a, const graphene_quaternion_t *b, graphene_quaternion_t *res)
 

Function Documentation

◆ graphene_quaternion_add()

GRAPHENE_AVAILABLE_IN_1_10 void graphene_quaternion_add ( const graphene_quaternion_t * a,
const graphene_quaternion_t * b,
graphene_quaternion_t * res )

◆ graphene_quaternion_alloc()

GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_t * graphene_quaternion_alloc ( void )

◆ graphene_quaternion_dot()

GRAPHENE_AVAILABLE_IN_1_0 float graphene_quaternion_dot ( const graphene_quaternion_t * a,
const graphene_quaternion_t * b )

◆ graphene_quaternion_equal()

GRAPHENE_AVAILABLE_IN_1_0 bool graphene_quaternion_equal ( const graphene_quaternion_t * a,
const graphene_quaternion_t * b )

◆ graphene_quaternion_free()

GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_free ( graphene_quaternion_t * q)

◆ graphene_quaternion_init()

GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_t * graphene_quaternion_init ( graphene_quaternion_t * q,
float x,
float y,
float z,
float w )

◆ graphene_quaternion_init_from_angle_vec3()

GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_t * graphene_quaternion_init_from_angle_vec3 ( graphene_quaternion_t * q,
float angle,
const graphene_vec3_t * axis )

◆ graphene_quaternion_init_from_angles()

GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_t * graphene_quaternion_init_from_angles ( graphene_quaternion_t * q,
float deg_x,
float deg_y,
float deg_z )

◆ graphene_quaternion_init_from_euler()

GRAPHENE_AVAILABLE_IN_1_2 graphene_quaternion_t * graphene_quaternion_init_from_euler ( graphene_quaternion_t * q,
const graphene_euler_t * e )

◆ graphene_quaternion_init_from_matrix()

GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_t * graphene_quaternion_init_from_matrix ( graphene_quaternion_t * q,
const graphene_matrix_t * m )

◆ graphene_quaternion_init_from_quaternion()

GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_t * graphene_quaternion_init_from_quaternion ( graphene_quaternion_t * q,
const graphene_quaternion_t * src )

◆ graphene_quaternion_init_from_radians()

GRAPHENE_AVAILABLE_IN_1_4 graphene_quaternion_t * graphene_quaternion_init_from_radians ( graphene_quaternion_t * q,
float rad_x,
float rad_y,
float rad_z )

◆ graphene_quaternion_init_from_vec4()

GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_t * graphene_quaternion_init_from_vec4 ( graphene_quaternion_t * q,
const graphene_vec4_t * src )

◆ graphene_quaternion_init_identity()

GRAPHENE_AVAILABLE_IN_1_0 graphene_quaternion_t * graphene_quaternion_init_identity ( graphene_quaternion_t * q)

◆ graphene_quaternion_invert()

GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_invert ( const graphene_quaternion_t * q,
graphene_quaternion_t * res )

◆ graphene_quaternion_multiply()

GRAPHENE_AVAILABLE_IN_1_10 void graphene_quaternion_multiply ( const graphene_quaternion_t * a,
const graphene_quaternion_t * b,
graphene_quaternion_t * res )

◆ graphene_quaternion_normalize()

GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_normalize ( const graphene_quaternion_t * q,
graphene_quaternion_t * res )

◆ graphene_quaternion_scale()

GRAPHENE_AVAILABLE_IN_1_10 void graphene_quaternion_scale ( const graphene_quaternion_t * q,
float factor,
graphene_quaternion_t * res )

◆ graphene_quaternion_slerp()

GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_slerp ( const graphene_quaternion_t * a,
const graphene_quaternion_t * b,
float factor,
graphene_quaternion_t * res )

◆ graphene_quaternion_to_angle_vec3()

GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_to_angle_vec3 ( const graphene_quaternion_t * q,
float * angle,
graphene_vec3_t * axis )

◆ graphene_quaternion_to_angles()

GRAPHENE_AVAILABLE_IN_1_2 void graphene_quaternion_to_angles ( const graphene_quaternion_t * q,
float * deg_x,
float * deg_y,
float * deg_z )

◆ graphene_quaternion_to_matrix()

GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_to_matrix ( const graphene_quaternion_t * q,
graphene_matrix_t * m )

◆ graphene_quaternion_to_radians()

GRAPHENE_AVAILABLE_IN_1_4 void graphene_quaternion_to_radians ( const graphene_quaternion_t * q,
float * rad_x,
float * rad_y,
float * rad_z )

◆ graphene_quaternion_to_vec4()

GRAPHENE_AVAILABLE_IN_1_0 void graphene_quaternion_to_vec4 ( const graphene_quaternion_t * q,
graphene_vec4_t * res )