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

FX::FXRangef Class Reference

#include <FXRangef.h>

List of all members.

Public Member Functions

 FXRangef ()
 FXRangef (const FXRangef &bounds)
 FXRangef (const FXVec3f &lo, const FXVec3f &hi)
 FXRangef (FXfloat xlo, FXfloat xhi, FXfloat ylo, FXfloat yhi, FXfloat zlo, FXfloat zhi)
 FXRangef (const FXSpheref &sphere)
FXRangefoperator= (const FXRangef &bounds)
FXRangefset (const FXRangef &bounds)
FXRangefset (const FXVec3f &lo, const FXVec3f &hi)
FXRangefset (FXfloat xlo, FXfloat xhi, FXfloat ylo, FXfloat yhi, FXfloat zlo, FXfloat zhi)
FXVec3foperator[] (FXint i)
const FXVec3foperator[] (FXint i) const
bool operator== (const FXRangef &r) const
bool operator!= (const FXRangef &r) const
FXfloat width () const
FXfloat height () const
FXfloat depth () const
FXfloat longest () const
FXfloat shortest () const
FXfloat diameter () const
FXfloat radius () const
FXVec3f diagonal () const
FXVec3f center () const
bool empty () const
bool contains (FXfloat x, FXfloat y, FXfloat z) const
bool contains (const FXVec3f &p) const
bool contains (const FXRangef &bounds) const
bool contains (const FXSpheref &sphere) const
FXRangefinclude (FXfloat x, FXfloat y, FXfloat z)
FXRangefinclude (const FXVec3f &v)
FXRangefinclude (const FXRangef &box)
FXRangefinclude (const FXSpheref &sphere)
FXint intersect (const FXVec4f &plane) const
bool intersect (const FXVec3f &u, const FXVec3f &v)
FXVec3f corner (FXint c) const

Public Attributes

FXVec3f lower
FXVec3f upper

Friends

bool overlap (const FXRangef &a, const FXRangef &b)
FXRangef unite (const FXRangef &a, const FXRangef &b)
FXRangef intersect (const FXRangef &a, const FXRangef &b)
FXStreamoperator<< (FXStream &store, const FXRangef &bounds)
FXStreamoperator>> (FXStream &store, FXRangef &bounds)

Detailed Description

Bounds.


Constructor & Destructor Documentation

FX::FXRangef::FXRangef ( ) [inline]

Default constructor.

FX::FXRangef::FXRangef ( const FXRangef bounds) [inline]

Copy constructor.

FX::FXRangef::FXRangef ( const FXVec3f lo,
const FXVec3f hi 
) [inline]

Initialize from two vectors.

FX::FXRangef::FXRangef ( FXfloat  xlo,
FXfloat  xhi,
FXfloat  ylo,
FXfloat  yhi,
FXfloat  zlo,
FXfloat  zhi 
) [inline]

Initialize from six numbers.

FX::FXRangef::FXRangef ( const FXSpheref sphere)

Initialize box to fully contain the given bounding sphere.


Member Function Documentation

FXRangef& FX::FXRangef::operator= ( const FXRangef bounds) [inline]

Assignment.

References lower, and upper.

FXRangef& FX::FXRangef::set ( const FXRangef bounds) [inline]

Set value from another range.

References lower.

Referenced by set().

FXRangef& FX::FXRangef::set ( const FXVec3f lo,
const FXVec3f hi 
) [inline]

Set value from two vectors.

References FX::hi(), and FX::lo().

FXRangef& FX::FXRangef::set ( FXfloat  xlo,
FXfloat  xhi,
FXfloat  ylo,
FXfloat  yhi,
FXfloat  zlo,
FXfloat  zhi 
) [inline]

Set value from six numbers.

References set().

FXVec3f& FX::FXRangef::operator[] ( FXint  i) [inline]

Indexing with 0..1.

const FXVec3f& FX::FXRangef::operator[] ( FXint  i) const [inline]

Indexing with 0..1.

bool FX::FXRangef::operator== ( const FXRangef r) const [inline]

Comparison.

References lower, and upper.

bool FX::FXRangef::operator!= ( const FXRangef r) const [inline]

References lower, and upper.

FXfloat FX::FXRangef::width ( ) const [inline]

Width of box.

FXfloat FX::FXRangef::height ( ) const [inline]

Height of box.

FXfloat FX::FXRangef::depth ( ) const [inline]

Depth of box.

Longest side.

shortest side

Length of diagonal.

Get radius of box.

Compute diagonal.

Get center of box.

bool FX::FXRangef::empty ( ) const

Test if empty.

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

Test if box contains point x,y,z.

bool FX::FXRangef::contains ( const FXVec3f p) const

Test if box contains point p.

bool FX::FXRangef::contains ( const FXRangef bounds) const

Test if box properly contains another box.

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

Test if box properly contains sphere.

Include point.

Include point.

Include given range into box.

Include given sphere into this box.

FXint FX::FXRangef::intersect ( const FXVec4f plane) const

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

bool FX::FXRangef::intersect ( const FXVec3f u,
const FXVec3f v 
)

Intersect box with ray u-v.

FXVec3f FX::FXRangef::corner ( FXint  c) const [inline]

Get corner number 0..7.


Friends And Related Function Documentation

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

Test if boxes a and b overlap.

FXRangef unite ( const FXRangef a,
const FXRangef b 
) [friend]

Union of two boxes.

FXRangef intersect ( const FXRangef a,
const FXRangef b 
) [friend]

Intersection of two boxes.

FXStream& operator<< ( FXStream store,
const FXRangef bounds 
) [friend]

Save object to a stream.

FXStream& operator>> ( FXStream store,
FXRangef bounds 
) [friend]

Load object from a stream.


Member Data Documentation

Copyright © 1997-2005 Jeroen van der Zijp