曲线与曲面对象 MATLAB

曲线与曲面对象

曲线对象 调用格式:line(x,y,z,属性1,属性值1,属性2,属性值2,…)

曲线对象常用属性:

在这里插入图片描述
eg:利用曲线对象绘制五环图案。

t=-0.1:0.1:2*pi;
x=cos(t);
y=sin(t);
line(x,y,'Color','b')
line(x+1.2,y-1,'Color','y')
line(x+2.4,y,'Color','k')
line(x+3.6,y-1,'Color','g')
line(x+4.8,y,'Color','r')
ha=gca;
for n=1:size(ha.Children)
    ha.Children(n).LineWidth=5;
end
ha.XLim=[-2,7];
ha.YLim=[-3,2];
axis equal

在这里插入图片描述

曲面对象

调用格式:surface(x,y,z,c,属性1,属性值1,属性2,属性值2,…)

与曲面形态有关的属性:

在这里插入图片描述

eg:

在这里插入图片描述

r=linspace(0,2*pi,60);
[u,v]=meshgrid(r);
x=(8+3*cos(v)).*cos(u);
y=(8+3*cos(v)).*sin(u);
z=3*sin(v);
axes('view',[-37.5,30])
hs=surface(x,y,z);
axis equal;

在这里插入图片描述

光照处理 :

调用格式:light(属性1,属性值1,属性2,属性值2,…)

光源对象的属性:

在这里插入图片描述

设置光照模式:

在这里插入图片描述
eg:绘制光照处理后的圆环面并观察不同光照模式下的效果。

r=linspace(0,2*pi,60);
[u,v]=meshgrid(r);
x=(8+3*cos(v)).*cos(u);y=(8+3*cos(v)).*sin(u);z=3*sin(v);
axes('Position',[0.05,0.675,1.0,0.3],'View',[-37.5,30]);
hs1=surface(x,y,z);
axis equal;
hs2.EdgeColor='none';
hs2.FaceColor='interp';
light('Position',[0,0,8])
lighting flat
axes('Position',[0.05,0.025,1.0,0.3],'View',[-37.5,30]);
hs3=surface(x,y,z);
axis equal;
hs3.EdgeColor='none';
hs3.FaceColor='interp';
light('Position',[0,0,8])
lighting phong

在这里插入图片描述

图形对象的反射特性:

在这里插入图片描述

eg:绘制具有不同反射特性的圆环面并观察反射特性对图形效果的影响.

r=linspace(0,2*pi,60);  [u,v]=meshgrid(r);
x=(8+3*cos(v)).*cos(u); y=(8+3*cos(v)).*sin(u); z=3*sin(v);
%第一个圆环
axes('Position',[0.05,0.675,1.0,0.3],'View',[-37.5,30]);
hs1=surface(x,y,z);axis equal;
hs1.EdgeColor='none';hs1.FaceColor='interp';
light('Position',[0,0,8]) ;lighting  phong
hs1.SpecularStrength=0.1;%反射参数设置
%第二个圆环
axes('Position', [0.05,0.35,1.0,0.3],'View',[-37.5,30]);
hs2=surface(x,y,z);axis equal;
hs2.EdgeColor='none';hs2.FaceColor='interp';
light('Position',[0,0,8]) ;lighting  phong
hs2.SpecularStrength=0.5;%反射参数设置
%第三个圆环
axes('Position', [0.05,0.025,1.0,0.3],'View',[-37.5,30]);
hs3=surface(x,y,z);axis equal;
hs3.EdgeColor='none';hs3.FaceColor='interp';
light('Position',[0,0,8]) ;lighting  phong ;

在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jeff one

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值