51#define VECTOR3D_DONT_INTERSECT -2
53#define VECTOR3D_COLLINEAR -1
55#define VECTOR3D_DO_INTERSECT 0
61#define VECTOR3D_SET(VECTOR, X, Y, Z) \
114#define copy_point(__src_, __dst_) \
115 memcpy(__dst_, __src_, sizeof(VECTOR3D));
VECTOR3D gravity
gx , gy , gz gravity
VECTOR3D speed
vx,vy,vz actual speed
VECTOR3D orientation
ax,ay,az actual rotation position
VECTOR3D position
x,y,z actual position
int type
optionnal type id
VECTOR3D acceleration
ax,ay,az actual acceleration
VECTOR3D angular_acceleration
rax,ray,raz actual angular acceleration
VECTOR3D angular_speed
rvx,rvy,rvz actual angular speed
time_t delta_t
last delta_t used
double vector_dot_product(VECTOR3D *vec1, VECTOR3D *vec2)
dot product
double distance(VECTOR3D *p1, VECTOR3D *p2)
distance between two points
double VECTOR3D[3]
struct of a point
double vector_angle_between(VECTOR3D *vec1, VECTOR3D *vec2)
vector angle with other vector
int update_physics_position_nb(PHYSICS *object, int it, double delta_t)
update component[ it ] of a VECTOR3D
int update_physics_position_reverse(PHYSICS *object, double delta_t)
update the position of an object, using the delta time T to reverse update positions
int update_physics_position_reverse_nb(PHYSICS *object, int it, double delta_t)
update component[ it ] of a VECTOR3D, reversed time
double vector_normalize(VECTOR3D *vec)
vector normalize
int update_physics_position(PHYSICS *object, double delta_t)
update the position of an object, using the delta time T to update positions
int vector_intersect(VECTOR3D *p0, VECTOR3D *p1, VECTOR3D *p2, VECTOR3D *p3, VECTOR3D *px)
compute if two vector are colliding, storing the resulting point in px
structure of the physics of an object
Common headers and low-level functions & define.