MATLAB如何创建发光对象:light函数的使用
发光对象定义光源,这些光源会影响坐标轴中所有patch对象和surface对象的显示效果。MATLAB提供light函数创建发光对象,其调用格式为:
light(属性名1,属性值1,属性名2,属性值2,…)。
发光对象有如下3个重要属性。
·Color属性。设置光的颜色。
·Style属性。设置发光对象是否在无穷远,可取值为infinite(默认值)或local。
·Position属性。该属性的取值是数值向量,用于设置发光对象与坐标轴原点的距离。发光对象的位置与Style属性有关,若Style属性为local,则设置的是光源的实际位置;若Style属性为infinite,则设置的是光线射过来的方向。
例题 绘制相同的图形,设置不同的光照处理进行对比。
在命令窗口输入:
>> [x,y,z]=sphere(10);
subplot(1,2,1)
surf(x,y,z)
shading interp
light
title('默认光照')
subplot(1,2,2)
surf(x,y,z)
shading interp
light('color','y','position',[0 1 0],'style','local')
title('右侧光照')
则显示结果如图14-14所示。
图14-14 不同光照比较图