【发布时间】:2021-09-11 07:39:28
【问题描述】:
给定 3d 平面上的一个点 (x0,y0,z0),首先我想绘制一个通过给定点 (x0,y0,z0) 的平面 x=x0,然后在 y 轴上旋转该平面 alpha 度和 beta z 轴上的度数。最终平面也应该通过点(x0,y0,z0)。
这是一个示例,当给定点是(4,5,6)、alpha=30 和 beta=45,我设法仅在 y 轴上旋转 30 度:
x0=4;
y0=5;
z0=6;
alpha=30;
beta=45;
plot3(x0,y0,z0,'r*')
hold on
[Y1, Z1] = meshgrid(linspace(-10,10), linspace(0,10));
X1 = x0*ones(size(Y1));
surf(X1,Y1,Z1)
hold on
xlabel('X');
ylabel('Y');
zlabel('Z');
X2 = (Z1)*tand(alpha)-z0*ones(size(Z1))*tand(alpha)+X1;
surf(X2,Y1,Z1)
你能帮我同时在y轴和z轴上旋转原始平面x=x0,以便最终平面通过(x0,y0,z0)吗?
【问题讨论】:
标签: matlab rotation matlab-figure plane