PCL点云处理:getAngle3D 计算两个向量的夹角

Posted 没事就要敲代码

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PCL点云处理:getAngle3D 计算两个向量的夹角相关的知识,希望对你有一定的参考价值。

1 getAngle3D() 函数原型

pcl::getAngle3D (const Eigen::Vector3f &v1, const Eigen::Vector3f &v2, const bool in_degree=false)
pcl::getAngle3D (const Eigen::Vector4f &v1, const Eigen::Vector4f &v2, const bool in_degree=false)

2 实现代码

#include <iostream>
#include <pcl\\common\\common.h>

using namespace std;

int main()
{
	Eigen::Vector3f V1;
	V1 << 0, 0, 1;
	Eigen::Vector3f V2;
	V2 << 1, 0, 0;
	Eigen::Vector3f V3;
	V3 << 0, 1, -1;

	float angle;	//夹角
	angle = pcl::getAngle3D(V1, V2);
	cout << "->angle(弧度) = " << angle << endl;
	angle = pcl::getAngle3D(V1, V3, true);
	cout << "->angle(角度) = " << angle << "°" << endl;

	return 0;
}

3 输出结果

->angle(弧度) = 1.5708
->angle(角度) = 135

相关链接:

PCL点云处理:common 中常见的基础功能函数

以上是关于PCL点云处理:getAngle3D 计算两个向量的夹角的主要内容,如果未能解决你的问题,请参考以下文章

PCL基于法线的差异来分割点云

PCL点云处理之基于高程的粗糙度计算(一百)

QT+PCL 点云学习

QT+PCL 点云学习

为啥循环和可视化点云滞后于 PCL 可视化器?

PCL系列——拼接两个点云