6#include "value_range.hpp"
35 : data_({xRange, yRange, zRange})
107 return data_[0].Contains(point[0]) && data_[1].Contains(point[1]) && data_[2].Contains(point[2]);
118 return other.data_[0].IntersectsWith(data_[0]) && other.data_[1].IntersectsWith(data_[1])
119 && other.data_[2].IntersectsWith(data_[2]);
130 return data_ == cuboid.data_;
141 return !(*
this == cuboid);
ValueRange< double > XRange() const noexcept
Get the range regarding the x-axis.
Definition cuboid.hpp:44
bool IntersectsWith(Cuboid other) const noexcept
Check if this cuboid intersects with another cuboid.
Definition cuboid.hpp:116
bool operator==(const Cuboid &cuboid) const noexcept
Compares to an other cuboid.
Definition cuboid.hpp:128
Cuboid() noexcept=default
Creates a default cuboid with value ranges from 0.0 to 0.0.
bool Contains(Point3D< double > point) const noexcept
Check if a point is inside the cuboid.
Definition cuboid.hpp:105
ValueRange< double > ZRange() const noexcept
Get the range regarding the z-axis.
Definition cuboid.hpp:84
bool operator!=(const Cuboid &cuboid) const noexcept
Compares to an other cuboid.
Definition cuboid.hpp:139
void SetYRange(ValueRange< double > yRange) noexcept
Set the range regarding the y-axis.
Definition cuboid.hpp:74
void SetXRange(ValueRange< double > xRange) noexcept
Set the range regarding the x-axis.
Definition cuboid.hpp:54
ValueRange< double > YRange() const noexcept
Get the range regarding the y-axis.
Definition cuboid.hpp:64
void SetZRange(ValueRange< double > zRange) noexcept
Set the range regarding the z-axis.
Definition cuboid.hpp:94
Multi-purpose 3D vector class.
Definition point_3d.hpp:22
Container for range definitions.
Definition value_range.hpp:17
Root namespace for the Image Manager interface.
Definition c_bayer_to_rgb.h:17