MATLABRECTANGLE(Matlab中rectangle函数使用)
一、matlab中units怎么使用
gcf返回当前Figure对象的句柄值
gca返回当前axes对象的句柄值
gco返回当前鼠标单击的句柄值,该对象可以是除root对象外的任意图形对象,并且Matlab会把当前图形对象的句柄值存放在Figure的CurrentObject属性中
Axes对象的属性
(1)title('new','color','r');给坐标轴命名为new,红色
title({'this title','has 2'});命名为两行的标题
(2)Units:有效值为pixels/normalized/inches/centimeters/points/characters
决定各种位置属性的度量单位,相对于窗口左下角为基准。当设置为Pixels时,以像素为单位;当设置为normalized时,以坐标为单位,屏幕的左下角为[0,0],右上角为[1.0,1.0]。
(3)grid on:在图像中显示网格。
(4)children:控制axes对象的子对象,即image\light\line\patch\rectangle\surface和text等对象,可通过get(gca,'children')来返回当前坐标轴的子对象构成的句柄值向量。
(5)字体属性:
Fontangle字体角度(正常normal或斜体italic/oblique)
Fontname字体名称
fontsize字体大小(单位由Fontunits决定)
fontunits字体单位(points/normalized/inches/centimeters/pixels)
fontweight字体粗细(normal/bold/light/demi)
gridlinestyle决定坐标轴网格线的样式,‘-’为实线‘--’为虚线‘:’为点线‘-.’为点虚线
plot(1:10);grid on;set(gca,'gridlinestyle','-.');将当前坐标轴显示的网格线为点-虚线
(6)linewidth定义X,Y和Z轴的轴线宽度(以点单位定义)
(7)NextPlot:有效值为add|replace|replacechildren,默认为 replace
add表示使用当前的坐标轴,把新的图形对象加到此坐标轴中是一般保留的做法,replace表示重新设置坐标轴的所有属性(Position除外),也就是在绘图前会删除当前坐标轴和它的子对象。replacechildren表示移除当前坐标轴中所有子对象,但不重新设置坐标轴的所有属性
(8)Outerposition决定坐标轴外边界的位置。由位置向量[left,bottom,width,height]组成,其中left,bottom表示相对于绘图窗口左下角的位置,width,height表示区域尺寸,默认为[0 0 1 1]
(9)Position由位置向量[left,bottom,width,height]组成,决定坐标轴位置
(10)Tag定义本坐标轴的卷展栏,因为每一个对象都有自己唯一的识别码即tag,以方便findobj函数查找坐标轴句柄值。
(11)visible决定坐标轴是否可见
(12)set(gca,'xgrid','on')绘制X轴垂直网格线
set(gca,'gridlinestyle',':','linewidth',3)设置网格线线条类型和宽度
set(gca,'box','on')将图轴方框绘制出来
(13)set(gca,'xscale','linear');将X轴刻度设为线性
set(gca,'yscale','log');将Y轴刻度设为对数
(14)disp()显示一个数组,但不显示其数组名称
二、MATLAB中strel函数的作用以及用法参数是什么
建议在matlab命令行输入: doc strel可查看详细的内容
函数功能:构造结构元素(Structuring element)。所谓结构元素,可以看做是一张小图像,它通常用于图像的形态学运算(如膨胀、腐蚀、开运算、闭运算)。
调用格式:
SE= strel(shape, parameters)
根据shape指定的类型创建一个结构元素SE。
SE= strel('arbitrary',
NHOOD)创建一个指定领域的平面结构化元素。NHOOD是一个包含1/0的矩阵;1的位置定义了领域的形态学操作。NHOOD的中心就是它的中心元素,位置在
FLOOR((SIZE(NHOOD)+ 1)/2)。你也可以忽略参数串'arbitrary'而只使用STREL(NHOOD).
SE= strel('arbitrary', NHOOD,
HEIGHT)创建一个指定领域的非平面结构化元素。HEIGHT是一个矩阵,大小和NHOOD相同,他指定了NHOOD中任何非零元素的高度值。HEIGHT必须是实有限值。你也可以忽略参数串'arbitrary'而只使用STREL(NHOOD,HEIGHT).
SE= strel('ball', R, H, N)
SE= strel('diamond', R)
SE= strel('disk', R, N)
SE= strel('line', LEN, DEG)
SE= strel('octagon', R)
SE= strel('pair', OFFSET)
SE= strel('periodicline', P, V)
SE= strel('rectangle', MN)
SE= strel('square', W)
三、matlab中的rectwin函数是什么用途的
面三个绘图函数需要一个指向矩形结构的指针:
fillrect
(hdc,
&rect,
hbrush)
;
framerect
(hdc,
&rect,
hbrush)
;
invertrect
(hdc,
&rect)
;
在这些函数中,rect参数是一个rect型态的结构,它包含有4个字段:left、top、right和bottom。这个结构中的坐标被当作逻辑坐标。
fillrect用指定画刷来填入矩形(直到但不包含right和bottom坐标),该函数不需要先将画刷选进设备内容。
framerect使用画刷画矩形框,但是不填入矩形。使用画刷画矩形看起来有点奇怪,因为对于我们所介绍过的函数(如rectangle),其边线都是用目前画笔绘制的。framerect允许使用者画一个不一定为纯色的矩形框。该边界框为一个逻辑单位元宽。如果逻辑单位大于设备单位,则边界框将会为2个图素宽或者更宽。
invertrect将矩形中所有图素翻转,1转换成0,0转换为1,该函数将白色区域转变成黑色,黑色区域转变为白色,绿色区域转变成洋红色。
windows还提供了9个函数,使您可以更容易、更清楚地操作rect结构。例如,要将rect结构的四个字段设定为特定值,通常使用如下的程序段:
rect.left
=
xleft
;
rect.top
=
xtop
;
rect.right
=
xright
;
rect.bottom
=
xbottom
;
但是,通过呼叫setrect函数,只需要一道叙述就可以得到同样的结果:
setrect
(&rect,
xleft,
ytop,
xright,
ybottom)
;