![]() |
[求助]Matalb三维绘图设置透明度
我最近在做三维仿真,遇到一个难题请大家协助解决,就是使用plot3绘制三维实心立方体时如何根据各位置点不同的灰度设置透明度,使得立方体内部及背面都能看到.
我已用hidden on及hidden off试过了,不好用,hidden好像只能用于mesh,且只是在有多层图形时,将外层设置为透明,而不是对三维实心立方体的各个位置点设置不同的透明度值,请大家帮忙找找:) |
回复: [求助]Matalb三维绘图设置透明度
[QUOTE=zdq_ren;28023]我最近在做三维仿真,遇到一个难题请大家协助解决,就是使用plot3绘制三维实心立方体时如何根据各位置点不同的灰度设置透明度,使得立方体内部及背面都能看到.
我已用hidden on及hidden off试过了,不好用,hidden好像只能用于mesh,且只是在有多层图形时,将外层设置为透明,而...[/QUOTE] 用一下alpha看看,你看看这段代码吧,或许对你有启发 %透明度值的设置 [x,y,z,v]=flow; %创建运动特性数据,用来显示流体 p=patch(isosurface(x,y,z,v,-3)); %创建斑点式数据 isonormals(x,y,z,v,p); %创建运动特性数据 set(p,'facecolor','red','edgecolor','none'); %设置属性 daspect([1,1,1]);%创建表面图形 view(3); %设置视角 axis tight; %设置坐标轴 grid on; %网格 camlight; %设置光照效果 lighting gouraud; %设置光照效果 alpha(0.5); |
多麒麟子支招
我上午用Alpha试了一下,确实收获很大,但Alpha只能作用image、patch、surface,不能对单个点作用,还没有达到我想要的效果,下午我再用scatter3试一下看
最好要能对点操作,比如我要绘制一幅透明的三维人体图,不但要能看到表面皮肤,还要能看到体内的肌肉、血管、神经、五脏六腑、骨骼等,类似这样的三维图不知大家画过没有 |
回复: [求助]Matalb三维绘图设置透明度
[QUOTE=zdq_ren;28023]我最近在做三维仿真,遇到一个难题请大家协助解决,就是使用plot3绘制三维实心立方体时如何根据各位置点不同的灰度设置透明度,使得立方体内部及背面都能看到.
我已用hidden on及hidden off试过了,不好用,hidden好像只能用于mesh,且只是在有多层图形时,将外层设置为透明,而...[/QUOTE] 你可以再用下面几个形式试一试,或许有效 alphamap('decrease') alphamap('rampup') alphamap('rampdown') alphamap('spin') 你说的问题我觉得在不同的面设置不同的透明度或许可以办到 由于我还是大二学生,对MATLAB了解不是很深,以下几个函数是我知道的可以控制透明度的,你看看吧,也许有用 hidden,alpha,AlphaData,AlphaData,Mapping,FaceAlpha,EdgeData |
所有时间均为北京时间。现在的时间是 04:49。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.