Open3D (C++ API)
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Static Public Member Functions | Data Fields
open3d::geometry::AxisAlignedBoundingBox Class Reference

#include <BoundingVolume.h>

Inheritance diagram for open3d::geometry::AxisAlignedBoundingBox:
open3d::geometry::Geometry3D open3d::geometry::Geometry

Public Member Functions

 AxisAlignedBoundingBox ()
 
 ~AxisAlignedBoundingBox () override
 
AxisAlignedBoundingBoxClear () override
 
bool IsEmpty () const override
 
virtual Eigen::Vector3d GetMinBound () const override
 
virtual Eigen::Vector3d GetMaxBound () const override
 
virtual Eigen::Vector3d GetCenter () const override
 
virtual AxisAlignedBoundingBox GetAxisAlignedBoundingBox () const override
 
virtual OrientedBoundingBox GetOrientedBoundingBox () const override
 
virtual AxisAlignedBoundingBoxTransform (const Eigen::Matrix4d &transformation) override
 
virtual AxisAlignedBoundingBoxTranslate (const Eigen::Vector3d &translation, bool relative=true) override
 
virtual AxisAlignedBoundingBoxScale (const double scale, bool center=true) override
 
virtual AxisAlignedBoundingBoxRotate (const Eigen::Vector3d &rotation, bool center=true, RotationType type=RotationType::XYZ) override
 
AxisAlignedBoundingBoxoperator+= (const AxisAlignedBoundingBox &other)
 
double Volume () const
 
std::vector< Eigen::Vector3d > GetBoxPoints () const
 
Eigen::Vector3d GetExtend () const
 
Eigen::Vector3d GetHalfExtend () const
 
double GetMaxExtend () const
 
double GetXPercentage (double x) const
 
double GetYPercentage (double y) const
 
double GetZPercentage (double z) const
 
std::string GetPrintInfo () const
 
- Public Member Functions inherited from open3d::geometry::Geometry3D
 ~Geometry3D () override
 
- Public Member Functions inherited from open3d::geometry::Geometry
virtual ~Geometry ()
 
GeometryType GetGeometryType () const
 
int Dimension () const
 

Static Public Member Functions

static AxisAlignedBoundingBox CreateFromPoints (const std::vector< Eigen::Vector3d > &points)
 

Data Fields

Eigen::Vector3d min_bound_
 
Eigen::Vector3d max_bound_
 
Eigen::Vector3d color_
 

Additional Inherited Members

- Public Types inherited from open3d::geometry::Geometry3D
enum  RotationType {
  RotationType::XYZ, RotationType::YZX, RotationType::ZXY, RotationType::XZY,
  RotationType::ZYX, RotationType::YXZ, RotationType::AxisAngle
}
 
- Public Types inherited from open3d::geometry::Geometry
enum  GeometryType {
  GeometryType::Unspecified = 0, GeometryType::PointCloud = 1, GeometryType::VoxelGrid = 2, GeometryType::Octree = 3,
  GeometryType::LineSet = 4, GeometryType::TriangleMesh = 5, GeometryType::HalfEdgeTriangleMesh = 6, GeometryType::Image = 7,
  GeometryType::RGBDImage = 8, GeometryType::TetraMesh = 9, GeometryType::OrientedBoundingBox = 10, GeometryType::AxisAlignedBoundingBox = 11
}
 
- Protected Member Functions inherited from open3d::geometry::Geometry3D
 Geometry3D (GeometryType type)
 
Eigen::Vector3d ComputeMinBound (const std::vector< Eigen::Vector3d > &points) const
 
Eigen::Vector3d ComputeMaxBound (const std::vector< Eigen::Vector3d > &points) const
 
Eigen::Vector3d ComputeCenter (const std::vector< Eigen::Vector3d > &points) const
 
void ResizeAndPaintUniformColor (std::vector< Eigen::Vector3d > &colors, const size_t size, const Eigen::Vector3d &color) const
 
void TransformPoints (const Eigen::Matrix4d &transformation, std::vector< Eigen::Vector3d > &points) const
 
void TransformNormals (const Eigen::Matrix4d &transformation, std::vector< Eigen::Vector3d > &normals) const
 
void TranslatePoints (const Eigen::Vector3d &translation, std::vector< Eigen::Vector3d > &points, bool relative) const
 
void ScalePoints (const double scale, std::vector< Eigen::Vector3d > &points, bool center) const
 
void RotatePoints (const Eigen::Vector3d &rotation, std::vector< Eigen::Vector3d > &points, bool center, RotationType type) const
 
void RotateNormals (const Eigen::Vector3d &rotation, std::vector< Eigen::Vector3d > &normals, bool center, RotationType type) const
 
