![]()  | 
  
    OpenMS
    
     
   | 
  
A D-dimensional bounding box. More...
#include <OpenMS/DATASTRUCTURES/DBoundingBox.h>
Public Member Functions | |
Constructors and Destructor  | |
| DBoundingBox () | |
| Default constructor.  More... | |
| DBoundingBox (const DBoundingBox &rhs) | |
| Copy constructor.  More... | |
| DBoundingBox & | operator= (const DBoundingBox &rhs) | 
| Assignment operator.  More... | |
| DBoundingBox & | operator= (const Base &rhs) | 
| Assignment operator for the base class.  More... | |
| ~DBoundingBox () | |
| Destructor.  More... | |
| DBoundingBox (const PositionType &minimum, const PositionType &maximum) | |
| Constructor from two positions.  More... | |
Accessors  | |
| void | enlarge (const PositionType &p) | 
| Enlarges the bounding box such that it contains a position.  More... | |
| void | enlarge (CoordinateType x, CoordinateType y) | 
| Enlarges the bounding box such that it contains a position specified by two coordinates.  More... | |
Predicates  | |
| bool | operator== (const DBoundingBox &rhs) const | 
| Equality operator.  More... | |
| bool | operator== (const Base &rhs) const | 
| Equality operator.  More... | |
| bool | encloses (const PositionType &position) const | 
| Checks whether this range contains a certain point.  More... | |
| bool | encloses (CoordinateType x, CoordinateType y) const | 
| 2D-version encloses(x,y) is for convenience only  More... | |
| bool | intersects (const DBoundingBox &bounding_box) const | 
| bool | isEmpty () const | 
| Test if bounding box is empty.  More... | |
  Public Member Functions inherited from DIntervalBase< D > | |
| DIntervalBase () | |
| Default constructor.  More... | |
| DIntervalBase (const DIntervalBase &rhs) | |
| Copy constructor.  More... | |
| DIntervalBase (DIntervalBase &&) noexcept=default | |
| Move constructor.  More... | |
| DIntervalBase & | operator= (const DIntervalBase &rhs) | 
| Assignment operator.  More... | |
| ~DIntervalBase () | |
| Destructor.  More... | |
| DIntervalBase (PositionType const &minimum, PositionType const &maximum) | |
| This constructor sets min_ and max_ directly.  More... | |
| PositionType const & | minPosition () const | 
| Accessor to minimum position.  More... | |
| PositionType const & | maxPosition () const | 
| Accessor to maximum position.  More... | |
| void | setMin (PositionType const &position) | 
| Mutator for minimum position.  More... | |
| void | setMax (PositionType const &position) | 
| Mutator for maximum position.  More... | |
| void | setMinMax (PositionType const &min, PositionType const &max) | 
| Mutator for minimum and maximum position.  More... | |
| template<UInt D2> | |
| void | assign (const DIntervalBase< D2 > rhs) | 
| Assignment from a DIntervalBase of different dimensions.  More... | |
| bool | operator== (const DIntervalBase &rhs) const | 
| Equality operator.  More... | |
| bool | operator!= (const DIntervalBase &rhs) const | 
| Equality operator.  More... | |
| DIntervalBase | operator+ (const PositionType &point) const | 
| DIntervalBase & | operator+= (const PositionType &point) | 
| DIntervalBase | operator- (const PositionType &point) const | 
| DIntervalBase & | operator-= (const PositionType &point) | 
| void | clear () | 
| Make the interval empty.  More... | |
| bool | isEmpty () const | 
| bool | isEmpty (UInt dim) const | 
Is the dimension dim empty? If min==max, the interval is NOT empty!  More... | |
| void | setDimMinMax (UInt dim, const DIntervalBase< 1 > &min_max) | 
| only set interval for a single dimension  More... | |
| PositionType | center () const | 
| Returns the center of the interval.  More... | |
| PositionType | diagonal () const | 
| Returns the diagonal of the area, i.e. max_ - min_.  More... | |
| CoordinateType | minX () const | 
| Accessor for min_ coordinate minimum.  More... | |
| CoordinateType | minY () const | 
| Accessor for max_ coordinate minimum.  More... | |
| CoordinateType | maxX () const | 
| Accessor for min_ coordinate maximum.  More... | |
| CoordinateType | maxY () const | 
| Accessor for max_ coordinate maximum.  More... | |
| void | setMinX (CoordinateType const c) | 
| Mutator for min_ coordinate of the smaller point.  More... | |
| void | setMinY (CoordinateType const c) | 
| Mutator for max_ coordinate of the smaller point.  More... | |
| void | setMaxX (CoordinateType const c) | 
| Mutator for min_ coordinate of the larger point.  More... | |
| void | setMaxY (CoordinateType const c) | 
| Mutator for max_ coordinate of the larger point.  More... | |
| CoordinateType | width () const | 
| Returns the width of the area i.e. the difference of dimension zero (X).  More... | |
| CoordinateType | height () const | 
| Returns the height of the area i.e. the difference of dimension one (Y).  More... | |
Related Functions | |
(Note that these are not member functions.)  | |
| template<UInt D> | |
| std::ostream & | operator<< (std::ostream &os, const DBoundingBox< D > &bounding_box) | 
| Print the contents to a stream.  More... | |
Type definitions | |
| enum | { DIMENSION = D } | 
| Dimensions.  More... | |
| typedef Internal::DIntervalBase< D > | Base | 
| Base class type.  More... | |
| typedef Base::PositionType | PositionType | 
| Position type.  More... | |
| typedef Base::CoordinateType | CoordinateType | 
| Coordinate type of the positions.  More... | |
| PositionType | min_ | 
| lower left point  More... | |
| PositionType | max_ | 
| upper right point  More... | |
Additional Inherited Members | |
  Public Types inherited from DIntervalBase< D > | |
