Intersection.h File Reference

#include "math/Vector3.h"
#include "math/line.h"
Include dependency graph for Intersection.h:

Go to the source code of this file.

Functions

void point_for_device_point (Vector3 &point, const Matrix4 &device2object, const float x, const float y, const float z)
void ray_for_device_point (Ray &ray, const Matrix4 &device2object, const float x, const float y)
bool sphere_intersect_ray (const Vector3 &origin, float radius, const Ray &ray, Vector3 &intersection)
void ray_intersect_ray (const Ray &ray, const Ray &other, Vector3 &intersection)
void point_on_sphere (Vector3 &point, const Matrix4 &device2object, const float x, const float y)
void point_on_axis (Vector3 &point, const Vector3 &axis, const Matrix4 &device2object, const float x, const float y)
void point_on_plane (Vector3 &point, const Matrix4 &device2object, const float x, const float y)
float angle_between (const Vector3 &a, const Vector3 &b)
 a and b are unit vectors .. returns angle in radians
void constrain_to_axis (Vector3 &vec, const Vector3 &axis)
 axis is a unit vector
float angle_for_axis (const Vector3 &a, const Vector3 &b, const Vector3 &axis)
 a and b are unit vectors .. a and b must be orthogonal to axis .. returns angle in radians
float distance_for_axis (const Vector3 &a, const Vector3 &b, const Vector3 &axis)

Function Documentation

float angle_between ( const Vector3 a,
const Vector3 b 
) [inline]

a and b are unit vectors .. returns angle in radians

Definition at line 18 of file Intersection.h.

float angle_for_axis ( const Vector3 a,
const Vector3 b,
const Vector3 axis 
)

a and b are unit vectors .. a and b must be orthogonal to axis .. returns angle in radians

void constrain_to_axis ( Vector3 vec,
const Vector3 axis 
) [inline]

axis is a unit vector

Definition at line 24 of file Intersection.h.

References BasicVector3< Element >::dot(), and BasicVector3< Element >::getNormalised().

float distance_for_axis ( const Vector3 a,
const Vector3 b,
const Vector3 axis 
)
void point_for_device_point ( Vector3 point,
const Matrix4 &  device2object,
const float  x,
const float  y,
const float  z 
)
void point_on_axis ( Vector3 point,
const Vector3 axis,
const Matrix4 &  device2object,
const float  x,
const float  y 
)
void point_on_plane ( Vector3 point,
const Matrix4 &  device2object,
const float  x,
const float  y 
)
void point_on_sphere ( Vector3 point,
const Matrix4 &  device2object,
const float  x,
const float  y 
)
void ray_for_device_point ( Ray &  ray,
const Matrix4 &  device2object,
const float  x,
const float  y 
)
void ray_intersect_ray ( const Ray &  ray,
const Ray &  other,
Vector3 intersection 
)
bool sphere_intersect_ray ( const Vector3 origin,
float  radius,
const Ray &  ray,
Vector3 intersection 
)

Generated by  doxygen 1.6.2