如何用两条等长的线段解出一个革命体
how to solve a revolutionary body by two line segments with same length
有两条射线,
可以表示为
A行:P1=p10+n1*t
和
B 行:P2=p20+n2*t
其中,p10和p20分别为两条射线的起点
我想找到一个围绕一个轴的革命体,
据此,
点p10可以旋转到点p20,矢量方向n1可以旋转到矢量n2.
以下是我的思考
假设公转的未知数是它的旋转轴(nx,ny,nz)和x0,y0,z0轴上的一点。
不失一般性,z0可以设为0。
因为nx,ny,nz是单位向量,所以nz=sqrt(nx^2+ny^2)。
并且旋转角度为theta。
所以只有五个未知数:x0,y0,nx,ny,theta
我们可以实现的方程是:
P1x=P2x
P1y=P2y
P1z=P2z
n1x=n2x
n1y=n2y
(由于n1和n2是单位向量,自然满足n1z=n2z)
所以我觉得应该有唯一解。但我不确定。
另外,如果有解,我不知道如何解方程。
好像很难。
非常感谢你的帮助。
如果我正确理解你所说的革命体的意思,那么我认为对于任何给定的输入都会有许多解决方案,除非方向n1
和n2
相互平行。
任何此类革命团体的基础将始终是一个通过点 P10
和 P20
的圆圈,如您所知,可能会有 多个圆圈 可以满足这个条件。
有两条射线, 可以表示为
A行:P1=p10+n1*t
和
B 行:P2=p20+n2*t
其中,p10和p20分别为两条射线的起点
我想找到一个围绕一个轴的革命体, 据此, 点p10可以旋转到点p20,矢量方向n1可以旋转到矢量n2.
以下是我的思考
假设公转的未知数是它的旋转轴(nx,ny,nz)和x0,y0,z0轴上的一点。
不失一般性,z0可以设为0。 因为nx,ny,nz是单位向量,所以nz=sqrt(nx^2+ny^2)。 并且旋转角度为theta。
所以只有五个未知数:x0,y0,nx,ny,theta
我们可以实现的方程是:
P1x=P2x
P1y=P2y
P1z=P2z
n1x=n2x
n1y=n2y
(由于n1和n2是单位向量,自然满足n1z=n2z)
所以我觉得应该有唯一解。但我不确定。 另外,如果有解,我不知道如何解方程。 好像很难。
非常感谢你的帮助。
如果我正确理解你所说的革命体的意思,那么我认为对于任何给定的输入都会有许多解决方案,除非方向n1
和n2
相互平行。
任何此类革命团体的基础将始终是一个通过点 P10
和 P20
的圆圈,如您所知,可能会有 多个圆圈 可以满足这个条件。