BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members
BALL::BoundingBoxProcessor Class Reference

#include <BALL/STRUCTURE/geometricProperties.h>

Inheritance diagram for BALL::BoundingBoxProcessor:
BALL::ConstUnaryProcessor< Atom > BALL::UnaryFunctor< Atom, Processor::Result >

Public Member Functions

Processor related methods.
virtual bool start ()
 
virtual bool finish ()
 
virtual Processor::Result operator() (const Atom &atom)
 
virtual Processor::Result operator() (const Vector3 &v)
 
Accessors
SimpleBox3 getBox () const
 
const Vector3getLower () const
 
const Vector3getUpper () const
 
- Public Member Functions inherited from BALL::ConstUnaryProcessor< Atom >
virtual ~ConstUnaryProcessor ()
 

Additional Inherited Members

- Public Types inherited from BALL::UnaryFunctor< Atom, Processor::Result >
typedef Processor::Result result_type
 
typedef Atom argument_type
 
typedef Atomargument_reference
 
typedef const Atomconst_argument_reference
 
typedef Atomargument_pointer
 
typedef const Atomconst_argument_pointer
 

Detailed Description

Bounding box creating processor. This class iterates over all atoms of a given molecular object and determines the lowest and the highest coordinates occuring. It returns two coordinates ( getLower , getUpper ) describing the smallest cuboid (whose sides are parallel to the planes defined by the corrdinate axes) enclosing all atoms of the molecular object.

This processor is useful to determine the extent of a molecular object if you want to define a THashGrid or alike objects.
The coordinates returned by getLower and getUpper are only valid, if the processor has been applied to a molecular object containing atoms.

Definition at line 56 of file geometricProperties.h.

Member Function Documentation

virtual bool BALL::BoundingBoxProcessor::finish ( )
virtual

Checks if bounding box has been calculated.

See also
UnaryProcessor::finish()
Returns
true if bounding box has been calculated, otherwise reset lower and upper to (0,0,0) and return false

Reimplemented from BALL::ConstUnaryProcessor< Atom >.

SimpleBox3 BALL::BoundingBoxProcessor::getBox ( ) const

Return the bounding box

const Vector3& BALL::BoundingBoxProcessor::getLower ( ) const

Returns the lower corner of the bounding box

const Vector3& BALL::BoundingBoxProcessor::getUpper ( ) const

Returns the upper corner of the bounding box

virtual Processor::Result BALL::BoundingBoxProcessor::operator() ( const Atom atom)
inlinevirtual

Contributes the coordinates of provided Atom to the bounding box. The function internally calls the more generic operator() with Three-dimensional vector. argument derived from atom position.

Reimplemented from BALL::ConstUnaryProcessor< Atom >.

Definition at line 89 of file geometricProperties.h.

virtual Processor::Result BALL::BoundingBoxProcessor::operator() ( const Vector3 v)
virtual

Contributes coordinates of Three-dimensional vector. argument to the bounding box.

virtual bool BALL::BoundingBoxProcessor::start ( )
virtual

Initialize the processor. Resets lower and upper vectors to lower and upper numeric float limits.

See also
UnaryProcessor::start()
Returns
true in all cases

Reimplemented from BALL::ConstUnaryProcessor< Atom >.