求教坐标变换

来源:百度知道 编辑:UC知道 时间:2024/06/16 00:41:50
将所有点(x,y,z)的z轴变换到V(a,b,c)上

请问该怎么做呢?
我是想将平面摆正到与Xy平面平行,也就是说V是平面的法向量,要与Z轴平行的变换

法1:寻找Z轴和V上的单位向量之间的中点。
以过这个中点且法向量平行于2个单位向量之差的平面为对称平面的对称变换,就满足要求。

a^2 + b^2 + c^2 不等于0.
设 (u,v,w) = (a,b,c)/[a^2 + b^2 + c^2]^(1/2),【u^2+v^2+w^2=1】
【w不等于1,否则,[u,v,w]=[0,0,1].恒等变换就满足要求了。】

点(0,0,1)和(u,v,w)的中点P=[u/2,v/2,(w+1)/2],
由点(0,0,1)指向点(u,v,w)的向量N=[u,v,w-1]
过点P且和向量N垂直的平面M的平面方程为
u(x-u/2)+v(y-v/2)+(w-1)[z-(w+1)/2] = ux+vy+(w-1)z = 0.

设空间中的任何1点[X,Y,Z],关于平面M的对称点为[U,V,W].

[U-X,V-Y,W-Z]//[u,v,w-1],
[U-X]/u = [V-Y]/v = [W-Z]/(w-1) = t,
U = X + tu, V = Y + vt, W = Z + (w-1)t,
[U+X]/2 = X + tu/2, [V+Y]/2 = Y + vt/2, [W+Z]/2 = Z +(w-1)t/2
0 = u[U+X]/2 + v[V+Y]/2 + (w-1)[W+Z]/2
= u[X + tu/2] + v[Y + vt/2] + (w-1)[Z + (w-1)t/2]
= uX + vY + (w-1)Z + t[u^2 + v^2 + w^2 - 2w + 1]/2
= uX + vY + (w-1)Z + t[1-w]

t = [uX + vY + (w-1)Z]/(w-1),

U = X + tu = X + u[uX + vY + (w-1)Z]/(w-1),
V = Y + vt = Y + v[uX + vY + (w-1)Z]/(w-1),
W = Z + (w-1)t = Z + (w-1)[uX +