回 帖 发 新 帖 刷新版面

主题:[讨论]怎样画出一个透明的 3维物体

请教高手 用surf怎么样才能画出 透明的 3维物体

回复列表 (共4个回复)

沙发

用hidden函数将网格线中的填充颜色去掉,图形就变成透明的了。
x=0:0.1:10;
y=0:0.1:10;
[X,Y]=meshgrid(x,y);
Z=X.^2+Y.^2;
surf(Z);
hold off;
mesh(X,Y,Z);
hidden off
建议你将语句一条一条的执行,这样看的明白些。其中mesh(X,Y,Z)是选中曲面的网格(我是这样理解的),hidden off是隐藏网格之间的填充颜色。详情可以查阅matlab中的help资料。
另外你可以选择用plot3函数,但是它只能画三维曲线,还可以用非数,就是将你不想看到的部分设置为非数,这样你就可以将这部分“裁去”,程序如下:
[M,N]=find(1<X&Y<3);
Z(M,N)=NaN;
surf(X,Y,Z);
希望对你有所帮助!

板凳

Up..

3 楼

谢谢了  很大的帮助阿

4 楼

有一个函数更好用,alpha(a),a的值越接近于0越透明,这个估计才是更准确的答案!

我来回复

您尚未登录,请登录后再回复。点此登录或注册