教学材料《LabVIEW实验与应用》-第5章_第1页
教学材料《LabVIEW实验与应用》-第5章_第2页
教学材料《LabVIEW实验与应用》-第5章_第3页
教学材料《LabVIEW实验与应用》-第5章_第4页
教学材料《LabVIEW实验与应用》-第5章_第5页
已阅读5页,还剩105页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

5.1数组5.1.1数组在数组中,数组元素位于右侧的数组框架中,按照元素索引由小到大的顺序从左至右或从上至下排列。数组左侧为索引显示(IndexDisplay),其中的索引值是位于数组框架中最左侧或最上侧元素的索引值,这样做是由于数组中能够显示的数组元素个数是有限的,用户通过索引显示可以很容易访问到数组中的任何一个元素。数组的创建分两步进行:第一步,从“控件”→“新式”→“数组、矩阵与簇”子选板中创建数组框架,如图5.1.1所示。注意,此时创建的只是一个数组框架,不包含任何内容。下一页返回5.1数组第二步,根据需要将相应数据类型的前面板对象放入数组框架中。图5.1.2所示是将一个数字量控件放入数组框架,这样就创建了一个数字类型数组(数组的属性为控制)。从图5.1.2中可以看出,当数组创建完成后,数组在框架程序中相应的端口就变为相应颜色和数据类型的图标了。另外,数组在创建之初都是一维数组,如果要用到二维以上的数组,用鼠标(对象操作工具状态)在数组索引显示边框下边的尺寸控制点上向下拖动,或者在数组的右键弹出菜单中选择“添加维度”(AddDimension)选项即可添加数组的维数,如图5.1.3所示。上一页下一页返回5.1数组注意:在程序框图中数组相对应的端口的图标中有一个方括号,方括号线条的粗细与数组的维数成正比,数组的维数越高,方括号的线条越粗。5.1.2数组操作函数对一个数组进行操作,无非是求数组的长度、对数据排序、取出数组中的元素、替换数组中的元素或初始化数组等各种运算。传统编程语言主要依靠各种数组函数来实现这些运算,而在LabVIEW中,这些函数是以功能函数节点的形式表现的,本小节将详细介绍“函数”→“编程”→“数组”子选板(见图5.1.4)中各节点的用法。上一页下一页返回5.1数组1.数组大小函数返回输入数组的长度,节点的图标及其端口定义如图5.1.5所示。节点的输入为一个n维数组,输出为该数组各维包含元素的个数。当n=1时,节点的输出为一个标量;当n>1时,节点的输出为一个一维数组,数组的每一个元素对应输入数组中每一维的长度。2.索引数组函数返回输入数组中由输入索引index指定的元素,节点的图标及其端口定义如图5.1.7所示。3.替换数组子集函数上一页下一页返回5.1数组替换输入数组中的一个元素,节点的图标及其端口定义如图5.1.9所示。注意:输入替换数组子集节点上“新元素/子数组”端口的数据类型必须与输入数据的数据类型一致。4.数组插入函数在数组中指定的位置插入元素,节点的图标及其端口定义如图5.1.11所示。5.删除数组元素函数从数组中删除指定数目的元素,节点的图标及其端口定义如图5.1.13所示。上一页下一页返回5.1数组“索引”端口用于指定所删除元素的起始元素的索引号,长度端口用于指定删除元素的数目,“已经删除元素的数组子集”端口返回的是删除元素后的新数组,“已经删除的部分”端口返回的是所删除的元素。6.初始化数组函数在初始化数组时,节点的图标及其端口定义如图5.1.15所示。数组维数由节点左侧维数大小端口的个数决定。数组中所有的元素都相同,均等于输入元素端口中的值。上一页下一页返回5.1数组用鼠标(对象操作工具状态)在节点图标下边缘的尺寸控制节点上向下拖动,或在“维数大小”端口的右键弹出菜单中选择“添加维度”选项,可添加维数大小端口。7.创建数组函数建立一个新的数组,节点的图标及其端口定义如图5.1.17所示。节点将从左侧端口输入的元素或数组按从上到下的顺序组成一个新的数组。节点在创建之初只有一个输入端口,用鼠标(对象操作工具状态)在节点图标下边缘(或上边缘)的尺寸控制点上拖动,或在节点左侧端口的右键弹出菜单中选择“添加输入”选项,可添加输入端口,如图5.1.18所示。上一页下一页返回5.1数组8.数组子集函数从输入数组中取出指定的元素,节点的图标及其端口定义如图5.1.20所示。输入数组可为n维,节点的输出是输入数组中从索引处开始的,长度为长度输入端口输入值的那部分元素。注意:当输入数组为n维时,节点的输出数组也是n维。数组子集节点和索引数组节点的功能有些类似,但又有所不同。索引数组节点只能从数组中取出一个元素或一行(列)元素,不能同时取出数组中多个元素或多行(列)元素,而数组子集节点则可以实现,但数组子集节点的使用稍微复杂一些,需要更多的输入参数。上一页下一页返回5.1数组用户可以根据自己的需要和编程习惯选择合适的节点。9.数组最大值与最小值函数返回输入数组中的最大值和最小值,以及它们在数组中所在的位置,节点的图标及其端口定义如图5.1.22所示。数组可以是任意维的,当数组中有许多元素同为最大值或最小值时,节点只返回第一个最大值或最小值所在的位置。10.重排数组维数函数改变输入数组的维数,节点的图标及其端口定义如图5.1.24所示,输出数组的维数由节点图标左侧“维数大小”端口的个数决定。上一页下一页返回5.1数组用鼠标(对象操作工具状态)在节点图标下边缘(或上边缘)的尺寸控制点上拖动,或在“维数大小”端口的右键弹出菜单中选择“添加维度”选项,可添加“维数大小”端口的个数,如图5.1.25所示。11.一维数组排序函数将输入的一维数组按升序排序,节点的图标及其端口定义如图5.1.27所示。12.搜索一维数组函数搜索指定元素在一维数组中的位置,节点的图标及其端口定义如图5.1.29所示。上一页下一页返回5.1数组由开始索引端口指定开始搜索的位置,当数组指定位置后的那部分元素没有该元素时,节点返回-1;若该元素存在,则返回该元素所在位置。13.拆分一维数组函数将输入的一维数组在指定的元素处截断,分成2个一维数组,节点的图标及其端口定义如图5.1.31所示。当输入的索引值小于等于0时,第一个子数组为空;当输入的索引值大于输入数组的长度时,第二个子数组为空。14.反转一维数组函数将输入的一维数组前后颠倒,输入数组可以是任意类型的数组,节点图标及其端口定义如图5.1.33所示。上一页下一页返回5.1数组15.一维数组移位函数将一个一维数组的最后n个元素移至数组的最前面,节点的图标及其端口定义如图5.1.35所示。16.一维数组插值函数线性插值,节点的图标及其端口定义如图5.1.37所示。根据“指数索引或x”端口的输入来确定输入数组中对应的“y值”。17.以阀值插值一维数组函数一维数组阀值是线性插值的逆过程,节点的图标及其端口定义如图5.1.39所示。根据“过阀值的y”端口所输入的“y值”,从“开始索引”端口输入的开始位置在一维数组中确定“y值”的位置。上一页下一页返回5.1数组18.交织一维数组函数将从输入端口输入的一维数组插入输出的一维数组中,节点的图标及其端口定义如图5.1.41所示。插入的顺序为:首先按从上到下的顺序取出所有输入数组中的第0个元素,放入输出数组中;然后再按从上到下的顺序取出所有输入数组中的第1个元素,放入输出数组中;其他元素的取法以此类推。用鼠标(对象操作工具状态)拖动节点图标下边缘(或上边缘)上的尺寸控制点,或者在输入端口的右键弹出菜单中选择“添加输入”选项,可添加输入端口的个数,如图5.1.42所示。上一页下一页返回5.1数组19.抽取一维数组函数将输入的一维数组分成数个一维数组,是交织一维数组函数的逆过程。节点的图标及其端口定义如图5.1.44所示。当输出端口数为n时,第1个输出数组的组成元素为输入数组中的第0,n,2n,…个元素;第2个输出数组的组成元素为输入数组中的第1,n+1,2n+1,…个元素;第3个、第4个、…、第n个输出数组以此类推。上一页下一页返回5.1数组用鼠标(对象操作工具状态)拖动节点图标下边缘(或上边缘)的尺寸控制点,或者在输入端口的右键弹出菜单中选择“添加输出”选项,可添加输出端口的个数,如图5.1.45所示。20.二维数组转置函数转置输入的二维数组,也即矩阵转置,节点的图标及其端口定义如图5.1.47所示。上一页返回5.2簇簇(Cluster)是LabVIEW中一个比较特别的数据类型,它可以将几种不同的数据类型集中到一个单元中形成一个整体。簇类似于Pascal语言中的Record或C语言中的Struct。簇通常可将程序框图中的多个相关数据元素集中到一起,这样只需要一条数据连线即可把多个节点连接在一起,不仅减少了数据连线的数量,还可以减少SubVI的连接端口的数量。5.2.1簇的创建簇的创建类似于数组的创建。首先通过“控件”→“新式”→“数组、矩阵与簇子”子选板创建簇的框架,如图5.2.1所示。下一页返回5.2簇然后向框架中添加所需的元素,最后根据编程需要更改簇和簇中各元素的名称,如图5.2.2所示。用户在使用一个簇时,主要是访问簇中的各个元素,或者用不同类型但相互关联的数据组成一个簇。在LabVIEW中,这些功能由“函数”→“编程”→“簇、类与变体”子选板中的各个节点来实现,如图5.2.3所示,本小节将介绍如何使用这些节点。5.2.2簇函数的应用1.解除捆绑函数解除捆绑函数即解包,用该节点可以获得簇中元素的值,节点的图标及其端口定义如图5.2.4所示。上一页下一页返回5.2簇一个新的解除捆绑节点只有两个输出端口,当解除捆绑节点的输入端口簇中输入一个簇时,解除捆绑节点会检测输入簇元素的个数,自动生成相应个数的输出端口。2.捆绑函数捆绑函数即打包,将相互关联的不同数据类型(当然也可以相同)的数据组成一个簇,或给簇中的某一个元素赋值,节点的图标及其端口定义如图5.2.6所示。与解除捆绑节点相同,捆绑节点输入端口的个数必须与簇中元素的个数一致。上一页下一页返回5.2簇3.按名称解除捆绑函数按名称解包,节点的图标及其端口定义如图5.2.8所示。用该节点可以得到由元素名称指定簇中相应元素的值,与解除捆绑节点相比,该节点的应用较为灵活。4.按名称捆绑函数按名称打包,它是按名称解除捆绑的逆过程,可将相互关联的不同数据类型(当然也可以相同)的数据组成一个簇,或给簇中的某一个元素赋值。节点的图标及其端口定义如图5.2.11所示。与捆绑节点不同,在使用本节点构成一个簇时,必须在节点中间的输入端口中输入一个簇,确定输出簇的元素组成。上一页下一页返回5.2簇5.创建簇数组函数创建簇数组函数的作用是建立簇的数组,它的用法与创建数组节点类似,节点的图标及其端口定义如图5.2.14所示。与创建数组不同的是,其输入的元素可以是簇。节点会首先将输入端口上的每一个元素转化为一个簇,然后再将这些簇组成一个簇的数组。6.索引与捆绑簇数组函数将输入数组中的元素按照索引组成簇,然后将这些簇组成一个数组,节点的图标及其端口定义如图5.2.16所示。上一页下一页返回5.2簇7.簇至数组转换函数簇至数组转换函数的作用是将簇转化为数组,节点的图标及其端口定义如图5.2.18所示。输入簇的所有元素的数据类型必须相同,节点会按照簇中元素的编号顺序地将这些元素组成一个一维数组。8.数组至簇转换函数数组至簇转换函数的作用是将数组转化为簇,是簇至数组转换函数的逆过程,节点的图标及其端口定义如图5.2.20所示。上一页返回5.3波形显示LabVIEW最吸引人的特性之一就是对数据的图形化显示提供了丰富的支持。强大的图形显示功能增强了用户界面的表达能力,极大地方便了用户对虚拟仪器的学习和掌握。最基本的图形显示控件都位于“控件”→“新式”→“图形”子选板上,如图5.3.1所示。Graph和Chart是LabVIEW图形显示功能中的两个最基本的元素。这两个词都可以译为“图”,但是在LabVIEW中它们有着很大的差别。一般来说,Chart可以称为“记录图”,它将数据在坐标系中实时、逐点(或者一次多个点)地显示出来,可以反映被测物理量的变化趋势,与传统的模拟示波器、波形记录仪的显示方式相仿。下一页返回5.3波形显示Graph则是对已采集的数据进行事后处理,它先得到所有需要显示的数据,然后根据实际要求将这些数据组织成所需的图形一次性显示出来,下面分别介绍几个常用的图形控件。5.3.1波形图控件波形图(WaveformGraph)用于将测量值显示为一条或多条曲线。波形图仅能绘制单值函数,即在y=f(x)中,各点沿x轴均匀分布。波形图可显示包含任意个数据点的曲线。波形图接受多种数据类型,从而最大限度地降低数据在显示为图形前进行类型转换的工作量。波形图显示波形是以成批数据一次刷新方式进行的,数据输入的基本形式是数据数组(一维或二维数组)、簇或波形数据。上一页下一页返回5.3波形显示如图5.3.2所示,使用波形图输出了一个正弦函数和一个余弦函数。除了簇和数组,波形图还可以显示波形数据。波形数据是LabVIEW的一种数据类型,本质上还是簇。5.3.2波形图表控件波形图表(WaveformChart)是一种特殊的指示器,可在“图形”子选板中找到,将其选中后拖入前面板即可,如图5.3.10所示。波形图表在交互式数据显示中有3种刷新模式:示波器图表、带状图表、扫描图表。上一页下一页返回5.3波形显示用户可以在右键菜单中的“高级”选项中选择“刷新模式”选项,如图5.3.11所示。示波器图表、带状图表和扫描图表在处理数据时略有不同。带状图表有一个滚动显示屏,当新的数据到达时,整个曲线会向左移动,最原始的数据移出视野,而最新的数据则会添加到曲线的最右端。这一过程与实验中常见的纸带记录仪的运行方式非常相似。示波器图表、扫描图表与示波器的工作方式十分相似。上一页下一页返回5.3波形显示当数据点多到足以使曲线到达示波器图表绘图区域的右边界时,将清除整个曲线,并从绘图区的左侧开始重新绘制,扫描图表和示波器图表类似,不同之处在于当曲线到达绘图区的右边界时,不是将旧曲线消除,而是用一条移动的红线标记新曲线的开始,并随着新数据的不断增加在绘图区中逐渐移动。示波器图表和扫描图表比带状图表运行得快。波形图表和波形图的不同之处是:波形图表保存了旧的数据,所保存旧数据的长度可以自行指定。新传给波形图表的数据被连接在旧数据的后面,这样就可以保持一部分旧数据显示的同时显示新数据。上一页下一页返回5.3波形显示也可以把波形图表的这种工作方式想象为先进先出的队列,新数据到来之后,会把同样长度的旧数据从队列中挤出去。可以通过图5.3.12所示的前面板及程序框图来比较波形图表和波形图。显示的运行结果是一样的,但实现方法和过程不同。在程序框图中可以看出,波形图表产生在循环内,每得到一个数据点,就立刻显示一个;而波形图在循环之外,50个数都产生之后跳出循环,然后一次显示出整个数据曲线,从运行过程可以清楚地看到这一点。值得注意的还有,For循环执行50次,产生的50个数据存储在一个数组中,这个数组创建于For循环的边界上(使用自动索引功能)。上一页下一页返回5.3波形显示在For循环结束之后,该数组就将被传送到外面的波形图中。仔细看程序框图,穿过循环边界的连线在内、外两侧粗细不同,内侧表示浮点数,外侧表示数组。波形图表模拟的是现实生活中的波形记录仪、心电图等的工作方式。波形图表内置了一个显示缓冲器,用来保存一部分历史数据,并接受新数据。这个缓冲区的数据存储按照先进先出的规则管理,它决定了该控件的最大显示数据长度。在默认情况下,这个缓冲大小为1KB,即最大的数据显示长度为1024个,缓冲区容不下的旧数据将被舍弃。波形图表适合实时测量中对参数进行监控,而波形图适合在事后显示数据和分析。即波形图表是实时趋势图,波形图是事后记录图。上一页下一页返回5.3波形显示当绘制单曲线时,波形图表可以接受的数据格式有两种:标量和数组。标量数据和数组被连续在旧数据的后面显示。当输入标量时,曲线每次向前推进一个点。当输入数组数据时,曲线每次推进的点数等于数组的长度。如图5.3.13所示,使用波形图表,生成两组随机数,由于时间延时函数在While循环中,而For循环是一次产生10个随机数,相当于缩短了延时时间,所以产生的波形图是不一样的。上一页下一页返回5.3波形显示当绘制多条曲线时,可以接受的数据格式也有两种:第一种是将每条曲线的一个新数据点(数据类型)打包成簇,即把每种测量的一个点打包在一起,然后输入波形图表中,这时波形图表为所有曲线同时推进一个点,这是最简单也是最常用的方法,如图5.3.14所示;第二种是将每条曲线的一个数据点打包成簇,若干种这样的簇作为元素构成数组,再把数组传送到波形图表中,如图5.3.15所示。这两种方法的前面板显示如图5.3.16所示。5.3.3XY图波形图和波形图表只能用于显示一维数组中的数据或是一系列单点数据,对于需要显示横、纵坐标对的数据,它们就无能为力了。上一页下一页返回5.3波形显示前面讲述的波形图的Y值对应实际的测量数据,X值对应测量点的序号,适合显示等间隔数据序列的变化,如按照一定采样时间采集数据的变化,但是它不适合描述Y值随X值的变化曲线,也不适合绘制两个相互依赖的变量如(Y/X)。对于这种曲线,LabVIEW专门设计了XY图。与波形图相同,XY图也是一次性完成波形显示刷新,不同的是XY图的输入数据类型是由两组数据打包构成的簇,簇的每一对数据都对应一个显示数据点的(X,Y)坐标。当用XY图绘制单曲线时,有两种方法,如图5.3.17所示。上一页下一页返回5.3波形显示在图5.3.17(a)中,是把两组数据数组打包后送给XY图,此时,两个数据数组里具有相同序号的两个数组组成一个点,而且必定是包里的第一个数组对应X轴,第二个数组对应Y轴。使用这种方法来组织数据要确保数据的长度相同,如果两个数据的长度不一样,XY图将以长度较短的那组为参考,而长度较长的那组多出来的数据将被抛弃。在图5.3.17(b)中,先把每一对坐标点(X,Y)打包,然后用这些点坐标形成的包组成一个数组,再送到XY图中显示,这种方法可以确保两组数据的长度一致。当绘制多条曲线时,也有两种方法,如图5.3.18所示。上一页下一页返回5.3波形显示在图5.3.18(a)中,程序先把两个数组的各个数据打包,然后分别在两个For循环的边框通道上形成两个一维数组,再把这两个数组组成一个二维数组送到XY图中显示。在图5.3.18(b)中,程序先让两组的输入输出在For循环的边框上形成数组,然后打包,用一个二维数组送到XY图中显示,这种方法比较直观。用XY图时,也要注意数据的类型转换。如图5.3.19所示,此程序是显示一个半径为1的圆。上一页下一页返回5.3波形显示这个程序框图使用了Express中的ExpressXY图,当For循环输出的两个数组介入“X输入”和“Y输入”时,自动生成了转换为动态数据函数的调用,若数据源提供的数据是波形数据类型,则不需要调用转换至数据函数,而是直接连到其输入端。对于ExpressXY图,可以双击打开其“属性”对话框,在其“属性”对话框中可以设置是否在每次调用时清除数据。对于上一个示例,也可将正弦函数和余弦函数分开来做,使用两个正弦波来实现,程序框图如图5.3.20所示。当输入相位1的值和相位2的值相差90或270时,输出波形与上个示例相同,如图5.3.20所示。上一页下一页返回5.3波形显示当相位差为0时,绘制的图形是直线;当相位差不为0、90、270时,图形为椭圆,如图5.3.21所示。5.3.4强度图和强度图表强度图(Graph)和强度图表(Chart)使用一个二维的显示结构来表达一个三维的数据,它们之间的差别主要是刷新方式不同。本小节将对强度图和强度图表的使用方法进行介绍。1.强度图强度图是LabVIEW提供的另一种波形显示,它用一个二维强度图表示一个三维的数据类型,一个典型的强度图如图5.3.24所示。上一页下一页返回5.3波形显示从图5.3.24中可以看出,强度图与前面介绍过的曲线显示工具在外形上最大的区别是,强度图拥有标签为幅值的颜色控制组件,如果把标签为时间和频率的坐标分别理解为X轴和Y轴,则幅值组件相当于Z轴的刻度。在使用强度图前先介绍一下颜色梯度,颜色梯度在“控件”选板中的“经典”子选板中,当把这个控件放在前面板时,默认建立一个指示器,如图5.3.25所示。从图5.3.25中可以看到,颜色梯度指示器的左边有个颜色条,颜色条上有数字刻度,当指示器得到数值输入数据时,输入值对应的颜色显示在控件右侧的颜色框中。上一页下一页返回5.3波形显示在编辑和运行程序时,用户可单击上下两个小矩形,这时会弹出颜色拾取器,在里面定义越界颜色。实际上,颜色梯度只包含3个颜色值:0对应黑色,50对应蓝色,100对应白色。0~50和50~100的颜色都是插值的结果,在颜色条上弹出的快捷菜单中选择“添加刻度”选项可以增加新的刻度,如图5.3.26所示。增加刻度后,可以改变新刻度对应的颜色,这样就为刻度梯度增加了一个数值颜色对。在使用强度图时,要注意其排序顺序。如图5.3.27所示,原数组的第0行在强度图中对应于最左侧的一列,而且元素对应色块按从下到上的排序。值为100时,对应的白色在左上方;值为0时,对应的黑色在底端中间。上一页下一页返回5.3波形显示图5.3.28显示设置的一个简单的强度图,在这个程序框图中,利用两个For循环构造一个5行10列的数组,由于数组在强度图中的排序已经讲述,所以在显示屏上共有5列,每列高度为10。创建强度图的颜色也可以通过强度图属性节点中的色码表来实现,这个节点的输入为一个大小为256的整数数组,这个数组其实是一张颜色列表,它与Z轴的刻度一起决定了颜色映射条上数值颜色的关系。在颜色条上可以定义上溢出和下溢出的数值的大小,颜色表数组中序号为0的单元里的数据对应为下溢出的颜色。序号为255的单元里的数据对应为上溢出的颜色,而序号为1~254中的数据从颜色条中最大最小值之间按插值的方法进行比较。上一页下一页返回5.3波形显示2.强度图表与强度图一样,强度图表也是用一个二维的显示结构来表示一个三维的数据类型,它们之间的主要区别在于图像的刷新方式不同:强度图接收到新数据时会自动清除旧数据的显示,而强度图表会把新数据的显示接接到旧数据的后面。这也是波形图表和波形图的区别。上节介绍了强度图的数据格式为一个二维数组,它可以一次性把这些数据显示出来。虽然强度图表也是接收和显示一个二维数据数组,但它显示的方式不一样。它可以一次性显示一列或几列图像,在屏幕及缓冲区保存一部分旧的图像和数据,每次接收到新的数据时,新的图像紧接着在原有图像的后面显示。上一页下一页返回5.3波形显示当下一列图像将超出显示区域时,将有一列或几列旧图像移出屏幕。数据缓冲区同波形图表一样,也是先进先出,大小可以自己定义,但结构与波形图表(二维)不一样,而强度图表的缓冲区结构是一维的。这个缓冲区的大小是可以设定的,默认为128个数据点,若想改变缓冲区的大小,可以在强度图表上单击鼠标右键,从弹出的快捷菜单中选择“图表历史长度…”选项,如图5.3.33所示,即可改变缓冲区的大小。图5.3.34是强度图表的使用示例,在这个过程中,先让正弦函数在循环的边框通道上形成一个一维数组,然后再形成一个列数为1的二维数组送到控件中去显示。因为二维数组是强度图表所必需的类型,所以即使只有一行,这一步骤也是必要的。上一页下一页返回5.3波形显示5.3.5三维图形控件在很多情况下,把数据绘制在三维空间里会更有表现力。大量实际应用中的数据,例如某个平面的温度分布、联合时频分析、飞机的运动等,都需要在三维空间中可视化显示数据。三维图形可令三维数据可视化,修改三维图形属性可改变数据的显示方式。1.三维曲面图三维曲面图用于显示三维空间的一个曲面。在前面板放置一个三维曲面图时,程序框图将出现两个图标,如图5.3.35所示。三维曲面的图标及其端口定义如图5.3.36所示。上一页下一页返回5.3波形显示“三维图形”输入端口是ActiveX空间输入端,该端口的下面是两个一维数组输入端,用以输入x、y向量。“z矩阵”端口的数据类型为二维数组,用以输入z坐标。三维曲面在作图时采用的是描点法,即根据输入的x、y、z坐标在三维空间确定的一系列数据点,然后通过插值得到曲面。在作图时,三维曲面根据x和y的坐标数组在XY平面上确定一个矩形网络,每个网格节点都对应着三维曲线上的一个点在XY坐标平面的投影。z矩阵数组给出了每个网格节点所对应的曲面点的z坐标,三维曲面根据这些信息就能够完成作图。三维曲面不能显示三维空间的封闭图形,如果显示封闭图形,应使用三维参数曲面。上一页下一页返回5.3波形显示2.三维参数图上一小节介绍了三维曲面的使用方法,三维曲面可以显示三维空间的一个曲面,但在显示三维空间的封闭图形时就无能为力了,这时就需要使用三维参数图了。图5.3.39所示为三维参数图的前面板显示和程序框图。图5.3.40所示为三维参数曲面各端口的定义。三维参数曲面各端口的含义是:“三维图形”表示3DParametric输入端,“x矩阵”表示参数变化时x坐标所形成的二维数组;“y矩阵”表示参数变化时“y”坐标所形成的二维数组;“z矩阵”表示参数变化时z坐标所形成的二维数组。上一页下一页返回5.3波形显示三维参数曲面的使用较为复杂,但借助参数方程的形式比较容易理解,需要三个方程:3.三维曲线图三维曲线图用于显示三维空间中的一条曲线,三维曲线图的前面板及程序框图如图5.3.42所示。如图5.3.43所示,三维曲线有3个重要的输入数据端口,分别是“x向量”“y向量”“z向量”,分别对应曲线的3个坐标向量。在编写程序时,只要分别在3个坐标向量上连接一维数组数据就可以显示三维曲线。上一页返回图5.1.1创建数组的第一步返回图5.1.2创建数组的第二步返回图5.1.3添加数组的维数返回图5.1.4“数组”子选板返回图5.1.5数组大小节点的图标及其端口定义返回图5.1.7索引数组节点的图标及其端口定义返回图5.1.9替换数组子集节点的图标及其端口定义返回图5.1.11数组插入节点的图标及其端口定义返回图5.1.13删除数组元素节点的图标及其端口定义返回图5.1.15初始化数组节点的图标及其端口定义返回图5.1.17创建数组节点的图标及其端口定义返回图5.1.18“添加输入”选项返回图5.1.20数组子集节点的图标及其端口定义返回图5.1.22数组最大值与最小值节点的图标及其端口定义返回图5.1.24重排数组维数节点的图标及其端口定义返回图5.1.25“添加维度”选项返回图5.1.27一维数组排序节点的图标及其端口定义返回图5.1.29搜索一维函数节点的图标及其端口定义返回图5.1.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论