Bike-X  0.8
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
OVR::Vector3< T > Class Template Reference

#include "OVR_Math.h"

Inheritance diagram for OVR::Vector3< T >:
Inheritance graph
Collaboration diagram for OVR::Vector3< T >:
Collaboration graph

Public Types

typedef CompatibleTypes
< Vector3< T > >::Type 
CompatibleType
 

Public Member Functions

 Vector3 ()
 
 Vector3 (T x_, T y_, T z_=0)
 
 Vector3 (T s)
 
 Vector3 (const Vector3< typename Math< T >::OtherFloatType > &src)
 
 Vector3 (const CompatibleType &s)
 
 operator const CompatibleType & () const
 
bool operator== (const Vector3 &b) const
 
bool operator!= (const Vector3 &b) const
 
Vector3 operator+ (const Vector3 &b) const
 
Vector3operator+= (const Vector3 &b)
 
Vector3 operator- (const Vector3 &b) const
 
Vector3operator-= (const Vector3 &b)
 
Vector3 operator- () const
 
Vector3 operator* (T s) const
 
Vector3operator*= (T s)
 
Vector3 operator/ (T s) const
 
Vector3operator/= (T s)
 
bool Compare (const Vector3 &b, T tolerance=Mathf::Tolerance)
 
T & operator[] (int idx)
 
const T & operator[] (int idx) const
 
Vector3 EntrywiseMultiply (const Vector3 &b) const
 
Vector3 operator* (const Vector3 &b) const
 
Vector3 operator/ (const Vector3 &b) const
 
Dot (const Vector3 &b) const
 
Vector3 Cross (const Vector3 &b) const
 
Angle (const Vector3 &b) const
 
LengthSq () const
 
Length () const
 
DistanceSq (Vector3 const &b) const
 
Distance (Vector3 const &b) const
 
bool IsNormalized () const
 
void Normalize ()
 
Vector3 Normalized () const
 
Vector3 Lerp (const Vector3 &b, T f) const
 
Vector3 ProjectTo (const Vector3 &b) const
 
Vector3 ProjectToPlane (const Vector3 &normal) const
 

Static Public Member Functions

static Vector3 Min (const Vector3 &a, const Vector3 &b)
 
static Vector3 Max (const Vector3 &a, const Vector3 &b)
 

Data Fields

x
 
y
 
z
 

Detailed Description

template<class T>
class OVR::Vector3< T >

Definition at line 125 of file OVR_Math.h.

Member Typedef Documentation

template<class T>
typedef CompatibleTypes<Vector3<T> >::Type OVR::Vector3< T >::CompatibleType

Definition at line 407 of file OVR_Math.h.

Constructor & Destructor Documentation

template<class T>
OVR::Vector3< T >::Vector3 ( )
inline

Definition at line 399 of file OVR_Math.h.

template<class T>
OVR::Vector3< T >::Vector3 ( x_,
y_,
z_ = 0 
)
inline

Definition at line 400 of file OVR_Math.h.

template<class T>
OVR::Vector3< T >::Vector3 ( s)
inlineexplicit

Definition at line 401 of file OVR_Math.h.

template<class T>
OVR::Vector3< T >::Vector3 ( const Vector3< typename Math< T >::OtherFloatType > &  src)
inlineexplicit

Definition at line 402 of file OVR_Math.h.

template<class T>
OVR::Vector3< T >::Vector3 ( const CompatibleType s)
inline

Definition at line 409 of file OVR_Math.h.

Member Function Documentation

template<class T>
T OVR::Vector3< T >::Angle ( const Vector3< T > &  b) const
inline

Definition at line 497 of file OVR_Math.h.

template<class T>
bool OVR::Vector3< T >::Compare ( const Vector3< T > &  b,
tolerance = Mathf::Tolerance 
)
inline

Definition at line 450 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::Cross ( const Vector3< T > &  b) const
inline

Definition at line 492 of file OVR_Math.h.

template<class T>
T OVR::Vector3< T >::Distance ( Vector3< T > const &  b) const
inline

