【发布时间】:2014-04-29 18:07:25
【问题描述】:
我需要使用一个图形显示两个 3D 图像,我使用了 alpha(0.5),但我的颜色图有问题 这是我的代码:
%%%%%%%%%%%%%%%%%%%%%%%%%%% liver 1 %%%%%%%%%%%%%%%%%%%%%%
liver_surf1=isosurface(nii.img(:,end:-1:1,:),0.05);
V=liver_surf1.vertices;
F=liver_surf1.faces;
t=trisurf(F,V(:,1),V(:,2),V(:,3),'facealpha',0.5,'FaceColor',colormap([1 0 0])); % red color
shading flat;
hold on;
%%%%%%%%%%%%%%%%%%%%%%%%%%% liver 2 %%%%%%%%%%%%%%%%%%%%%%
liver_surf=isosurface(nii.img(:,end:-1:1,end:-1:1),0.05);
V2=liver_surf.vertices;
F2=liver_surf.faces;
t2 = trisurf(F2,V2(:,1),V2(:,2),V2(:,3),'facealpha',0.5,'FaceColor',colormap([0 1 0])); % green color
这是结果:
然后问题是两个图像颜色都变为绿色,如果我单独运行是可以的,但我不能将两个图像组合在一起。所以在我添加“shading flat”之后它变成了这样:
我怎样才能同时拥有红色和绿色? 谢谢
这是两个不同的肝脏,应该在图像中显示为透明的,因为它们有交集。
【问题讨论】:
标签: matlab