5 #include "../global.hpp" 6 #include "../value_range.hpp" 7 #include "../point_3d.hpp" 43 : data_({ samples, lines, bands })
128 return data_[0].Contains(value[0])
129 && data_[1].Contains(value[1])
130 && data_[2].Contains(value[2]);
143 return other.data_[0].IntersectsWith(data_[0])
144 && other.data_[1].IntersectsWith(data_[1])
145 && other.data_[2].IntersectsWith(data_[2]);
156 return data_ == cubeRange.data_;
167 return !(*
this == cubeRange);
ValueRange< int > Samples() const noexcept
Gets the range regarding the samples dimension.
Definition: cube_range.hpp:55
CubeRange(ValueRange< int > samples, ValueRange< int > lines, ValueRange< int > bands)
Initialize a cube range object.
Definition: cube_range.hpp:42
bool IntersectsWith(CubeRange other) const noexcept
Checks if this cuboid intersects with another cube range.
Definition: cube_range.hpp:141
void SetSamples(ValueRange< int > samples) noexcept
Sets the range regarding samples dimension.
Definition: cube_range.hpp:67
Root namespace for the Image Manager interface.
Definition: version.hpp:11
void SetBands(ValueRange< int > bands) noexcept
Sets the range regarding bands dimension.
Definition: cube_range.hpp:112
Multi-purpose 3D vector class.
Definition: point_3d.hpp:21
CubeRange() noexcept=default
Creates a default cube range with value ranges from 0.0 to 0.0.
bool operator!=(const CubeRange &cubeRange) const noexcept
Compares to an other cube range.
Definition: cube_range.hpp:165
bool Contains(Vector3D< int > value) const noexcept
Checks if a the 3D value is inside the cube range.
Definition: cube_range.hpp:126
bool operator==(const CubeRange &cubeRange) const noexcept
Compares to an other cube range.
Definition: cube_range.hpp:154
3D rectangle in the samples, lines and bands domain.
Definition: cube_range.hpp:23
void SetLines(ValueRange< int > lines)
Sets the range regarding the lines dimension.
Definition: cube_range.hpp:90
ValueRange< int > Bands() const noexcept
Gets the range regarding bands dimension.
Definition: cube_range.hpp:101
ValueRange< int > Lines() const noexcept
Gets the range regarding lines dimension.
Definition: cube_range.hpp:78