Public Member Functions | Public Attributes | Friends | List of all members
ion::ray3< T > Class Template Reference

3D ray More...

#include <ray3.h>

Public Member Functions

 ray3 ()
 
 ray3 (vec3< T > const &Origin, vec3< T > const &Direction)
 
vec3< TGetPoint (T const Parameter) const
 
void Transform (glm::mat4 const &Matrix)
 
ray3 GetTransformed (glm::mat4 const &Matrix) const
 
bool IntersectsBox (box3< T > const &Box, T *Intersection) const
 
bool IntersectsBox (box3< T > const &Box) const
 
bool IntersectsSphere (vec3< T > const &Center, T const Radius, T *Intersection=nullptr) const
 
bool IntersectsTriangle (vec3f const &v0, vec3f const &v1, vec3f const &v2, T *Intersection) const
 
bool operator== (ray3< T > const &other) const
 
bool operator!= (ray3< T > const &other) const
 

Public Attributes

vec3< TOrigin
 
vec3< TDirection
 

Friends

std::ostream & operator<< (std::ostream &stream, ray3< T > const &ray)
 

Detailed Description

template<typename T>
class ion::ray3< T >

3D ray

Constructor & Destructor Documentation

template<typename T>
ion::ray3< T >::ray3 ( )
inline
template<typename T>
ion::ray3< T >::ray3 ( vec3< T > const &  Origin,
vec3< T > const &  Direction 
)
inline

Member Function Documentation

template<typename T>
vec3<T> ion::ray3< T >::GetPoint ( T const  Parameter) const
inline
template<typename T>
ray3 ion::ray3< T >::GetTransformed ( glm::mat4 const &  Matrix) const
inline
template<typename T>
bool ion::ray3< T >::IntersectsBox ( box3< T > const &  Box,
T Intersection 
) const
inline
template<typename T>
bool ion::ray3< T >::IntersectsBox ( box3< T > const &  Box) const
inline
template<typename T>
bool ion::ray3< T >::IntersectsSphere ( vec3< T > const &  Center,
T const  Radius,
T Intersection = nullptr 
) const
inline
template<typename T>
bool ion::ray3< T >::IntersectsTriangle ( vec3f const &  v0,
vec3f const &  v1,
vec3f const &  v2,
T Intersection 
) const
inline
template<typename T>
bool ion::ray3< T >::operator!= ( ray3< T > const &  other) const
inline
template<typename T>
bool ion::ray3< T >::operator== ( ray3< T > const &  other) const
inline
template<typename T>
void ion::ray3< T >::Transform ( glm::mat4 const &  Matrix)
inline

Friends And Related Function Documentation

template<typename T>
std::ostream& operator<< ( std::ostream &  stream,
ray3< T > const &  ray 
)
friend

Member Data Documentation

template<typename T>
vec3<T> ion::ray3< T >::Direction
template<typename T>
vec3<T> ion::ray3< T >::Origin

The documentation for this class was generated from the following file: