43 const Eigen::Matrix3d& R,
44 const Eigen::Vector3d& extent,
45 const std::string&
name =
"ecvOrientedBBox")
78 const Eigen::Matrix4d& transformation)
override;
80 bool relative =
true)
override;
82 const Eigen::Vector3d& center)
override;
84 const Eigen::Vector3d& center)
override;
97 const std::vector<Eigen::Vector3d>&
points);
99 const std::vector<CCVector3>&
points);
int64_t CV_CLASS_ENUM
Type of object type flags (64 bits)
Float version of ccGLMatrixTpl.
Double version of ccGLMatrixTpl.
Hierarchical CLOUDVIEWER Object.
A bounding box oriented along an arbitrary frame of reference.
double volume() const
Returns the volume of the bounding box.
virtual ccBBox GetAxisAlignedBoundingBox() const override
Returns an axis-aligned bounding box of the geometry.
virtual Eigen::Vector3d GetMinBound() const override
Returns min bounds for geometry coordinates.
virtual bool IsEmpty() const override
virtual Eigen::Vector3d GetCenter() const override
Returns the center of the geometry coordinates.
virtual ecvOrientedBBox & Scale(const double scale, const Eigen::Vector3d ¢er) override
Apply scaling to the geometry coordinates. Given a scaling factor , and center , a given point is tr...
~ecvOrientedBBox() override
virtual bool isSerializable() const override
Returns whether object is serializable of not.
virtual ecvOrientedBBox & Translate(const Eigen::Vector3d &translation, bool relative=true) override
Apply translation to the geometry coordinates.
virtual CV_CLASS_ENUM getClassID() const override
Returns unique class ID.
virtual ecvOrientedBBox GetOrientedBoundingBox() const override
const ecvOrientedBBox operator*(const ccGLMatrix &mat)
Applies transformation to the bounding box.
static ecvOrientedBBox CreateFromPoints(const std::vector< Eigen::Vector3d > &points)
static ecvOrientedBBox CreateFromAxisAlignedBoundingBox(const ccBBox &aabox)
const ecvOrientedBBox operator*(const ccGLMatrixd &mat)
Applies transformation to the bounding box.
void draw(CC_DRAW_CONTEXT &context) override
Draws entity and its children.
ecvOrientedBBox()
Default constructor.
virtual Eigen::Vector3d GetMaxBound() const override
Returns max bounds for geometry coordinates.
void draw(CC_DRAW_CONTEXT &context, const ecvColor::Rgb &col)
Draws oriented bounding box (OpenGL)
virtual ccBBox getOwnBB(bool withGLFeatures=false) override
Returns the entity's own bounding-box.
static ecvOrientedBBox CreateFromPoints(const std::vector< CCVector3 > &points)
virtual ecvOrientedBBox & Rotate(const Eigen::Matrix3d &R, const Eigen::Vector3d ¢er) override
Apply rotation to the geometry coordinates and normals. Given a rotation matrix , and center ,...
ecvOrientedBBox(const Eigen::Vector3d ¢er, const Eigen::Matrix3d &R, const Eigen::Vector3d &extent, const std::string &name="ecvOrientedBBox")
Parameterized constructor.
virtual ecvOrientedBBox & Transform(const Eigen::Matrix4d &transformation) override
Apply transformation (4x4 matrix) to the geometry coordinates.
::ecvOrientedBBox OrientedBoundingBox
Generic file read and write utility for python interface.