博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
已知直线上的两点 A(x1, y1), B(x2, y2) 和另外一点 C(x0, y0),求C点到直线的距离。...
阅读量:6260 次
发布时间:2019-06-22

本文共 525 字,大约阅读时间需要 1 分钟。

数学知识太差,一点点积累,高手勿喷。

1. 先求出AB向量

a = ( x2-x1, y2-y1 )

2. 求AB向量的单位方向向量

b = √((x2-x1)^2 + (y2-y1)^2))

a1 = ( (x2-x1)/b, (y2-y1)/b )

3.求出CA的法向向量(或CB的法向向量)

c = ( y0-y1, -(x0-x1) )

4. 距离 = AC法向向量与BC向量的单位方向向量的数量积

距离d = a1 * c = ( (x2-x1)(y0-y1) - (y2-y1)(x0-x1) ) / √((x2-x1)^2 + (y2-y1)^2))

參考http://zhidao.baidu.com/link?url=_p1KjVfPqY4ZnEf9h4GNR1OiwkoDrds_LfTCyZTTTo6sljXJP8i-tUtSHECt5_k8WwA0g04lkBUNrEGCz0hcUK

原文中还有第5步,我把第四步作了一些改动,感觉就够了。
事实上我也不懂,特别是第四步为什么会得到距离?

请高手指点指正。

谢谢

ps: 推断垂足在线段内:

AC*AC - d*d < AB*AB && BC*BC - d*d < AB*AB

转载地址:http://inqsa.baihongyu.com/

你可能感兴趣的文章
mycelipse之安装SVN1.6.5(转载)
查看>>
怎样把数据汇到Excel中的心得经验
查看>>
状态键盘完美适应iOS中的键盘高度变化
查看>>
Linux下oracle11g 导入导出操作详细
查看>>
每日英语:When Computer Games May Keep The Brain Nimble
查看>>
Android AsyncTask运作原理和源码分析
查看>>
demos.jquerymobile
查看>>
【Android】解决Android横竖屏切换数据丢失问题的方法
查看>>
spring+mybatis的多源数据库配置实战
查看>>
Oracle 导入外部文件数据库
查看>>
数值压缩存储方法Varint
查看>>
【转】Unity3.5 GameCenter基础教程
查看>>
C#_Profile 配置
查看>>
WCF和ASP.NET Web API在应用上的选择
查看>>
关于空指针NULL、野指针、通用指针
查看>>
从GIMP的Retinex算法里发现了一种高斯模糊的快速实现方法【开发记录】。
查看>>
c编写程序完成m名旅客和n辆汽车的同步程序代写
查看>>
oracle与sqlserver区别
查看>>
hdu4722之简单数位dp
查看>>
Android Fragment 学习<四>
查看>>