cookiegoham
2021-04-06T16:43:21+00:00
[s:ac:晕]最近需要用到一个空间中两点距离公式,突然发现好像不太好找的样子。
已知球坐标下两点的坐标参数为(r1,θ1,φ1)和(r2,θ2,φ2),如何用这六个参数表达出两点间的直线距离?
[s:ac:晕]初步查了一下都是泛泛而谈地“转换成直角坐标再算”,都没有直接用这几个参数表达的表达式。
[quote][pid=506210276,26238253,1]Reply[/pid] Post by [uid=2095697]大石牛萨[/uid] (2021-04-08 00:44):
我记得是用勾股定理?[/quote]极坐标下的两点距离公式可以用余弦定理求,不过球坐标感觉好像要复杂不少[s:ac:晕]
[quote][tid=26238253]Topic[/tid] Post by [uid=60240619]aforapplebforboy[/uid] (2021-04-08 00:43):
[s:ac:晕]最近需要用到一个空间中两点距离公式,突然发现好像不太好找的样子。
已知球坐标下两点的坐标参数为(r1,θ1,φ1)和(r2,θ2,φ2),如何用这六个参数表达出两点间的直线距离?
[s:ac:晕]初步查了一下都是泛泛而谈地“转换成直角坐标再算”,都没有直接用这几个参数表达的表达式。[/quote]笛卡尔xyz坐标系的直线距离你应该会吧,球坐标转笛卡尔坐标画个投影图也不难吧。
用直角坐标算呗,不照样可以用这几个参数表达,自己动动手嘛。
x1 = r1*sinθ1*cosφ1
y1 = r1*sinθ1*sinφ1
z1 = r1*cosθ1
x2 = r2*sinθ2*cosφ2
y2 = r2*sinθ2*sinφ2
z2 = r2*cosθ2
距离d^2 = (x1-x2)^2+(y1-y2)^2+(z1-z2)^2
你自己推一推不就完了,这种公式一般又冗长又没用,没人专门记的