|
| AxisAlignedBoundingBox () |
| Default constructor. More...
|
|
| AxisAlignedBoundingBox (const Eigen::Vector3d &min_bound, const Eigen::Vector3d &max_bound) |
| Parameterized constructor. More...
|
|
| ~AxisAlignedBoundingBox () override |
|
AxisAlignedBoundingBox & | Clear () override |
| Clear all elements in the geometry. More...
|
|
bool | IsEmpty () const override |
| Returns true iff the geometry is empty. More...
|
|
virtual Eigen::Vector3d | GetMinBound () const override |
| Returns min bounds for geometry coordinates. More...
|
|
virtual Eigen::Vector3d | GetMaxBound () const override |
| Returns max bounds for geometry coordinates. More...
|
|
virtual Eigen::Vector3d | GetCenter () const override |
| Returns the center of the geometry coordinates. More...
|
|
virtual AxisAlignedBoundingBox | GetAxisAlignedBoundingBox () const override |
| Returns the object itself. More...
|
|
virtual OrientedBoundingBox | GetOrientedBoundingBox (bool robust=false) const override |
|
virtual OrientedBoundingBox | GetMinimalOrientedBoundingBox (bool robust=false) const override |
|
virtual AxisAlignedBoundingBox & | Transform (const Eigen::Matrix4d &transformation) override |
| Apply transformation (4x4 matrix) to the geometry coordinates. More...
|
|
virtual AxisAlignedBoundingBox & | Translate (const Eigen::Vector3d &translation, bool relative=true) override |
| Apply translation to the geometry coordinates. More...
|
|
virtual AxisAlignedBoundingBox & | Scale (const double scale, const Eigen::Vector3d ¢er) override |
| Scales the axis-aligned bounding boxes. If \(mi\) is the min_bound and \(ma\) is the max_bound of the axis aligned bounding box, and \(s\) and \(c\) are the provided scaling factor and center respectively, then the new min_bound and max_bound are given by \(mi = c + s (mi - c)\) and \(ma = c + s (ma - c)\). More...
|
|
virtual AxisAlignedBoundingBox & | Rotate (const Eigen::Matrix3d &R, const Eigen::Vector3d ¢er) override |
| an AxisAlignedBoundingBox can not be rotated. This method will throw an error. More...
|
|
AxisAlignedBoundingBox & | operator+= (const AxisAlignedBoundingBox &other) |
|
Eigen::Vector3d | GetExtent () const |
| Get the extent/length of the bounding box in x, y, and z dimension. More...
|
|
Eigen::Vector3d | GetHalfExtent () const |
| Returns the half extent of the bounding box. More...
|
|
double | GetMaxExtent () const |
|
double | GetXPercentage (double x) const |
|
double | GetYPercentage (double y) const |
|
double | GetZPercentage (double z) const |
|
double | Volume () const |
| Returns the volume of the bounding box. More...
|
|
std::vector< Eigen::Vector3d > | GetBoxPoints () const |
| Returns the eight points that define the bounding box. More...
|
|
std::vector< size_t > | GetPointIndicesWithinBoundingBox (const std::vector< Eigen::Vector3d > &points) const |
|
std::string | GetPrintInfo () const |
| Returns the 3D dimensions of the bounding box in string format. More...
|
|
| ~Geometry3D () override |
|
Geometry3D & | Clear () override=0 |
| Clear all elements in the geometry. More...
|
|
bool | IsEmpty () const override=0 |
| Returns true iff the geometry is empty. More...
|
|
virtual Eigen::Vector3d | GetMinBound () const =0 |
| Returns min bounds for geometry coordinates. More...
|
|
virtual Eigen::Vector3d | GetMaxBound () const =0 |
| Returns max bounds for geometry coordinates. More...
|
|
virtual Eigen::Vector3d | GetCenter () const =0 |
| Returns the center of the geometry coordinates. More...
|
|
virtual AxisAlignedBoundingBox | GetAxisAlignedBoundingBox () const =0 |
|
virtual OrientedBoundingBox | GetOrientedBoundingBox (bool robust=false) const =0 |
|
virtual OrientedBoundingBox | GetMinimalOrientedBoundingBox (bool robust=false) const =0 |
|
virtual Geometry3D & | Transform (const Eigen::Matrix4d &transformation)=0 |
| Apply transformation (4x4 matrix) to the geometry coordinates. More...
|
|
virtual Geometry3D & | Translate (const Eigen::Vector3d &translation, bool relative=true)=0 |
| Apply translation to the geometry coordinates. More...
|
|
virtual Geometry3D & | Scale (const double scale, const Eigen::Vector3d ¢er)=0 |
| Apply scaling to the geometry coordinates. Given a scaling factor \(s\), and center \(c\), a given point \(p\) is transformed according to \(s (p - c) + c\). More...
|
|
virtual Geometry3D & | Rotate (const Eigen::Matrix3d &R, const Eigen::Vector3d ¢er)=0 |
| Apply rotation to the geometry coordinates and normals. Given a rotation matrix \(R\), and center \(c\), a given point \(p\) is transformed according to \(R (p - c) + c\). More...
|
|
virtual Geometry3D & | Rotate (const Eigen::Matrix3d &R) |
|
virtual | ~Geometry () |
|
virtual Geometry & | Clear ()=0 |
| Clear all elements in the geometry. More...
|
|
virtual bool | IsEmpty () const =0 |
| Returns true iff the geometry is empty. More...
|
|
GeometryType | GetGeometryType () const |
| Returns one of registered geometry types. More...
|
|
int | Dimension () const |
| Returns whether the geometry is 2D or 3D. More...
|
|
std::string | GetName () const |
|
void | SetName (const std::string &name) |
|
|
enum class | GeometryType {
Unspecified = 0
, PointCloud = 1
, VoxelGrid = 2
, Octree = 3
,
LineSet = 4
, MeshBase = 5
, TriangleMesh = 6
, HalfEdgeTriangleMesh = 7
,
Image = 8
, RGBDImage = 9
, TetraMesh = 10
, OrientedBoundingBox = 11
,
AxisAlignedBoundingBox = 12
} |
| Specifies possible geometry types. More...
|
|
| Geometry3D (GeometryType type) |
| Parameterized Constructor. More...
|
|
Eigen::Vector3d | ComputeMinBound (const std::vector< Eigen::Vector3d > &points) const |
| Compute min bound of a list points. More...
|
|
Eigen::Vector3d | ComputeMaxBound (const std::vector< Eigen::Vector3d > &points) const |
| Compute max bound of a list points. More...
|
|
Eigen::Vector3d | ComputeCenter (const std::vector< Eigen::Vector3d > &points) const |
| Computer center of a list of points. More...
|
|
void | ResizeAndPaintUniformColor (std::vector< Eigen::Vector3d > &colors, const size_t size, const Eigen::Vector3d &color) const |
| Resizes the colors vector and paints a uniform color. More...
|
|
void | TransformPoints (const Eigen::Matrix4d &transformation, std::vector< Eigen::Vector3d > &points) const |
| Transforms all points with the transformation matrix. More...
|
|
void | TransformNormals (const Eigen::Matrix4d &transformation, std::vector< Eigen::Vector3d > &normals) const |
| Transforms the normals with the transformation matrix. More...
|
|
void | TransformCovariances (const Eigen::Matrix4d &transformation, std::vector< Eigen::Matrix3d > &covariances) const |
| Transforms all covariance matrices with the transformation. More...
|
|
void | TranslatePoints (const Eigen::Vector3d &translation, std::vector< Eigen::Vector3d > &points, bool relative) const |
| Apply translation to the geometry coordinates. More...
|
|
void | ScalePoints (const double scale, std::vector< Eigen::Vector3d > &points, const Eigen::Vector3d ¢er) const |
| Scale the coordinates of all points by the scaling factor scale . More...
|
|
void | RotatePoints (const Eigen::Matrix3d &R, std::vector< Eigen::Vector3d > &points, const Eigen::Vector3d ¢er) const |
| Rotate all points with the rotation matrix R . More...
|
|
void | RotateNormals (const Eigen::Matrix3d &R, std::vector< Eigen::Vector3d > &normals) const |
| Rotate all normals with the rotation matrix R . More...
|
|
void | RotateCovariances (const Eigen::Matrix3d &R, std::vector< Eigen::Matrix3d > &covariances) const |
| Rotate all covariance matrices with the rotation matrix R . More...
|
|
| Geometry (GeometryType type, int dimension) |
| Parameterized Constructor. More...
|
|
A bounding box that is aligned along the coordinate axes.
The AxisAlignedBoundingBox uses the coordinate axes for bounding box generation. This means that the bounding box is oriented along the coordinate axes.