MATLAB如何创建补片对象:patch函数的使用方法

2020年12月12日21:27:02MATLAB如何创建补片对象:patch函数的使用方法已关闭评论

MATLAB如何创建补片对象:patch函数的使用

补片对象是由一个或多个多边形构成的。补片对象特别适合为现实世界中的事物建立模型。补片对象可以用fill、fill3、contours和patch函数创建。在MATLAB中,创建补片对象的低层函数是patch函数,通过定义多边形的顶点和多边形的填充颜色来实现。patch函数的调用格式如下。

·patch(x,y,z,color):x、y、z是向量或矩阵,定义多边形顶点。若x、y、z为m × n大小的矩阵,则每一行的元素构成一个多边形。color指定填充颜色,若f为标量,补片对象用单色填充;若f为向量,补片对象用不同颜色填充各多边形。每个多边形用不同颜色,则可以产生立体效果。

·patch(属性名1,属性值1,属性名2,属性值2,…):以指定属性的方式创建补片对象。

补片对象的其他常用属性如下。

·Vertices和Faces属性:其取值都是一个m × n大小的矩阵。Vertices属性定义各个顶点,每行是一个顶点的坐标。Faces属性定义图形由m个多边形构成,每个多边形有n个顶点,其每行的元素是顶点的序号(对应Vertices矩阵的行号)。

·FaceVertexCData属性:当使用Faces和Vertices属性创建补片对象时,该属性用于指定补片颜色。

·FaceColor属性:设置补片对象的填充样式,可取值为RGB三元组、'none'、'flat'和'interp' (线性渐变)。

·XData、YData和ZData属性:其取值都是向量或矩阵,分别定义各顶点的x、y、z坐标。若它们为矩阵,则每一列代表一个多边形。

例题 用patch函数绘制一个长方体。

在命令窗口输入:

k=3;    % k为长宽比

X=[0 1 1 0;1 1 1 1;1 0 0 1;0 0 0 0;1 0 0 1;0 1 1 0]';  %X、Y、Z的每行分别表示各面的四个点的x、y、z坐标

Y=k*[0 0 0 0;0 1 1 0;1 1 1 1;1 0 0 1;0 0 1 1;0 0 1 1]';

Z=[0 0 1 1;0 0 1 1;0 0 1 1;0 0 1 1;0 0 0 0;1 1 1 1]';

%生成和X同大小的颜色矩阵

tcolor=rand(size(X,1),size(X,2));

patch(X,Y,Z,tcolor,'FaceColor','interp');

view(-37.5,35),

则显示结果如图14-12所示。

 

图14-12 长方体的效果图

  • 版权声明:本篇文章(包括图片)来自网络,由程序自动采集,著作权(版权)归原作者所有,如有侵权联系我们删除,联系方式(QQ:452038415)。