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

FX::FXSphered Class Reference

Spherical bounds. More...

#include <FXSphered.h>

List of all members.

Public Member Functions

 FXSphered ()
 FXSphered (const FXSphered &sphere)
 FXSphered (const FXVec3d &cen, FXdouble rad=0.0)
 FXSphered (FXdouble x, FXdouble y, FXdouble z, FXdouble rad=0.0)
 FXSphered (const FXRanged &bounds)
FXSphered & operator= (const FXSphered &sphere)
FXdouble diameter () const
FXbool empty () const
FXbool contains (FXdouble x, FXdouble y, FXdouble z) const
FXbool contains (const FXVec3d &p) const
FXbool contains (const FXRanged &box) const
FXbool contains (const FXSphered &sphere) const
FXSphered & include (FXdouble x, FXdouble y, FXdouble z)
FXSphered & include (const FXVec3d &p)
FXSphered & include (const FXRanged &box)
FXSphered & include (const FXSphered &sphere)
FXint intersect (const FXVec4d &plane) const
FXbool intersect (const FXVec3d &u, const FXVec3d &v) const

Public Attributes

FXVec3d center
FXdouble radius

Friends

FXbool overlap (const FXRanged &a, const FXSphered &b)
FXbool overlap (const FXSphered &a, const FXRanged &b)
FXbool overlap (const FXSphered &a, const FXSphered &b)
FXStream & operator<< (FXStream &store, const FXSphered &sphere)
FXStream & operator>> (FXStream &store, FXSphered &sphere)


Detailed Description

Spherical bounds.


Constructor & Destructor Documentation

FX::FXSphered::FXSphered (   )  [inline]
 

Default constructor.

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

Copy constructor.

FX::FXSphered::FXSphered (  const FXVec3d &  cen,
FXdouble  rad = 0.0
)  [inline]
 

Initialize from center and radius.

FX::FXSphered::FXSphered (  FXdouble  x,
FXdouble  y,
FXdouble  z,
FXdouble  rad = 0.0
)  [inline]
 

Initialize from center and radius.

FX::FXSphered::FXSphered (  const FXRanged &  bounds  ) 
 

Initialize sphere to fully contain the given bounding box.


Member Function Documentation

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

Assignment.

FXdouble FX::FXSphered::diameter (   )  const [inline]
 

Diameter of sphere.

FXbool FX::FXSphered::empty (   )  const [inline]
 

Test if empty.

FXbool FX::FXSphered::contains (  FXdouble  x,
FXdouble  y,
FXdouble  z
)  const
 

Test if sphere contains point x,y,z.

FXbool FX::FXSphered::contains (  const FXVec3d &  p  )  const
 

Test if sphere contains point p.

FXbool FX::FXSphered::contains (  const FXRanged &  box  )  const
 

Test if sphere contains another box.

FXbool FX::FXSphered::contains (  const FXSphered &  sphere  )  const
 

Test if sphere contains another sphere.

FXSphered& FX::FXSphered::include (  FXdouble  x,
FXdouble  y,
FXdouble  z
) 
 

Include point.

FXSphered& FX::FXSphered::include (  const FXVec3d &  p  ) 
 

Include point.

FXSphered& FX::FXSphered::include (  const FXRanged &  box  ) 
 

Include given range into this one.

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

Include given sphere into this one.

FXint FX::FXSphered::intersect (  const FXVec4d &  plane  )  const
 

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

FXbool FX::FXSphered::intersect (  const FXVec3d &  u,
const FXVec3d &  v
)  const
 

Intersect sphere with ray u-v.


Friends And Related Function Documentation

FXbool overlap (  const FXRanged &  a,
const FXSphered &  b
)  [friend]
 

Test if box overlaps with sphere.

FXbool overlap (  const FXSphered &  a,
const FXRanged &  b
)  [friend]
 

Test if sphere overlaps with box.

FXbool overlap (  const FXSphered &  a,
const FXSphered &  b
)  [friend]
 

Test if spheres overlap.

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

Save object to a stream.

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

Load object from a stream.

Copyright © 1997-2005 Jeroen van der Zijp