求fx5800计算器 点到直线距离的程序!知道的麻烦说一下

求fx5800计算器 点到直线距离的程序!知道的麻烦说一下,第1张

这是坐标反算偏距(左+,右-)的程序,我用的是海伦算法,缺点:P点为线上任意点时,

本程序“PIAN

JU“(偏距)以后代码失效,如有不同算法者,与我联系,共同研究。

“X1”?→X↙

“Y1”?→Y↙

“X2”?→A↙

“Y2”?→B↙

Pol((A-X),(B-Y))↙

If

J<0:

Then

J+360→J:

Else

J→J

:

IfEnd

I◢

得出两点间距离

J►DMS◢

得出两点间方位角(度分秒)

”PIAN

JU:0”?

→V↙

要计算偏距,请按“0”,返回反算请按0以外任意数

If

A≠0:Then

Goto

A:

Else

Lbl

B

:

IfEnd↙

“PX”?→C↙

“PY”?→D↙

√((A-C)^2+(B-D)^2)→F↙

√((C-X)^2+(D-Y)^2)→G↙

(I+F+G)/2→S↙

√(S*(S-I)*(S-F)*(S-G))

→M↙

M/I*2→W↙

Cos-1((I^2+F^2-G^2)/(2I*F))→O↙

O►DMS↙

用反余弦算出夹角度分秒但不显示

I-W/(tan(O))

→T◢

得出直线到垂足的距离(加入正算得出垂足标)

(C-(X+(T*cos(J))))/cos(J-90)◢

得出点到直线垂直距离((左+,右-))

Goto

B

设点坐标P:(x1,y1),

直线方程

L:A*x+B*y+C=0,则P点到直线L的距离matlab程序如下:

abs(A*x1+B*y1+C)/sqrt(A^2+B^2)

其中的abs为取绝对值,sqrt为

开平方


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/12017940.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存