Rumba C++ SDK
Imath::Frustum< T > Class Template Reference

#include <ImathFrustum.h>

Public Member Functions

 Frustum ()
 
 Frustum (const Frustum &)
 
 Frustum (T near, T far, T left, T right, T top, T bottom, bool ortho=false)
 
 Frustum (T near, T far, T fovx, T fovy, T aspect)
 
virtual ~Frustum ()
 
const Frustumoperator= (const Frustum &)
 
bool operator== (const Frustum< T > &src) const
 
bool operator!= (const Frustum< T > &src) const
 
void set (T near, T far, T left, T right, T top, T bottom, bool ortho=false)
 
void set (T near, T far, T fovx, T fovy, T aspect)
 
void modifyNearAndFar (T near, T far)
 
void setOrthographic (bool)
 
bool orthographic () const
 
near () const
 
hither () const
 
far () const
 
yon () const
 
left () const
 
right () const
 
bottom () const
 
top () const
 
void planes (Plane3< T > p[6])
 
void planes (Plane3< T > p[6], const Matrix44< T > &M)
 
fovx () const
 
fovy () const
 
aspect () const
 
Matrix44< T > projectionMatrix () const
 
Frustum< T > window (T left, T right, T top, T bottom) const
 
Line3< T > projectScreenToRay (const Vec2< T > &) const
 
Vec2< T > projectPointToScreen (const Vec3< T > &) const
 
ZToDepth (long zval, long min, long max) const
 
normalizedZToDepth (T zval) const
 
long DepthToZ (T depth, long zmin, long zmax) const
 
worldRadius (const Vec3< T > &p, T radius) const
 
screenRadius (const Vec3< T > &p, T radius) const
 

Protected Member Functions

Vec2< T > screenToLocal (const Vec2< T > &) const
 
Vec2< T > localToScreen (const Vec2< T > &) const
 

Protected Attributes

_near
 
_far
 
_left
 
_right
 
_top
 
_bottom
 
bool _orthographic
 

Constructor & Destructor Documentation

◆ Frustum() [1/4]

template<class T >
Imath::Frustum< T >::Frustum ( )
inline

◆ Frustum() [2/4]

template<class T >
Imath::Frustum< T >::Frustum ( const Frustum< T > &  f)
inline

◆ Frustum() [3/4]

template<class T >
Imath::Frustum< T >::Frustum ( near,
far,
left,
right,
top,
bottom,
bool  ortho = false 
)
inline

◆ Frustum() [4/4]

template<class T >
Imath::Frustum< T >::Frustum ( near,
far,
fovx,
fovy,
aspect 
)
inline

◆ ~Frustum()

template<class T >
Imath::Frustum< T >::~Frustum ( )
virtual

Member Function Documentation

◆ aspect()

template<class T >
T Imath::Frustum< T >::aspect ( ) const

◆ bottom()

template<class T>
T Imath::Frustum< T >::bottom ( ) const
inline

◆ DepthToZ()

template<class T >
long Imath::Frustum< T >::DepthToZ ( depth,
long  zmin,
long  zmax 
) const

◆ far()

template<class T>
T Imath::Frustum< T >::far ( ) const
inline

◆ fovx()

template<class T >
T Imath::Frustum< T >::fovx ( ) const

◆ fovy()

template<class T >
T Imath::Frustum< T >::fovy ( ) const

◆ hither()

template<class T>
T Imath::Frustum< T >::hither ( ) const
inline

◆ left()

template<class T>
T Imath::Frustum< T >::left ( ) const
inline

◆ localToScreen()

template<class T >
Vec2< T > Imath::Frustum< T >::localToScreen ( const Vec2< T > &  p) const
protected

◆ modifyNearAndFar()

template<class T >
void Imath::Frustum< T >::modifyNearAndFar ( near,
far 
)

◆ near()

template<class T>
T Imath::Frustum< T >::near ( ) const
inline

◆ normalizedZToDepth()

template<class T >
T Imath::Frustum< T >::normalizedZToDepth ( zval) const

◆ operator!=()

template<class T >
bool Imath::Frustum< T >::operator!= ( const Frustum< T > &  src) const
inline

◆ operator=()

template<class T >
const Frustum< T > & Imath::Frustum< T >::operator= ( const Frustum< T > &  f)

◆ operator==()

template<class T >
bool Imath::Frustum< T >::operator== ( const Frustum< T > &  src) const

◆ orthographic()

template<class T>
bool Imath::Frustum< T >::orthographic ( ) const
inline

◆ planes() [1/2]

template<class T >
void Imath::Frustum< T >::planes ( Plane3< T >  p[6])

◆ planes() [2/2]

template<class T >
void Imath::Frustum< T >::planes ( Plane3< T >  p[6],
const Matrix44< T > &  M 
)

◆ projectionMatrix()

template<class T >
Matrix44< T > Imath::Frustum< T >::projectionMatrix ( ) const

◆ projectPointToScreen()

template<class T >
Vec2< T > Imath::Frustum< T >::projectPointToScreen ( const Vec3< T > &  point) const

◆ projectScreenToRay()

template<class T >
Line3< T > Imath::Frustum< T >::projectScreenToRay ( const Vec2< T > &  p) const

◆ right()

template<class T>
T Imath::Frustum< T >::right ( ) const
inline

◆ screenRadius()

template<class T >
T Imath::Frustum< T >::screenRadius ( const Vec3< T > &  p,
radius 
) const

◆ screenToLocal()

template<class T >
Vec2< T > Imath::Frustum< T >::screenToLocal ( const Vec2< T > &  s) const
protected

◆ set() [1/2]

template<class T >
void Imath::Frustum< T >::set ( near,
far,
left,
right,
top,
bottom,
bool  ortho = false 
)

◆ set() [2/2]

template<class T >
void Imath::Frustum< T >::set ( near,
far,
fovx,
fovy,
aspect 
)

◆ setOrthographic()

template<class T >
void Imath::Frustum< T >::setOrthographic ( bool  ortho)

◆ top()

template<class T>
T Imath::Frustum< T >::top ( ) const
inline

◆ window()

template<class T >
Frustum< T > Imath::Frustum< T >::window ( left,
right,
top,
bottom 
) const

◆ worldRadius()

template<class T >
T Imath::Frustum< T >::worldRadius ( const Vec3< T > &  p,
radius 
) const

◆ yon()

template<class T>
T Imath::Frustum< T >::yon ( ) const
inline

◆ ZToDepth()

template<class T >
T Imath::Frustum< T >::ZToDepth ( long  zval,
long  min,
long  max 
) const

Member Data Documentation

◆ _bottom

template<class T>
T Imath::Frustum< T >::_bottom
protected

◆ _far

template<class T>
T Imath::Frustum< T >::_far
protected

◆ _left

template<class T>
T Imath::Frustum< T >::_left
protected

◆ _near

template<class T>
T Imath::Frustum< T >::_near
protected

◆ _orthographic

template<class T>
bool Imath::Frustum< T >::_orthographic
protected

◆ _right

template<class T>
T Imath::Frustum< T >::_right
protected

◆ _top

template<class T>
T Imath::Frustum< T >::_top
protected

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