MATLAB中曲面上的参数曲线

时间:2015-12-03 01:05:26

标签: matlab graphics

假设我们有

x=linspace(-1,1,25);
y=linspace(-1,1,25);
[X,Y]=meshgrid(x,y);
Z = X.^2 - Y.^2;
surf(Z)

surfZ

MATLAB如何计算参数曲线(上图中的黑线)以获得曲面?有没有明确的公式可以做到这一点?如果参数化是(u,v)那么如何让MATLAB吐出

u=f(x,y,z)
v=g(x,y,z)

功能

1 个答案:

答案 0 :(得分:2)

表面上的黑线由对应于x,y和z坐标的三个矢量描述。例如,如果要提取与x=x(5)=-0.6667对应的行,则需要提取三个已包含在meshgrid和Z-array中的向量 - X(5,:),Y(5,:),Z(5,:)

x=linspace(-1,1,25);
y=linspace(-1,1,25);
[X,Y]=meshgrid(x,y);
Z = X.^2 - Y.^2;
hold off
surf(X,Y,Z)
hold on;
plot3(X(5,:),Y(5,:),Z(5,:),'r','LineWidth',5)
axis square

enter image description here

同样,如果您要在y=y(5)=-0.6667处提取该行,则需要:X(:,5),Y(:,5),Z(:,5)

x=linspace(-1,1,25);
y=linspace(-1,1,25);
[X,Y]=meshgrid(x,y);
Z = X.^2 - Y.^2;
hold off
surf(X,Y,Z)
hold on;
plot3(X(:,5),Y(:,5),Z(:,5),'r','LineWidth',5)
axis square

enter image description here

希望有所帮助