当前位置:   article > 正文

open3D源码分析第四篇_open3d 写入eigen::vector3d

open3d 写入eigen::vector3d

2021SC@SDUSC

PointCloud.h

注释中文部分是源码解读,分析和问题在源码之后

#include <Eigen/Core>
#include <memory>
#include <tuple>
#include <vector>

#include "open3d/geometry/Geometry3D.h"
#include "open3d/geometry/KDTreeSearchParam.h"

namespace open3d {
   

namespace camera {
   
class PinholeCameraIntrinsic;
}

namespace geometry {
   
//这些类之后会分析到
class Image;
class RGBDImage;
class TriangleMesh;
class VoxelGrid;

	// 点云类class PointCloud
	// 点云由点坐标、点颜色和点法线(可选)组成
class PointCloud : public Geometry3D {
   
public:
    // 默认构造函数
    PointCloud() : Geometry3D(Geometry::GeometryType::PointCloud) {
   }
	// 参数化构造函数。输入值为点坐标
    PointCloud(const std::vector<Eigen::Vector3d> &points)
        : Geometry3D(Geometry::GeometryType::PointCloud), points_(points) {
   }
    //析构函数覆盖    
    ~PointCloud() override {
   }

public:
	// 清除几何图形中的所有元素
    PointCloud &Clear() override;
    // 如果几何体为空,则返回'true'。
    bool IsEmpty() const override;
    // 返回几何体坐标的最小边界。
    Eigen::Vector3d GetMinBound() const override;
    // 返回几何体坐标的最大边界。
    Eigen::Vector3d GetMaxBound() const override;
    // 返回几何体坐标的中心。
    Eigen::Vector3d GetCenter() const override;
    // 返回几何体的轴对齐边界框。
    AxisAlignedBoundingBox GetAxisAlignedBoundingBox() const override;
    // 返回几何图形的定向边界框。
    OrientedBoundingBox GetOrientedBoundingBox() const override;
    // 将变换(4x4矩阵)应用于几何坐标。
    PointCloud &Transform(const Eigen::Matrix4d &transformation) override;
    // 将平移应用于几何体坐标。
    PointCloud &Translate(const Eigen::Vector3d &translation,
                          bool relative = true) override;
    // 对几何体坐标应用缩放
    PointCloud &Scale(const double scale,
                      const Eigen::Vector3d &center) override;
    //将旋转应用于几何体坐标和法线。
    PointCloud &Rotate(const Eigen::Matrix3d &R,
                       const Eigen::Vector3d &center) override;
	//重载&#
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/863584
推荐阅读
相关标签
  

闽ICP备14008679号