Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FX::FXSpheref Class Reference

Spherical bounds. More...

#include <FXSpheref.h>

List of all members.

Public Member Functions

 FXSpheref ()
 FXSpheref (const FXSpheref &sphere)
 FXSpheref (const FXVec3f &cen, FXfloat rad=0.0f)
 FXSpheref (FXfloat x, FXfloat y, FXfloat z, FXfloat rad=0.0f)
 FXSpheref (const FXRangef &bounds)
FXSpheref & operator= (const FXSpheref &sphere)
FXSpheref & set (const FXSpheref &sphere)
FXSpheref & set (const FXVec3f &cen, FXfloat rad)
FXSpheref & set (FXfloat x, FXfloat y, FXfloat z, FXfloat rad)
bool operator== (const FXSpheref &s) const
bool operator!= (const FXSpheref &s) const
FXfloat diameter () const
bool empty () const
bool contains (FXfloat x, FXfloat y, FXfloat z) const
bool contains (const FXVec3f &p) const
bool contains (const FXRangef &box) const
bool contains (const FXSpheref &sphere) const
FXSpheref & include (FXfloat x, FXfloat y, FXfloat z)
FXSpheref & include (const FXVec3f &p)
FXSpheref & includeInRadius (FXfloat x, FXfloat y, FXfloat z)
FXSpheref & includeInRadius (const FXVec3f &p)
FXSpheref & include (const FXRangef &box)
FXSpheref & includeInRadius (const FXRangef &box)
FXSpheref & include (const FXSpheref &sphere)
FXSpheref & includeInRadius (const FXSpheref &sphere)
FXint intersect (const FXVec4f &plane) const
bool intersect (const FXVec3f &u, const FXVec3f &v) const

Public Attributes

FXVec3f center
FXfloat radius

Friends

bool overlap (const FXRangef &a, const FXSpheref &b)
bool overlap (const FXSpheref &a, const FXRangef &b)
bool overlap (const FXSpheref &a, const FXSpheref &b)
FXStream & operator<< (FXStream &store, const FXSpheref &sphere)
FXStream & operator>> (FXStream &store, FXSpheref &sphere)


Detailed Description

Spherical bounds.


Constructor & Destructor Documentation

FX::FXSpheref::FXSpheref (   )  [inline]
 

Default constructor.

FX::FXSpheref::FXSpheref (  const FXSpheref &  sphere  )  [inline]
 

Copy constructor.

FX::FXSpheref::FXSpheref (  const FXVec3f &  cen,
FXfloat  rad = 0.0f
)  [inline]
 

Initialize from center and radius.

FX::FXSpheref::FXSpheref (  FXfloat  x,
FXfloat  y,
FXfloat  z,
FXfloat  rad = 0.0f
)  [inline]
 

Initialize from center and radius.

FX::FXSpheref::FXSpheref (  const FXRangef &  bounds  ) 
 

Initialize sphere to fully contain the given bounding box.


Member Function Documentation

FXSpheref& FX::FXSpheref::operator= (  const FXSpheref &  sphere  )  [inline]
 

Assignment.

FXSpheref& FX::FXSpheref::set (  const FXSpheref &  sphere  )  [inline]
 

Set value from another sphere.

FXSpheref& FX::FXSpheref::set (  const FXVec3f &  cen,
FXfloat  rad
)  [inline]
 

Set value from center and radius.

FXSpheref& FX::FXSpheref::set (  FXfloat  x,
FXfloat  y,
FXfloat  z,
FXfloat  rad
)  [inline]
 

Set value from center and radius.

bool FX::FXSpheref::operator== (  const FXSpheref &  s  )  const [inline]
 

Comparison.

bool FX::FXSpheref::operator!= (  const FXSpheref &  s  )  const [inline]
 

FXfloat FX::FXSpheref::diameter (   )  const [inline]
 

Diameter of sphere.

bool FX::FXSpheref::empty (   )  const [inline]
 

Test if empty.

bool FX::FXSpheref::contains (  FXfloat  x,
FXfloat  y,
FXfloat  z
)  const
 

Test if sphere contains point x,y,z.

bool FX::FXSpheref::contains (  const FXVec3f &  p  )  const
 

Test if sphere contains point p.

bool FX::FXSpheref::contains (  const FXRangef &  box  )  const
 

Test if sphere properly contains another box.

bool FX::FXSpheref::contains (  const FXSpheref &  sphere  )  const
 

Test if sphere properly contains another sphere.

FXSpheref& FX::FXSpheref::include (  FXfloat  x,
FXfloat  y,
FXfloat  z
) 
 

Include point.

FXSpheref& FX::FXSpheref::include (  const FXVec3f &  p  ) 
 

Include point.

FXSpheref& FX::FXSpheref::includeInRadius (  FXfloat  x,
FXfloat  y,
FXfloat  z
) 
 

Expand radius to include point.

FXSpheref& FX::FXSpheref::includeInRadius (  const FXVec3f &  p  ) 
 

Expand radius to include point.

FXSpheref& FX::FXSpheref::include (  const FXRangef &  box  ) 
 

Include given range into this one.

FXSpheref& FX::FXSpheref::includeInRadius (  const FXRangef &  box  ) 
 

Expand radius to include box.

FXSpheref& FX::FXSpheref::include (  const FXSpheref &  sphere  ) 
 

Include given sphere into this one.

FXSpheref& FX::FXSpheref::includeInRadius (  const FXSpheref &  sphere  ) 
 

Expand radius to include sphere.

FXint FX::FXSpheref::intersect (  const FXVec4f &  plane  )  const
 

Intersect sphere with normalized plane ax+by+cz+w; returns -1,0,+1.

bool FX::FXSpheref::intersect (  const FXVec3f &  u,
const FXVec3f &  v
)  const
 

Intersect sphere with ray u-v.


Friends And Related Function Documentation

bool overlap (  const FXRangef &  a,
const FXSpheref &  b
)  [friend]
 

Test if box overlaps with sphere.

bool overlap (  const FXSpheref &  a,
const FXRangef &  b
)  [friend]
 

Test if sphere overlaps with box.

bool overlap (  const FXSpheref &  a,
const FXSpheref &  b
)  [friend]
 

Test if spheres overlap.

FXStream& operator<< (  FXStream &  store,
const FXSpheref &  sphere
)  [friend]
 

Save object to a stream.

FXStream& operator>> (  FXStream &  store,
FXSpheref &  sphere
)  [friend]
 

Load object from a stream.


Member Data Documentation

FXVec3f FX::FXSpheref::center
 

FXfloat FX::FXSpheref::radius
 

Copyright © 1997-2005 Jeroen van der Zijp