| enum | { DIMENSION = D } | 
| Dimensions.  More... | |
| typedef DPosition< D > | PositionType | 
| Position type.  More... | |
| typedef PositionType::CoordinateType | CoordinateType | 
| Coordinate type of the positions.  More... | |
  Static Public Attributes inherited from DIntervalBase< D > | |
| static DIntervalBase const | empty = DIntervalBase<D>(std::make_pair(DIntervalBase<D>::PositionType::maxPositive(), DIntervalBase<D>::PositionType::minNegative())) | 
| empty instance  More... | |
| static DIntervalBase const | zero = DIntervalBase<D>(DIntervalBase<D>::PositionType::zero(), DIntervalBase<D>::PositionType::zero()) | 
| instance with all positions zero  More... | |
  Protected Member Functions inherited from DIntervalBase< D > | |
| void | normalize_ () | 
| normalization to keep all dimensions in the right geometrical order (min_[X] < max_[X])  More... | |
| DIntervalBase (const std::pair< PositionType, PositionType > &pair) | |
| Protected constructor for the construction of static instances.  More... | |
  Protected Attributes inherited from DIntervalBase< D > | |
| PositionType | min_ | 
| lower left point  More... | |
| PositionType | max_ | 
| upper right point  More... | |
A D-dimensional bounding box.
A DBoundingBox denotes a closed interval. Upper and lower margins are both contained.
| typedef Internal::DIntervalBase<D> Base | 
Base class type.
| typedef Base::CoordinateType CoordinateType | 
Coordinate type of the positions.
| typedef Base::PositionType PositionType | 
Position type.
      
  | 
  inline | 
Default constructor.
      
  | 
  inline | 
Copy constructor.
      
  | 
  inline | 
Destructor.
      
  | 
  inline | 
Constructor from two positions.
      
  | 
  inline | 
Checks whether this range contains a certain point.
| position | The point's position. | 
References DBoundingBox< D >::DIMENSION, DBoundingBox< D >::max_, and DBoundingBox< D >::min_.
Referenced by DBoundingBox< D >::encloses().
      
  | 
  inline | 
2D-version encloses(x,y) is for convenience only
References DBoundingBox< D >::encloses().
      
  | 
  inline | 
Enlarges the bounding box such that it contains a position.
References DBoundingBox< D >::DIMENSION, DBoundingBox< D >::max_, and DBoundingBox< D >::min_.
Referenced by GridBasedClustering< Metric >::cluster(), and DBoundingBox< D >::enlarge().
      
  | 
  inline | 
Enlarges the bounding box such that it contains a position specified by two coordinates.
References DBoundingBox< D >::enlarge().
      
  | 
  inline | 
Checks whether this bounding box intersects with another bounding box
References DBoundingBox< D >::DIMENSION, DBoundingBox< D >::max_, and DBoundingBox< D >::min_.
      
  | 
  inline | 
Test if bounding box is empty.
References DBoundingBox< D >::max_, and DBoundingBox< D >::min_.
      
  | 
  inline | 
Assignment operator for the base class.
References DIntervalBase< D >::operator=().
      
  | 
  inline | 
Assignment operator.
References DIntervalBase< D >::operator=().
      
  | 
  inline | 
Equality operator.
References DIntervalBase< D >::operator==().
      
  | 
  inline | 
Equality operator.
References DIntervalBase< D >::operator==().
      
  | 
  related | 
Print the contents to a stream.
References DIntervalBase< D >::maxPosition(), and DIntervalBase< D >::minPosition().
| PositionType max_ | 
upper right point
Referenced by DBoundingBox< D >::encloses(), DBoundingBox< D >::enlarge(), DBoundingBox< D >::intersects(), and DBoundingBox< D >::isEmpty().
| PositionType min_ | 
lower left point
Referenced by DBoundingBox< D >::encloses(), DBoundingBox< D >::enlarge(), DBoundingBox< D >::intersects(), and DBoundingBox< D >::isEmpty().