Sirikata
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes
Sirikata::SolidAngle Class Reference

#include <SolidAngle.hpp>

Collaboration diagram for Sirikata::SolidAngle:

List of all members.

Public Member Functions

 SolidAngle ()
 SolidAngle (float sa)
 SolidAngle (const SolidAngle &cpy)
 ~SolidAngle ()
SolidAngle operator+ (const SolidAngle &rhs) const
SolidAngleoperator+= (const SolidAngle &rhs)
SolidAngle operator- (const SolidAngle &rhs) const
SolidAngleoperator-= (const SolidAngle &rhs)
SolidAngle operator* (float rhs) const
SolidAngleoperator*= (float rhs)
SolidAngle operator/ (float rhs) const
SolidAngleoperator/= (float rhs)
bool operator< (const SolidAngle &rhs) const
bool operator== (const SolidAngle &rhs) const
bool operator<= (const SolidAngle &rhs) const
bool operator> (const SolidAngle &rhs) const
bool operator>= (const SolidAngle &rhs) const
bool operator!= (const SolidAngle &rhs) const
float asFloat () const
float maxDistance (float obj_radius) const
 Get the maximum distance from an object of the given radius that could result in this solid angle.

Static Public Member Functions

static SolidAngle fromCenterRadius (const Vector3< float > &to_center, float radius)
 Get the solid angle represented by the circular area with the given vector to its center and radius.

Static Public Attributes

static const float Pi = 3.1415926536f
static const SolidAngle Min = SolidAngle(SolidAngle::MinVal)
static const SolidAngle Max = SolidAngle(SolidAngle::MaxVal)
static const float MinVal = 0.0f
static const float MaxVal = 4.0f*SolidAngle::Pi

Protected Member Functions

void clamp ()

Protected Attributes

float mSolidAngle

Constructor & Destructor Documentation

Sirikata::SolidAngle::SolidAngle ( )
Sirikata::SolidAngle::SolidAngle ( float  sa) [explicit]

References clamp().

Sirikata::SolidAngle::SolidAngle ( const SolidAngle cpy)
Sirikata::SolidAngle::~SolidAngle ( )

Member Function Documentation

float Sirikata::SolidAngle::asFloat ( ) const
void Sirikata::SolidAngle::clamp ( ) [protected]
SolidAngle Sirikata::SolidAngle::fromCenterRadius ( const Vector3< float > &  to_center,
float  radius 
) [static]

Get the solid angle represented by the circular area with the given vector to its center and radius.

References Sirikata::Vector3< scalar >::length(), MaxVal, Pi, and SolidAngle().

float Sirikata::SolidAngle::maxDistance ( float  obj_radius) const

Get the maximum distance from an object of the given radius that could result in this solid angle.

Effectively the inverse of fromCenterRadius.

References mSolidAngle, and Pi.

bool Sirikata::SolidAngle::operator!= ( const SolidAngle rhs) const

References mSolidAngle.

SolidAngle Sirikata::SolidAngle::operator* ( float  rhs) const

References mSolidAngle, and SolidAngle().

SolidAngle & Sirikata::SolidAngle::operator*= ( float  rhs)

References clamp(), and mSolidAngle.

SolidAngle Sirikata::SolidAngle::operator+ ( const SolidAngle rhs) const

References mSolidAngle, and SolidAngle().

SolidAngle & Sirikata::SolidAngle::operator+= ( const SolidAngle rhs)

References clamp(), and mSolidAngle.

SolidAngle Sirikata::SolidAngle::operator- ( const SolidAngle rhs) const

References mSolidAngle, and SolidAngle().

SolidAngle & Sirikata::SolidAngle::operator-= ( const SolidAngle rhs)

References clamp(), and mSolidAngle.

SolidAngle Sirikata::SolidAngle::operator/ ( float  rhs) const

References mSolidAngle, and SolidAngle().

SolidAngle & Sirikata::SolidAngle::operator/= ( float  rhs)

References clamp(), and mSolidAngle.

bool Sirikata::SolidAngle::operator< ( const SolidAngle rhs) const

References mSolidAngle.

bool Sirikata::SolidAngle::operator<= ( const SolidAngle rhs) const

References mSolidAngle.

bool Sirikata::SolidAngle::operator== ( const SolidAngle rhs) const

References mSolidAngle.

bool Sirikata::SolidAngle::operator> ( const SolidAngle rhs) const

References mSolidAngle.

bool Sirikata::SolidAngle::operator>= ( const SolidAngle rhs) const

References mSolidAngle.


Member Data Documentation

const float Sirikata::SolidAngle::MaxVal = 4.0f*SolidAngle::Pi [static]

Referenced by clamp(), and fromCenterRadius().

const float Sirikata::SolidAngle::MinVal = 0.0f [static]

Referenced by clamp().

const float Sirikata::SolidAngle::Pi = 3.1415926536f [static]

Referenced by fromCenterRadius(), and maxDistance().


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