请教MATLAB中alpha函数的使用
如题,用MATLAB的alpha函数透明化球体,却把图中的离散点也“透明化了”,不想离散点透明化,请教该怎么做?谢谢~
(1)图中的红线和蓝线在第一幅图(未对其中的球透明化)中是重合的(红线和蓝线就是离散的点,但由于点比较密集,看着像线);第二幅图(透明化球后)红线和蓝线就一段段的显示了(我并不希望这样),不知问题出在哪里;
(2)画这两个图的代码,是整个程序中的一部分,为了看着简洁这里仅贴出画图部分的代码,麻烦大家帮忙看看问题在哪里
plot3(T(:,1),T(:,2),T(:,3),'b.'); hold on; plot3(X(:,1),X(:,2),X(:,3),'r.');
if i==2||i==4
[x,y,z]=sphere(15);x=T(pos_Y(i, 1),1)+r(i)*x;
y=T(pos_Y(i, 1),2)+r(i)*y;z=T(pos_Y(i, 1),3)+r(i)*z;
s1 = surf(x,y,z);
shading flat;
% set(s1,'FaceAlpha',0.1);
alpha(s1,0.1);
% axis equal;
colormap([0 0 1]);freezeColors
hold on;
end
透明化前.png
透明化后.png 返回小木虫查看更多
今日热帖
先画球,后画线。看一看可以吗?
十分感谢您的回复,这种方法我已经试过了,还是会出现离散点被透明化的问题
,
麻烦问下,您还有其他的建议吗?谢谢
可以尝试把透明化的区间分离出来