文档帮助中心文档
带有基于颜色映射的照明的表面绘图
surfl (X, Y, Z)
surfl (Z)
surfl (___“光”),
surfl (___,年代)
surfl (X, Y, Z, s、k)
surfl (ax,___)
S = surfl(___)
例子
surfl (X,Y,Z)用光源的高光创建三维表面图。函数在矩阵中绘制值Z作为高度在网格之上x-y平面定义为X而且Y.该函数使用默认方向作为光源,并使用默认光照系数作为阴影模型。这将表面的颜色数据设置为表面的反射率。
surfl (X,Y,Z)
X
Y
Z
由于曲面法向量的计算方式,surfl需要至少是3乘3的矩阵。
surfl
surfl (Z)中元素的列和行索引Z随着x- - -y坐标。
surfl (Z)
surfl (___“光”),创建一个从MATLAB高光表面®光的物体。这与默认的基于颜色映射的照明方法产生不同的结果。指定“光”对象作为最后一个输入参数。
“光”
surfl (___,年代)另外还指定了光源的方向。
surfl (___,年代)
年代
surfl (X,Y,Z,年代,k)另外指定反射率常数。
surfl (X,Y,Z,年代,k)
k
surfl (斧头,___)所指定的轴斧头而不是现在的坐标轴。将轴指定为第一个输入参数。
surfl (斧头,___)
斧头
S = surfl(___)返回图表表面对象。如果光源指定为光对象,则使用“光”选项,然后年代作为图形数组返回,其中包括图表表面对象和光照对象。使用年代在创建后修改表面和光照对象。有关属性列表,请参见表面性质而且光属性.
全部折叠
创建三个相同大小的矩阵。然后使用基于颜色映射的照明将它们绘制成一个表面。表面使用Z身高和两者Z而光源为彩色。
[X,Y] =网格(1:0.5:10,1:20);Z = sinx + cos Y;surfl (X, Y, Z)
创建三个相同大小的矩阵。然后将它们绘制为带有MATLAB®光对象高光的表面。表面使用Z身高和两者Z和浅色物体的颜色。该函数返回一个数组,其中包含一个表面对象和一个照明对象。将它赋值给变量sl.
sl
[X,Y] =网格(1:0.5:10,1:20);Z = sinx + cos Y;sl = surfl(X,Y,Z,“光”);
索引sl在创建表面对象和光照对象后访问和修改它们的属性。地表图可达sl (1)而轻的物体是sl (2).例如,通过设置颜色光对象的属性。
sl (1)
sl (2)
颜色
sl(2)。颜色=“r”;
创建三个相同大小的矩阵来绘制一个曲面。指定光源的方向为方位角45度,仰角20度。通过增加环境光的贡献和减少漫射和镜面反射的贡献来增加表面的反射率。将surface对象分配给变量sl.
[X,Y] =网格(1:0.5:10,1:20);Z = sinx + cos Y;S = [-45 20];K =[。65 .4 .3 10];
用源向量和反射率向量绘制数据。
sl = surfl(X,Y,Z,s,k);
使用sl在创建表面对象后访问和修改它的属性。属性来隐藏边缘EdgeColor财产。
EdgeColor
sl.EdgeColor =“没有”;
x-坐标,指定为与Z,或作为有长度的向量n,在那里[m,n] = size(Z).如果没有指定值X而且Y,surfl使用向量(1: n)而且(1: m).
n
[m,n] = size(Z)
(1: n)
(1: m)
您可以使用meshgrid创建函数X而且Y矩阵。
meshgrid
的XData的属性表面对象存储x坐标。
XData
表面
例子:X = 1:10
X = 1:10
例子:X = [1 2 3;1 2 3;1 2 3]
X = [1 2 3;1 2 3;1 2 3]
例子:[X,Y] = meshgrid(-5:0.5:5)
[X,Y] = meshgrid(-5:0.5:5)
数据类型:单|双|int8|int16|int32|int64|uint8|uint16|uint32|uint64
单
双
int8
int16
int32
int64
uint8
uint16
uint32
uint64
y-坐标,指定为与Z或者作为一个有长度的向量米,在那里[m,n] = size(Z).如果没有指定值X而且Y,surfl使用向量(1: n)而且(1: m).
米
您可以使用meshgrid函数来创建X而且Y矩阵。
的YData属性存储y坐标。
YData
例子:Y = 1:10
Y = 1:10
例子:Y = [1 1 1;2 2 2;3 3 3]
Y = [1 1 1;2 2 2;3 3 3]
z-坐标,指定为一个矩阵。Z必须至少有两行两列。
的ZData属性存储z坐标。
ZData
例子:Z = [1 2 3;4 5 6]
Z = [1 2 3;4 5 6]
例子:Z = sinx + cos y
Z = sinx + cos y
从表面到光源的方向,指定为两个或三个元素矢量。向量有这样的形式[sx sy sz]或(方位高度).默认方向为当前视图方向逆时针45°。
[sx sy sz]
(方位高度)
(。55 .6 .4 10]
反射常数,指定为四个元素向量。矢量定义了环境光的相对贡献,漫反射,镜面反射和镜面发光系数使用的形式[ka kd ks shine].默认情况下,k是(。55 .6 .4 10].
[ka kd ks shine]
要绘制的轴,指定为轴对象。如果不指定坐标轴,那么surfl绘制到当前轴。
轴
点的顺序X,Y,Z矩阵定义了参数曲面的内外。要有对面反射的光源,使用surfl (X, Y, Z).
使用注意事项和限制:
此函数接受GPU数组,但不运行在GPU上。
有关更多信息,请参见在图形处理器上运行MATLAB函数(并行计算工具箱).
此函数操作在分布式数组上,但在客户端MATLAB中执行。
有关更多信息,请参见运行MATLAB函数与分布式阵列(并行计算工具箱).
colormap
阴影
光
显示亮度图像
视图
pcolor
冲浪
您有这个示例的修改版本。要使用编辑打开此示例吗?
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在可用的地方获得翻译的内容,并查看当地的活动和优惠。根据您所在的位置,我们建议您选择:.
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系当地办事处