我正在为我的程序使用可视化模块,目前我正在尝试绘制一个平面和一些法线向量。问题在于可视化我的向量与平面不正常。
创建一个网格
step = 1/3;
xp = -5 : step : 5;
yp = -5 : step : 5;
[x,y] = meshgrid(xp,yp);
平面方程ax + by + cz + d = 0; 平面参数[a b c d]
pl = [1 1 1 1]';
z = -pl(1)/pl(3)*x - pl(2)/pl(3)*y - pl(4)/pl(3);
法向量。首先,他们的开始坐标。
vectorsNum = 3;
xr = randi([-5,5],vectorsNum,1);
yr = randi([-5,5],vectorsNum,1);
zr = -plr(1)/plr(3)*xr - plr(2)/plr(3)*yr - plr(4)/plr(3);
然后,他们的方向。
nx = repmat(plr(1), vectorsNum, 1);
ny = repmat(plr(2), vectorsNum, 1);
nz = repmat(plr(3), vectorsNum, 1);
作图
figure
hold on
xlabel('X');
ylabel('Y');
zlabel('Z');
lim = 7; %limit
axis([-lim lim -lim lim -lim lim]);
mesh(x,y,z)
quiver3(xr,yr,zr,nx,ny,nz,'ob','LineWidth',1)
hold off
我们在图中看到我们的“法线”与平面不正常