通用函数get和set

所有对象都有属性来定义它们的特征,正是通过设定这些属性来修正图形显示的方式。尽管许多属性所有的对象都有,但与每一种对象类型(比如坐标轴,线,曲面)相关的属性列表都是独一无二的。对象属性可包括诸如对象的位置、颜色、类型、父对象、子对象及其它内容。每一个不同对象都有和它相关的属性,可以改变这些属性而不影响同类型的其他对象。和每一种对象类型(图形,坐标轴,线,文本,曲面,补片和图象)相关的完整的属性列表在本章的后面给出。

对象属性包括属性名和与它们相联关的值。属性名是字符串,它们通常按混合格式显示,每个词的开头字母大写,比如:’ LineStyle ‘ 。但是,MATLAB识别一个属性时是不分大小写的。另外,只要用足够多的字符来唯一地辨识一个属性名即可。例如,坐标轴对象中的位置属性可以用 ‘ Position ‘, ‘ position ‘ ,甚至是 ‘ pos ‘来调用。

当建立一个对象时,它用一组缺省属性值,该值可以用两种方法来改变。可以用{属性名,属性值}对来建立对象生成函数;或者在对象建立后改变属性。前一种方法的例子是:

» Hf_1=figure( ‘color’, ‘white’ )

它用缺省的属性值建立一个新的图形窗口,只是背景颜色被设为白色而不是缺省的黑色。

为了获得和改变句柄图形对象的属性只需要两个函数。函数get返回某些对象属性的当前值。使用函数get的最简单语法是get(handle, ‘ PropertyName’ )。例如:

» p=get(Hf_1, ‘position’ )

返回具有句柄Hf_1图形窗口的位置向量。

» c=get(Hl_a, ‘color’ )

返回具有句柄Hl_a对象的颜色。

函数set改变句柄图形对象属性,使用语法set(handle, ‘PropertyName’ ,value)。例如:

» set(Hf_1, ‘Position’ ,p_vect)

将具有句柄Hf_1的图形位置设为向量p_vect所指定的值。同样

» set(Hl_a, ‘color’ , ‘r’ )

将具有句柄Hl_a的对象的颜色设置成红色。

一般情况下,函数set可以有任意数目的( ‘PropertyName’ ,PropertyValue)对。比如:

» set(Hl_a, ‘Color’ , ‘r’ , ‘Linewidth’ ,2, ‘LinStyle’ , ‘--’ )

将具有句柄Hl_a的线条变成红色,线宽为2点,线型为破折号。

除了这些主要功能,函数set和函数get还能提供帮助。例如» set(handle, ‘PropertyName’ )返回一个可赋给由handle所描述对象的属性值列表。例如:

» set(Hf_1, ‘Units’ )

[inches|centimeters|normalized|points|{pixels}]

表明由Hf_1所引用的图形的 ‘Unites’属性是五个可允许的字符串,而其中 ‘pixels’ 是缺省值。

如果指定一个没有固定值的属性,那么,MATLAB就会通知如下:

» set(Hf_1, ‘Position’ )

A figure’s ‘Position’ property does not have a fixed set of property values。

除了set命令,句柄图形对象创建函数(例如figure,axis,line等等)接受多个属性名和属性值对。例如:

» figure( ‘Color’ , ‘blue’ , ‘NumberTitle’ , ‘off’ , ‘Name’ , ‘My Figure’ )

创建一个图形窗口,背景为兰色,标有 ‘My Figure’ 而不是缺省标题 ‘Figure No. 1’。

为了形象说明上述概念,考虑下面的例子:

» Hf_fig =figure % create a figure having an interger handle

Hf_fig=

1

» Hl_line=line % create a line having a floating-pointer handle

Hl_line =

59.0002

» set(Hl_line); % list settable properties and potential values

Color

EraseMode: [ {normal} | background | xor | none ]

LineStyle: [ {-} | -- | : | -. | + | o | * | . | x ]

LineWidth

MarkerSize

Xdata

Ydata

Zdata

ButtonDownFcn

Clipping: [ {on} | off ]

Interruptible: [ {no} | yes ]

Parent

UserData

Visible: [ {on} | off ]

» get(Hl_line); % list properties and current property values

Color = [1 1 1]

EraseMode = normal

LineStyle = -

LineWidth = [0.5]

MarkerSize = [6]

Xdata = [0 1]

Ydata = [0 1]

Zdata = [ ]

ButtonDownFcn =

Children = [ ]

Clipping = on

Interruptible = no

Parent = [58.0002]

Type = line

UserData = [ ]

Visible = on

在上例中,所创建的线条中的 ‘Parent’属性就是包含线条的坐标轴的句柄。而且所显示的图形列表被分为两组。在空行上的第一组,列出了该对象的独有属性,而空行下的第二组列出所有的对象共有的属性。注意到函数set和函数get返回不同的属性列表。函数set只列出可以用set命令改变的属性,而get命令列出所有对象的属性。在上面的例子中,函数get列出了 ‘Children’和 ‘Type’ 属性,而set命令却没有。这一类属性只可读,但不能被改变,它们叫做只读属性。

与每一个对象有关的属性数目是固定的,但不同的对象类型有不同数目的属性。象上面所显示的,一个线条对象列出了16个属性,而一个坐标轴对象列出了64个属性。显然,透彻地说明和描述所有对象类型的全部属性超出本书的范围。但是,其中的很多属性本书以后要详细讨论,并且列出全部属性。

