\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 5.0.3 - 2D and 3D Linear Geometry Kernel

#include <CGAL/Bbox_2.h>

Definition

An object b of the class Bbox_2 is a bounding box in the two-dimensional Euclidean plane \( \E^2\).

This class is not templated.

Is Model Of:
Hashable
See also
CGAL::Bbox_3
Examples:
Kernel_23/MyConstruct_bbox_2.h.

Related Functions

(Note that these are not member functions.)

template<class InputIterator >
Bbox_2 bbox_2 (InputIterator begin, InputIterator past_end)
 returns the bounding box of the objects in the range [first,past_end[. More...
 
template<class InputIterator , class Traits >
Bbox_2 bbox_2 (InputIterator begin, InputIterator past_end, const Traits &traits)
 returns the bounding box of the objects in the range [first,past_end[. More...
 
bool do_overlap (const Bbox_2 &bb1, const Bbox_2 &bb2)
 returns true iff bb1 and bb2 overlap, i.e., iff their intersection is non-empty.
 

Creation

 Bbox_2 ()
 introduces an empty bounding box with lower left corner point at \( (\infty, \infty) \) and with upper right corner point at \( (-\infty, -\infty) \), \( \infty \) being std::numeric_limits<double>::infinity().
 
 Bbox_2 (double x_min, double y_min, double x_max, double y_max)
 introduces a bounding box b with lower left corner at (xmin, ymin) and with upper right corner at (xmax, ymax).
 

Operations

bool operator== (const Bbox_2 &c) const
 Test for equality.
 
bool operator!= (const Bbox_2 &q) const
 Test for inequality.
 
int dimension () const
 Returns 2.
 
double xmin () const
 
double ymin () const
 
double xmax () const
 
double ymax () const
 
double min (int i) const
 Returns xmin() if i==0 or ymin() if i==1. More...
 
double max (int i) const
 Returns xmax() if i==0 or ymax() if i==1. More...
 
Bbox_2 operator+ (const Bbox_2 &c) const
 returns a bounding box of b and c.
 
Bbox_2operator+= (const Bbox_2 &c)
 updates b to be the bounding box of b and c and returns itself.
 
void dilate (int dist)
 dilates the bounding box by a specified number of ULP.
 

Member Function Documentation

◆ max()

double CGAL::Bbox_2::max ( int  i) const

Returns xmax() if i==0 or ymax() if i==1.

Precondition
i==0 or i==1

◆ min()

double CGAL::Bbox_2::min ( int  i) const

Returns xmin() if i==0 or ymin() if i==1.

Precondition
i==0 or i==1

Friends And Related Function Documentation

◆ bbox_2() [1/2]

template<class InputIterator >
Bbox_2 bbox_2 ( InputIterator  begin,
InputIterator  past_end 
)
related

returns the bounding box of the objects in the range [first,past_end[.

Each object in the range must have a member function BBox_2 bbox() returning its bounding box.

◆ bbox_2() [2/2]

template<class InputIterator , class Traits >
Bbox_2 bbox_2 ( InputIterator  begin,
InputIterator  past_end,
const Traits &  traits 
)
related

returns the bounding box of the objects in the range [first,past_end[.

Traits must provide a functor Traits::Construct_bbox_2 having an operator returning the bounding box of each object in the range. Traits must also have a member function Traits::Construct_bbox_2 construct_bbox_2_object() const.