Definition at line 515 of file OVR_Math.h.

template<class T>
T OVR::Vector3< T >::DistanceSq ( Vector3< T > const &  b) const
inline

Definition at line 512 of file OVR_Math.h.

template<class T>
T OVR::Vector3< T >::Dot ( const Vector3< T > &  b) const
inline

Definition at line 487 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::EntrywiseMultiply ( const Vector3< T > &  b) const
inline

Definition at line 470 of file OVR_Math.h.

template<class T>
bool OVR::Vector3< T >::IsNormalized ( ) const
inline

Definition at line 518 of file OVR_Math.h.

template<class T>
T OVR::Vector3< T >::Length ( ) const
inline

Definition at line 509 of file OVR_Math.h.

template<class T>
T OVR::Vector3< T >::LengthSq ( ) const
inline

Definition at line 506 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::Lerp ( const Vector3< T > &  b,
f 
) const
inline

Definition at line 538 of file OVR_Math.h.

template<class T>
static Vector3 OVR::Vector3< T >::Max ( const Vector3< T > &  a,
const Vector3< T > &  b 
)
inlinestatic

Definition at line 442 of file OVR_Math.h.

template<class T>
static Vector3 OVR::Vector3< T >::Min ( const Vector3< T > &  a,
const Vector3< T > &  b 
)
inlinestatic

Definition at line 436 of file OVR_Math.h.

template<class T>
void OVR::Vector3< T >::Normalize ( )
inline

Definition at line 521 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::Normalized ( ) const
inline

Definition at line 529 of file OVR_Math.h.

template<class T>
OVR::Vector3< T >::operator const CompatibleType & ( ) const
inline

Definition at line 411 of file OVR_Math.h.

template<class T>
bool OVR::Vector3< T >::operator!= ( const Vector3< T > &  b) const
inline

Definition at line 418 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::operator* ( s) const
inline

Definition at line 427 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::operator* ( const Vector3< T > &  b) const
inline

Definition at line 475 of file OVR_Math.h.

template<class T>
Vector3& OVR::Vector3< T >::operator*= ( s)
inline

Definition at line 428 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::operator+ ( const Vector3< T > &  b) const
inline

Definition at line 420 of file OVR_Math.h.

template<class T>
Vector3& OVR::Vector3< T >::operator+= ( const Vector3< T > &  b)
inline

Definition at line 421 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::operator- ( const Vector3< T > &  b) const
inline

Definition at line 422 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::operator- ( ) const
inline

Definition at line 424 of file OVR_Math.h.

template<class T>
Vector3& OVR::Vector3< T >::operator-= ( const Vector3< T > &  b)
inline

Definition at line 423 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::operator/ ( s) const
inline

Definition at line 430 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::operator/ ( const Vector3< T > &  b) const
inline

Definition at line 479 of file OVR_Math.h.

template<class T>
Vector3& OVR::Vector3< T >::operator/= ( s)
inline

Definition at line 432 of file OVR_Math.h.

template<class T>
bool OVR::Vector3< T >::operator== ( const Vector3< T > &  b) const
inline

Definition at line 417 of file OVR_Math.h.

template<class T>
T& OVR::Vector3< T >::operator[] ( int  idx)
inline

Definition at line 457 of file OVR_Math.h.

template<class T>
const T& OVR::Vector3< T >::operator[] ( int  idx) const
inline

Definition at line 463 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::ProjectTo ( const Vector3< T > &  b) const
inline

Definition at line 542 of file OVR_Math.h.

template<class T>
Vector3 OVR::Vector3< T >::ProjectToPlane ( const Vector3< T > &  normal) const
inline

Definition at line 550 of file OVR_Math.h.

Field Documentation

template<class T>
T OVR::Vector3< T >::x

Definition at line 397 of file OVR_Math.h.

template<class T>
T OVR::Vector3< T >::y

Definition at line 397 of file OVR_Math.h.

template<class T>
T OVR::Vector3< T >::z

Definition at line 397 of file OVR_Math.h.


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