除了函数set和get,MATLAB还提供了另外两个函数来操作对象和它们的属性。任意对象和它们的子对象可以用 » delete(handle) 来删除。同样 » reset(handle) 将与句柄有关的全部对象属性(除了 ‘Position’ 属性)重新设置为该对象类型的缺省值。



matlab中get和set命令,关于matlab中get和set的用法(转)相关推荐

  1. 云服务器中新建文件夹命令,云服务器中新建文件夹命令

    云服务器中新建文件夹命令 内容精选 换一换 本指导适用于用户做网页301重定向时参考使用.装有IIS的服务器做301重定向在IIS里把网站正常发布,例如域名为www.aaa.com.在硬盘上建一个空文 ...

  2. linux中关于防火墙的命令,Linux系统中查看防火墙的命令详解

    Linux系统中如果要查看到防火墙的状态信息要怎么办呢?下面由学习啦小编为大家整理了Linux系统中查看防火墙的命令详解,希望对大家有帮助! Linux系统中查看防火墙的命令详解:一.service方 ...

  3. matlab中get和set命令,关于matlab中get和set的用法

    求极值点我现在知道有两种方法: 建立一个fun.m文件: function fx=fun(x) fx=sin(x) 然后在命令窗口中调用: z=fmax('fun',[0,pi/2])%同样的函数还有 ...

  4. matlab中调用histeq函数命令,根据MATLAB的histeq函数改写的运行在OpenCV下的直方图规定化源码!...

    据说,图像的直方图规定化比直方图均衡化用得更多,但是很奇怪的是OpenCV居然没有图像直方图规定化的源码!所以,我就有必要在OpenCV下写一个图像直方图规定化处理的函数,以方便将来使用. 我在网上找 ...

  5. 工作中常用的linux命令,Linux工作中常用到的一些命令(持续更新)常用的

    1.查看运行级别3开启的服务列表: chkconfig --list|grep 3:on 2.查找某类型的文件并计算总大小. find / -name *.conf -exec wc -c {} \; ...

  6. 从MySQL中导出表中数据_用命令从mysql中导出/导入表结构及数据

    在命令行下mysql的数据导出有个很好用命令mysqldump,它的参数有一大把,可以这样查看: mysqldump 最常用的: mysqldump -uroot -pmysql databasefo ...

  7. Java中如何执行source命令,在Java中运行UNIX Source命令

    这是我关于stackoverflow的第一个问题,所以我会尽量保持简洁和相关. 我正在创建一个试图调用位于系统上的外部程序的Java程序,为了做到这一点,我需要调用一个shell脚本来设置相关库的链接 ...

  8. mysql中的shell脚本命令_shell脚本中mysql命令

    展开全部 本文介绍 MySQL 8.0 shell 子模块 Util 的两个导入特性 importTable/import_table(JS和python 版本的命名差e68a84e8a2ad6261 ...

  9. linux命令冒号加叹号,Linux中的叹号命令

    在shell环境下操作,需要积累点快捷输入的小技巧: 最常用的技巧恐怕就是Tab自动补全以及上方向键来回退上几条历史命令了,这些对于csh,bash,ksh,zsh都适用. 最近还找到一种快速回退上一 ...

  10. linux++查找隐藏文件,使用find命令查找Linux中的隐藏文件的方法

    我们可以在Linux 或者 Unix 系统上使用 find 命令去查询所有(全部)隐藏文件 基本语法如下: 复制代码 代码如下: [root@dabu.info ~]#find /要查找的文/件/夹/ ...

最新文章

  1. .ARM.exidx
  2. swift使用cocoapods导入oc三方库
  3. 新年来临,给大家送上机器学习,人工智能相关书籍,这可能是中奖率最高的一次送书活动...
  4. 一天发多少短信会封号_枸杞一天吃多少?吃多了会怎样?黑枸杞红枸杞哪个好?...
  5. 推荐使用:Vue.js ReactJS Angular 2 AngularJS
  6. android:contentDescription
  7. Redis 两种持久化方式的原理
  8. matlab的小波分析,matlab小波分析步骤是什么 - 全文
  9. 史上最详细的WinHex数据恢复大师(六大章节)视频教程
  10. CountDownLatch、CyclicBarrier实战场景分析(附代码)
  11. V型滤池类毕业论文文献包含哪些?
  12. MAC 中selenium、webdriver打开Chrome浏览器闪退问题(版本号一致)
  13. 游戏数据运营--2.新版本效果分析案例
  14. 佐治亚大学计算机工程本科课程,美国大学本科专业排名:计算机工程.docx
  15. 手把手教你撸最新Youtube视频 拖拽动画效果
  16. 京东商品详情页API接口、京东商品销量API接口、京东商品列表API接口、京东APP详情API接口、京东详情API接口,京东SKU信息接口
  17. DIV常用的几种边框样式!(转)
  18. 九成宫醴泉铭-欧阳询(慢更)
  19. 企业建站选择阿里云服务器配置详细教程 1
  20. 寂寞沙洲冷......

热门文章

  1. Android Spinner设置默认选中的值
  2. kernel编译报错问题kernel is not clean, please run 'make mrproper'
  3. linux下vim的安装与配置(centos)
  4. bzoj4006 [JLOI2015]管道连接
  5. 【tyvj】【dp】回文词(IOI2000)
  6. Android_自适应布局
  7. BI系统的应用组织思路与数据分析模式
  8. Pylot——跨平台的网站压力测试工具
  9. DataAdapter对象填充数据集
  10. Tomcat详解(十)——Tomcat性能调优