Eigen::Matrix3d GetRotationMatrix (const Eigen::Vector3d &rotation, RotationType type=RotationType::XYZ) const
 
- Protected Member Functions inherited from open3d::geometry::Geometry
 Geometry (GeometryType type, int dimension)
 

Constructor & Destructor Documentation

◆ AxisAlignedBoundingBox()

open3d::geometry::AxisAlignedBoundingBox::AxisAlignedBoundingBox ( )
inline

◆ ~AxisAlignedBoundingBox()

open3d::geometry::AxisAlignedBoundingBox::~AxisAlignedBoundingBox ( )
inlineoverride

Member Function Documentation

◆ Clear()

AxisAlignedBoundingBox & open3d::geometry::AxisAlignedBoundingBox::Clear ( )
overridevirtual

◆ CreateFromPoints()

AxisAlignedBoundingBox open3d::geometry::AxisAlignedBoundingBox::CreateFromPoints ( const std::vector< Eigen::Vector3d > &  points)
static

◆ GetAxisAlignedBoundingBox()

AxisAlignedBoundingBox open3d::geometry::AxisAlignedBoundingBox::GetAxisAlignedBoundingBox ( ) const
overridevirtual

◆ GetBoxPoints()

std::vector< Eigen::Vector3d > open3d::geometry::AxisAlignedBoundingBox::GetBoxPoints ( ) const

◆ GetCenter()

Eigen::Vector3d open3d::geometry::AxisAlignedBoundingBox::GetCenter ( ) const
overridevirtual

◆ GetExtend()

Eigen::Vector3d open3d::geometry::AxisAlignedBoundingBox::GetExtend ( ) const
inline

◆ GetHalfExtend()

Eigen::Vector3d open3d::geometry::AxisAlignedBoundingBox::GetHalfExtend ( ) const
inline

◆ GetMaxBound()

Eigen::Vector3d open3d::geometry::AxisAlignedBoundingBox::GetMaxBound ( ) const
overridevirtual

◆ GetMaxExtend()

double open3d::geometry::AxisAlignedBoundingBox::GetMaxExtend ( ) const
inline

◆ GetMinBound()

Eigen::Vector3d open3d::geometry::AxisAlignedBoundingBox::GetMinBound ( ) const
overridevirtual

◆ GetOrientedBoundingBox()

OrientedBoundingBox open3d::geometry::AxisAlignedBoundingBox::GetOrientedBoundingBox ( ) const
overridevirtual

◆ GetPrintInfo()

std::string open3d::geometry::AxisAlignedBoundingBox::GetPrintInfo ( ) const

◆ GetXPercentage()

double open3d::geometry::AxisAlignedBoundingBox::GetXPercentage ( double  x) const
inline

◆ GetYPercentage()

double open3d::geometry::AxisAlignedBoundingBox::GetYPercentage ( double  y) const
inline

◆ GetZPercentage()

double open3d::geometry::AxisAlignedBoundingBox::GetZPercentage ( double  z) const
inline

◆ IsEmpty()

bool open3d::geometry::AxisAlignedBoundingBox::IsEmpty ( ) const
overridevirtual

◆ operator+=()

AxisAlignedBoundingBox& open3d::geometry::AxisAlignedBoundingBox::operator+= ( const AxisAlignedBoundingBox other)
inline

◆ Rotate()

AxisAlignedBoundingBox & open3d::geometry::AxisAlignedBoundingBox::Rotate ( const Eigen::Vector3d &  rotation,
bool  center = true,
RotationType  type = RotationType::XYZ 
)
overridevirtual

◆ Scale()

AxisAlignedBoundingBox & open3d::geometry::AxisAlignedBoundingBox::Scale ( const double  scale,
bool  center = true 
)
overridevirtual

◆ Transform()

AxisAlignedBoundingBox & open3d::geometry::AxisAlignedBoundingBox::Transform ( const Eigen::Matrix4d &  transformation)
overridevirtual

◆ Translate()

AxisAlignedBoundingBox & open3d::geometry::AxisAlignedBoundingBox::Translate ( const Eigen::Vector3d &  translation,
bool  relative = true 
)
overridevirtual

◆ Volume()

double open3d::geometry::AxisAlignedBoundingBox::Volume ( ) const

Field Documentation

◆ color_

Eigen::Vector3d open3d::geometry::AxisAlignedBoundingBox::color_

◆ max_bound_

Eigen::Vector3d open3d::geometry::AxisAlignedBoundingBox::max_bound_

◆ min_bound_

Eigen::Vector3d open3d::geometry::AxisAlignedBoundingBox::min_bound_

The documentation for this class was generated from the following files: