12 template <
typename T,
typename TStorage, std::
size_t D >
14 typename boost::enable_if<is_numeric_container<TStorage>,
bool>::type
21 template <
typename T1,
typename T2, std::
size_t D >
33 template <
typename T, std::
size_t D >
47 template <
typename T, std::
size_t D >
48 std::ostream& operator<<(std::ostream& os, const Box<T,D> &box)
50 return os <<
"(" <<
" "<< box.min_bounds() <<
" "<<
"," <<
" "<< box.max_bounds() <<
" )" << std::endl;
55 template <
typename T, std::
size_t D>
63 template <
typename T, std::
size_t D >
67 for (std::size_t i = 0; i < D; ++i)
boost::enable_if< is_Image< TImage >, typename TImage::value_type >::type min(const TImage &im)
Box< T, D > intersection(const Box< T, D > &b1, const Box< T, D > &b2)
Computes the intersection of two boxes.
Belongs to package Box Do not include directly, include til/Box.h instead.
numeric_array< T, D > size(const Box< T, D > &box)
Return the size of a box.
const numeric_array< T, D > & min_bounds() const
Get min bounds.
const numeric_array< T, D > & max_bounds() const
Get max bounds.
TImage::value_type max(const TImage &im)
Returns the maximum intensity of the input image.
boost::enable_if< is_numeric_container< TStorage >, bool >::type contains(const Box< T, D > &box, const TStorage &v)
Check whether a point lies within box.
T volume(const Box< T, D > &box)
Return the volume of a box.
A 3D box parallel to canonical axes.