技术宅的结界

 找回密码
 立即注册→加入我们

QQ登录

只需一步,快速开始

搜索
热搜: 下载 VB C 实现 编写
查看: 1964|回复: 0
收起左侧

三维空间某点到平面距离的公式

[复制链接]

1020

主题

2262

帖子

5万

积分

用户组: 管理员

一只技术宅

UID
1
精华
201
威望
271 点
宅币
17264 个
贡献
34495 次
宅之契约
0 份
在线时间
1635 小时
注册时间
2014-1-26
发表于 2014-6-19 14:57:55 | 显示全部楼层 |阅读模式

欢迎访问技术宅的结界,请注册或者登录吧。

您需要 登录 才可以下载或查看,没有帐号?立即注册→加入我们

x
Formula.gif
C语言表达:
[C] 纯文本查看 复制代码
fabs(A*x+B*y+C*z+D)/sqrt(A*A+B*B+C*C)
VB语言表达:
[Visual Basic] 纯文本查看 复制代码
Abs(A*x+B*y+C*z+D)/Sqr(A*A+B*B+C*C)
汇编表达:假定A、B、C、D、x、y、z都指向double双精度浮点数类型的变量
[Asm] 纯文本查看 复制代码
fld     dword[A]   ;载入A
fmul    qword[x]   ;乘以x
fld     qword[B]   ;载入B
fmul    qword[y]   ;乘以y
fadd                ;得到A*x+B*y
fld     qword[C]   ;载入C
fmul    qword[z]   ;乘以z
fadd                ;得到A*x+B*y+C*z
fadd    qword[D]   ;得到A*x+B*y+C*z+D
fabs                ;取绝对值得到fabs(A*x+B*y+C*z+D)
fld     qword[A]   ;载入A
fmul    st0         ;乘以A
fld     qword[B]   ;载入B
fmul    st0         ;乘以B
fadd                ;得到A*A+B*B
fld     qword[C]   ;载入C
fmul    st0         ;乘以C
fadd                ;得到A*A+B*B+C*C
fsqrt               ;开平方根得到sqrt(A*A+B*B+C*C)
fdiv                ;最终得到fabs(A*x+B*y+C*z+D)/sqrt(A*A+B*B+C*C)的计算结果。
;fst    qword[Result];存储运算的结果到内存

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|技术宅的结界 ( 滇ICP备16008837号|网站地图

GMT+8, 2019-2-18 16:13 , Processed in 0.097368 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表