maths/vecmat.c File Reference

#include <stdlib.h>
#include <math.h>
#include "maths.h"
#include "vecmat.h"
#include "error.h"

Functions

vms_vectorvm_vec_add (vms_vector *dest, vms_vector *src0, vms_vector *src1)
vms_vectorvm_vec_sub (vms_vector *dest, vms_vector *src0, vms_vector *src1)
vms_vectorvm_vec_add2 (vms_vector *dest, vms_vector *src)
vms_vectorvm_vec_sub2 (vms_vector *dest, vms_vector *src)
vms_vectorvm_vec_avg (vms_vector *dest, vms_vector *src0, vms_vector *src1)
vms_vectorvm_vec_avg4 (vms_vector *dest, vms_vector *src0, vms_vector *src1, vms_vector *src2, vms_vector *src3)
vms_vectorvm_vec_scale (vms_vector *dest, fix s)
vms_vectorvm_vec_copy_scale (vms_vector *dest, vms_vector *src, fix s)
vms_vectorvm_vec_scale_add (vms_vector *dest, vms_vector *src1, vms_vector *src2, fix k)
vms_vectorvm_vec_scale_add2 (vms_vector *dest, vms_vector *src, fix k)
vms_vectorvm_vec_scale2 (vms_vector *dest, fix n, fix d)
fix vm_vec_dotprod (vms_vector *v0, vms_vector *v1)
fix vm_vec_dot3 (fix x, fix y, fix z, vms_vector *v)
fix vm_vec_mag (vms_vector *v)
fix vm_vec_dist (vms_vector *v0, vms_vector *v1)
fix vm_vec_mag_quick (vms_vector *v)
fix vm_vec_dist_quick (vms_vector *v0, vms_vector *v1)
fix vm_vec_copy_normalize (vms_vector *dest, vms_vector *src)
fix vm_vec_normalize (vms_vector *v)
fix vm_vec_copy_normalize_quick (vms_vector *dest, vms_vector *src)
fix vm_vec_normalize_quick (vms_vector *v)
fix vm_vec_normalized_dir_quick (vms_vector *dest, vms_vector *end, vms_vector *start)
fix vm_vec_normalized_dir (vms_vector *dest, vms_vector *end, vms_vector *start)
vms_vectorvm_vec_normal (vms_vector *dest, vms_vector *p0, vms_vector *p1, vms_vector *p2)
void check_vec (vms_vector *v)
vms_vectorvm_vec_crossprod (vms_vector *dest, vms_vector *src0, vms_vector *src1)
vms_vectorvm_vec_perp (vms_vector *dest, vms_vector *p0, vms_vector *p1, vms_vector *p2)
fixang vm_vec_delta_ang (vms_vector *v0, vms_vector *v1, vms_vector *fvec)
fixang vm_vec_delta_ang_norm (vms_vector *v0, vms_vector *v1, vms_vector *fvec)
vms_matrixsincos_2_matrix (vms_matrix *m, fix sinp, fix cosp, fix sinb, fix cosb, fix sinh, fix cosh)
vms_matrixvm_angles_2_matrix (vms_matrix *m, vms_angvec *a)
vms_matrixvm_vec_ang_2_matrix (vms_matrix *m, vms_vector *v, fixang a)
vms_matrixvm_vector_2_matrix (vms_matrix *m, vms_vector *fvec, vms_vector *uvec, vms_vector *rvec)
vms_matrixvm_vector_2_matrix_norm (vms_matrix *m, vms_vector *fvec, vms_vector *uvec, vms_vector *rvec)
vms_vectorvm_vec_rotate (vms_vector *dest, vms_vector *src, vms_matrix *m)
vms_matrixvm_transpose_matrix (vms_matrix *m)
vms_matrixvm_copy_transpose_matrix (vms_matrix *dest, vms_matrix *src)
vms_matrixvm_matrix_x_matrix (vms_matrix *dest, vms_matrix *src0, vms_matrix *src1)
vms_angvecvm_extract_angles_matrix (vms_angvec *a, vms_matrix *m)
vms_angvecvm_extract_angles_vector_normalized (vms_angvec *a, vms_vector *v)
vms_angvecvm_extract_angles_vector (vms_angvec *a, vms_vector *v)
fix vm_dist_to_plane (vms_vector *checkp, vms_vector *norm, vms_vector *planep)
vms_vectorvm_vec_make (vms_vector *v, fix x, fix y, fix z)

Variables

vms_vector vmd_zero_vector = {0,0,0}
vms_matrix vmd_identity_matrix

Function Documentation

void check_vec vms_vector v  ) 
 

