OGRE  2.0
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Ogre::Sphere Class Reference

A sphere primitive, mostly used for bounds checking. More...

#include <OgreSphere.h>

+ Collaboration diagram for Ogre::Sphere:

Public Member Functions

 Sphere ()
 Standard constructor - creates a unit sphere around the origin. More...
 
 Sphere (const Vector3 &center, Real radius)
 Constructor allowing arbitrary spheres. More...
 
const Vector3getCenter (void) const
 Returns the center point of the sphere. More...
 
Real getRadius (void) const
 Returns the radius of the sphere. More...
 
bool intersects (const Sphere &s) const
 Returns whether or not this sphere intersects another sphere. More...
 
bool intersects (const AxisAlignedBox &box) const
 Returns whether or not this sphere intersects a box. More...
 
bool intersects (const Plane &plane) const
 Returns whether or not this sphere intersects a plane. More...
 
bool intersects (const Vector3 &v) const
 Returns whether or not this sphere intersects a point. More...
 
void merge (const Sphere &oth)
 Merges another Sphere into the current sphere. More...
 
void setCenter (const Vector3 &center)
 Sets the center point of the sphere. More...
 
void setRadius (Real radius)
 Sets the radius of the sphere. More...
 

Protected Attributes

Vector3 mCenter
 
Real mRadius
 

Detailed Description

A sphere primitive, mostly used for bounds checking.

Remarks
A sphere in math texts is normally represented by the function x^2 + y^2 + z^2 = r^2 (for sphere's centered on the origin). Ogre stores spheres simply as a center point and a radius.

Definition at line 51 of file OgreSphere.h.

Constructor & Destructor Documentation

Ogre::Sphere::Sphere ( )
inline

Standard constructor - creates a unit sphere around the origin.

Definition at line 58 of file OgreSphere.h.

Ogre::Sphere::Sphere ( const Vector3 center,
Real  radius 
)
inline

Constructor allowing arbitrary spheres.

Parameters
centerThe center point of the sphere.
radiusThe radius of the sphere.

Definition at line 63 of file OgreSphere.h.

Member Function Documentation

const Vector3& Ogre::Sphere::getCenter ( void  ) const
inline

Returns the center point of the sphere.

Definition at line 73 of file OgreSphere.h.

Referenced by Ogre::PlaneBoundedVolume::intersects(), merge(), Ogre::ArraySphere::setAll(), and Ogre::ArraySphere::setFromSphere().

Real Ogre::Sphere::getRadius ( void  ) const
inline

Returns the radius of the sphere.

Definition at line 67 of file OgreSphere.h.

Referenced by Ogre::PlaneBoundedVolume::intersects(), merge(), Ogre::ArraySphere::setAll(), and Ogre::ArraySphere::setFromSphere().

bool Ogre::Sphere::intersects ( const Sphere s) const
inline

Returns whether or not this sphere intersects another sphere.

Definition at line 79 of file OgreSphere.h.

References mCenter, mRadius, and Ogre::Math::Sqr().

bool Ogre::Sphere::intersects ( const AxisAlignedBox box) const
inline

Returns whether or not this sphere intersects a box.

Definition at line 85 of file OgreSphere.h.

References Ogre::Math::intersects().

bool Ogre::Sphere::intersects ( const Plane plane) const
inline

Returns whether or not this sphere intersects a plane.

Definition at line 90 of file OgreSphere.h.

References Ogre::Math::intersects().

bool Ogre::Sphere::intersects ( const Vector3 v) const
inline

Returns whether or not this sphere intersects a point.

Definition at line 95 of file OgreSphere.h.

References Ogre::Math::Sqr().

void Ogre::Sphere::merge ( const Sphere oth)
inline

Merges another Sphere into the current sphere.

Definition at line 100 of file OgreSphere.h.

References getCenter(), getRadius(), Ogre::Math::Sqr(), Ogre::Math::Sqrt(), and Ogre::Vector3::squaredLength().

void Ogre::Sphere::setCenter ( const Vector3 center)
inline

Sets the center point of the sphere.

Definition at line 76 of file OgreSphere.h.

Referenced by Ogre::ArraySphere::getAsSphere().

void Ogre::Sphere::setRadius ( Real  radius)
inline

Sets the radius of the sphere.

Definition at line 70 of file OgreSphere.h.

Referenced by Ogre::ArraySphere::getAsSphere().

Member Data Documentation

Vector3 Ogre::Sphere::mCenter
protected

Definition at line 55 of file OgreSphere.h.

Referenced by intersects().

Real Ogre::Sphere::mRadius
protected

Definition at line 54 of file OgreSphere.h.

Referenced by intersects().


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