Go to the documentation of this file.
3 #pragma GCC diagnostic push
4 #if defined __GNUC__ && (__GNUC__ >= 6)
5 #pragma GCC diagnostic ignored "-Wignored-attributes"
6 #pragma GCC diagnostic ignored "-Wint-in-bool-context"
8 #include <Eigen/Geometry>
12 #pragma GCC diagnostic pop
72 template <
typename OtherVectorType1,
typename OtherVectorType2>
76 template <
typename Derived>
99 min_.setConstant(ScalarTraits::highest());
100 max_.setConstant(ScalarTraits::lowest());
144 if ((mult &
corner) != 0) {
159 template <
typename Derived>
160 inline bool contains(
const Eigen::MatrixBase<Derived>&
p)
const {
161 return Eigen::AlignedBox<double, 2>(
min_,
max_).contains(
p);
166 return (
min_.array() <= (b.
min)().array()).all() && ((b.
max)().array() <=
max_.array()).all();
172 return (
min_.array() <= (b.
max)().array()).all() && ((b.
min)().array() <=
max_.array()).all();
177 template <
typename Derived>
179 auto pN(
p.derived().eval());
215 template <
typename Derived>
217 const auto t(aT.derived().eval());
227 template <
typename Derived>
229 return Eigen::AlignedBox<double, 2>(
min_,
max_).squaredExteriorDistance(
p);
237 using EigenBox = Eigen::AlignedBox<double, 2>;
238 return EigenBox(
min_,
max_).squaredExteriorDistance(EigenBox(b.
min_, b.
max_));
245 template <
typename Derived>
260 template <
typename OtherScalarType>
261 inline explicit BoundingBox2d(
const Eigen::AlignedBox<OtherScalarType, AmbientDimAtCompileTime>& other) {
262 min_ = (other.min)().template cast<Scalar>();
263 max_ = (other.max)().template cast<Scalar>();
NonInteger exteriorDistance(const Eigen::MatrixBase< Derived > &p) const
ScalarTraits::NonInteger NonInteger
BoundingBox2d to2D(const BoundingBox3d &primitive)
Identifies PointPrimitives.
BasicPoint2d diagonal() const
BasicPoint2d center() const
ScalarTraits::Real RealScalar
BoundingBox2d(OtherVectorType1 min, OtherVectorType2 max)
BoundingBox2d & extend(const BoundingBox2d &b)
Scalar squaredExteriorDistance(const BoundingBox2d &b) const
BoundingBox2d(const Eigen::MatrixBase< Derived > &p)
VectorType corner(CornerType corner) const
Axis-Aligned bounding box in 2d.
BoundingBox2d & extend(const Eigen::MatrixBase< Derived > &p)
bool contains(const BoundingBox2d &b) const
BasicPoint2d sizes() const
bool isApprox(const BoundingBox2d &other, const RealScalar &prec=ScalarTraits::dummy_precision()) const
Eigen::AlignedBox3d BoundingBox3d
Convenience type for an axis aligned bounding box in 3d.
bool intersects(const BoundingBox2d &b) const
BoundingBox2d intersection(const BoundingBox2d &b) const
BoundingBox2d & clamp(const BoundingBox2d &b)
BoundingBox2d(const Eigen::AlignedBox< OtherScalarType, AmbientDimAtCompileTime > &other)
Scalar squaredExteriorDistance(const Eigen::MatrixBase< Derived > &p) const
NonInteger exteriorDistance(const BoundingBox2d &b) const
Eigen::Matrix< double, 2, 1, Eigen::DontAlign > BasicPoint2d
a simple 2d-point
const VectorType &() min() const
@ AmbientDimAtCompileTime
VectorType sample() const
Eigen::NumTraits< Scalar > ScalarTraits
BoundingBox2d merged(const BoundingBox2d &b) const
const VectorType &() max() const
BoundingBox2d(const Eigen::AlignedBox< double, 2 > &other)
BoundingBox3d MutableType
bool contains(const Eigen::MatrixBase< Derived > &p) const
Identifies RegulatoryElementPrimitives.
BoundingBox2d & translate(const Eigen::MatrixBase< Derived > &aT)
BoundingBox3d to3D(const BoundingBox2d &primitive)
lanelet2_core
Author(s): Fabian Poggenhans
autogenerated on Thu Mar 6 2025 03:25:52