Labview编程技巧—–怎么过滤数组中的元素
有关过滤掉数组中0的问题,这实际上是过滤数组指定元素的问题,LABVIEW的根本数组操作并没有供给相应的节点,处理这个问题是很有技巧的.
LABVIEW内存操作的时分,关于数据量非常大的数组,假如处理不当地话,会极大影响程序的功能.
OPENG中供给了非常好的处理节点,介绍如下:
我的比如中使用斜坡函数生成一个0–127的天然数组(我用的是DBL),意图是过滤掉值等于1,3,5的元素,运转成果能够看出,135的元素确实被过滤掉了,一起也回来被过滤掉的元素的索引号IND%&&&&&%ES
咱们盯梢一下它的完成办法
能够看出,它首要做的是在数组中查找需求过滤的元素的索引号,并经过循环构成一个由索引号组成的数组.
持续盯梢一下它的查找完成的办法
它不过是使用最根本的数组查找函数,值得一提的是这个VI阐明了怎么接连查找的办法,经过在循环中调用查找VI,假如没有契合条件的元素,查找回来-1,不然回来元素的索引号(偏移量),这相当于C中的指针操作,并以该次索引作为下一次查找的开端方位,这样就完成了接连查找.
在看看得到索引号数组后,怎么过滤这些元素.
这个VI中能够看出它使用的是删去数组元素的办法,这儿的关键是有必要从后往前删去,不然假如早年向后删去,则索引号的方位会发生变化.因而,对索引数组做了降序处理.