vms_matrix* sincos_2_matrix vms_matrix m,
fix  sinp,
fix  cosp,
fix  sinb,
fix  cosb,
fix  sinh,
fix  cosh
 

vms_matrix* vm_angles_2_matrix vms_matrix m,
vms_angvec a
 

vms_matrix* vm_copy_transpose_matrix vms_matrix dest,
vms_matrix src
 

fix vm_dist_to_plane vms_vector checkp,
vms_vector norm,
vms_vector planep
 

vms_angvec* vm_extract_angles_matrix vms_angvec a,
vms_matrix m
 

vms_angvec* vm_extract_angles_vector vms_angvec a,
vms_vector v
 

vms_angvec* vm_extract_angles_vector_normalized vms_angvec a,
vms_vector v
 

vms_matrix* vm_matrix_x_matrix vms_matrix dest,
vms_matrix src0,
vms_matrix src1
 

vms_matrix* vm_transpose_matrix vms_matrix m  ) 
 

vms_vector* vm_vec_add vms_vector dest,
vms_vector src0,
vms_vector src1
 

vms_vector* vm_vec_add2 vms_vector dest,
vms_vector src
 

vms_matrix* vm_vec_ang_2_matrix vms_matrix m,
vms_vector v,
fixang  a
 

vms_vector* vm_vec_avg vms_vector dest,
vms_vector src0,
vms_vector src1
 

vms_vector* vm_vec_avg4 vms_vector dest,
vms_vector src0,
vms_vector src1,
vms_vector src2,
vms_vector src3
 

fix vm_vec_copy_normalize vms_vector dest,
vms_vector src
 

fix vm_vec_copy_normalize_quick vms_vector dest,
vms_vector src
 

vms_vector* vm_vec_copy_scale vms_vector dest,
vms_vector src,
fix  s
 

vms_vector* vm_vec_crossprod vms_vector dest,
vms_vector src0,
vms_vector src1
 

fixang vm_vec_delta_ang vms_vector v0,
vms_vector v1,
vms_vector fvec
 

fixang vm_vec_delta_ang_norm vms_vector v0,
vms_vector v1,
vms_vector fvec
 

fix vm_vec_dist vms_vector v0,
vms_vector v1
 

fix vm_vec_dist_quick vms_vector v0,
vms_vector v1
 

fix vm_vec_dot3 fix  x,
fix  y,
fix  z,
vms_vector v
 

fix vm_vec_dotprod vms_vector v0,
vms_vector v1
 

fix vm_vec_mag vms_vector v  ) 
 

fix vm_vec_mag_quick vms_vector v  ) 
 

vms_vector* vm_vec_make vms_vector v,
fix  x,
fix  y,
fix  z
 

vms_vector* vm_vec_normal vms_vector dest,
vms_vector p0,
vms_vector p1,
vms_vector p2
 

fix vm_vec_normalize vms_vector v  ) 
 

fix vm_vec_normalize_quick vms_vector v  ) 
 

fix vm_vec_normalized_dir vms_vector dest,
vms_vector end,
vms_vector start
 

fix vm_vec_normalized_dir_quick vms_vector dest,
vms_vector end,
vms_vector start
 

vms_vector* vm_vec_perp vms_vector dest,
vms_vector p0,
vms_vector p1,
vms_vector p2
 

vms_vector* vm_vec_rotate vms_vector dest,
vms_vector src,
vms_matrix m
 

vms_vector* vm_vec_scale vms_vector dest,
fix  s
 

vms_vector* vm_vec_scale2 vms_vector dest,
fix  n,
fix  d
 

vms_vector* vm_vec_scale_add vms_vector dest,
vms_vector src1,
vms_vector src2,
fix  k
 

vms_vector* vm_vec_scale_add2 vms_vector dest,
vms_vector src,
fix  k
 

vms_vector* vm_vec_sub vms_vector dest,
vms_vector src0,
vms_vector src1
 

vms_vector* vm_vec_sub2 vms_vector dest,
vms_vector src
 

vms_matrix* vm_vector_2_matrix vms_matrix m,
vms_vector fvec,
vms_vector uvec,
vms_vector rvec
 

vms_matrix* vm_vector_2_matrix_norm vms_matrix m,
vms_vector fvec,
vms_vector uvec,
vms_vector rvec
 


Variable Documentation

vms_matrix vmd_identity_matrix
 

Initial value:

 {      { f1_0,0,0 },
                                                                                                { 0,f1_0,0 },
                                                                                                {0,0,f1_0} }

vms_vector vmd_zero_vector = {0,0,0}
 


Generated on Mon Aug 28 20:55:34 2006 for D1X-Rebirth by  doxygen 1.4.6