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

FX::FXRanged Class Reference

Bounds. More...

#include <FXRanged.h>

List of all members.

Public Member Functions

 FXRanged ()
 FXRanged (const FXRanged &bounds)
 FXRanged (const FXVec3d &lo, const FXVec3d &hi)
 FXRanged (FXdouble xlo, FXdouble xhi, FXdouble ylo, FXdouble yhi, FXdouble zlo, FXdouble zhi)
 FXRanged (const FXSphered &sphere)
FXRangedoperator= (const FXRanged &bounds)
FXVec3doperator[] (FXint i)
const FXVec3doperator[] (FXint i) const
FXdouble width () const
FXdouble height () const
FXdouble depth () const
FXdouble longest () const
FXdouble shortest () const
FXdouble diameter () const
FXVec3d diagonal () const
FXVec3d center () const
FXbool empty () const
FXbool contains (FXdouble x, FXdouble y, FXdouble z) const
FXbool contains (const FXVec3d &p) const
FXbool contains (const FXRanged &bounds) const
FXbool contains (const FXSphered &sphere) const
FXRangedinclude (FXdouble x, FXdouble y, FXdouble z)
FXRangedinclude (const FXVec3d &v)
FXRangedinclude (const FXRanged &box)
FXRangedinclude (const FXSphered &sphere)
FXint intersect (const FXVec4d &plane) const
FXbool intersect (const FXVec3d &u, const FXVec3d &v)
FXVec3d corner (FXint c) const

Public Attributes

FXVec3d lower
FXVec3d upper

Friends

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


Detailed Description

Bounds.


Constructor & Destructor Documentation

FX::FXRanged::FXRanged  )  [inline]
 

Default constructor.

FX::FXRanged::FXRanged const FXRanged bounds  )  [inline]
 

Copy constructor.

FX::FXRanged::FXRanged const FXVec3d lo,
const FXVec3d hi
[inline]
 

Initialize from two vectors.

FX::FXRanged::FXRanged FXdouble  xlo,
FXdouble  xhi,
FXdouble  ylo,
FXdouble  yhi,
FXdouble  zlo,
FXdouble  zhi
[inline]
 

Initialize from six numbers.

FX::FXRanged::FXRanged const FXSphered sphere  ) 
 

Initialize box to fully contain the given bounding sphere.


Member Function Documentation

FXRanged& FX::FXRanged::operator= const FXRanged bounds  )  [inline]
 

Assignment.

FXVec3d& FX::FXRanged::operator[] FXint  i  )  [inline]
 

Indexing with 0..1.

const FXVec3d& FX::FXRanged::operator[] FXint  i  )  const [inline]
 

Indexing with 0..1.

FXdouble FX::FXRanged::width  )  const [inline]
 

Width of box.

FXdouble FX::FXRanged::height  )  const [inline]
 

Height of box.

FXdouble FX::FXRanged::depth  )  const [inline]
 

Depth of box.

FXdouble FX::FXRanged::longest  )  const
 

Longest side.

FXdouble FX::FXRanged::shortest  )  const
 

shortest side

FXdouble FX::FXRanged::diameter  )  const
 

Length of diagonal.

FXVec3d FX::FXRanged::diagonal  )  const
 

Compute diagonal.

FXVec3d FX::FXRanged::center  )  const
 

Get center of box.

FXbool FX::FXRanged::empty  )  const
 

Test if empty.

FXbool FX::FXRanged::contains FXdouble  x,
FXdouble  y,
FXdouble  z
const
 

Test if box contains point x,y,z.

FXbool FX::FXRanged::contains const FXVec3d p  )  const
 

Test if box contains point p.

FXbool FX::FXRanged::contains const FXRanged bounds  )  const
 

Test if box properly contains another box.

FXbool FX::FXRanged::contains const FXSphered sphere  )  const
 

Test if box properly contains sphere.

FXRanged& FX::FXRanged::include FXdouble  x,
FXdouble  y,
FXdouble  z
 

Include point.

FXRanged& FX::FXRanged::include const FXVec3d v  ) 
 

Include point.

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

Include given range into box.

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

Include given sphere into this box.

FXint FX::FXRanged::intersect const FXVec4d plane  )  const
 

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

FXbool FX::FXRanged::intersect const FXVec3d u,
const FXVec3d v
 

Intersect box with ray u-v.

FXVec3d FX::FXRanged::corner FXint  c  )  const [inline]
 

Get corner number 0..7.


Friends And Related Function Documentation

FXbool overlap const FXRanged a,
const FXRanged b
[friend]
 

Test if bounds overlap.

FXRanged unite const FXRanged a,
const FXRanged b
[friend]
 

Union of two boxes.

FXRanged intersect const FXRanged a,
const FXRanged b
[friend]
 

Intersection of two boxes.

FXStream& operator<< FXStream store,
const FXRanged bounds
[friend]
 

Save object to a stream.

FXStream& operator>> FXStream store,
FXRanged bounds
[friend]
 

Load object from a stream.

Copyright © 1997-2005 Jeroen van der Zijp