点到直线距离

点到直线距离

Eigen::Vector3f pt_{ pt.x,pt.y,pt.z };
Eigen::Vector3f center_{ coefficients->values[0],coefficients->values[1],coefficients->values[2]};
Eigen::Vector3f direction_{ coefficients->values[3],coefficients->values[4],coefficients->values[5]};

内积方法

请添加图片描述
c = ( a ⋅ b ) ∣ b ∣ b ∣ b ∣ = ( a ⋅ b ) ∣ b ∣ 2 b c=\frac{(a \cdot b)}{|b|} \frac{b}{|b|}= \frac{(a \cdot b)}{|b|^2} b c=b(ab)bb=b2(ab)b
pt_ :红色点
(pt_ - center_) : a
direction_ : b

((pt_ - center_) -(pt_-center_).dot(direction_)/ pow(direction_.norm(),2)*direction_).norm()

使用夹角求sinθ计算

(pt_ - center_).norm() * sin(acos((pt_ - center_).dot(direction_) / ((pt_ - center_).norm() * direction_.norm())))

外积方法

点 p 到直线 ab 的距离:|a x b| / |b|
|a x b| 为平行四边形面积,底边|b|

(pt_- center_).cross(direction_).norm()/ direction_.norm()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值