Berechnen des gleitenden Durchschnitts Dieses VI berechnet und zeigt den gleitenden Durchschnitt mit einer vorgewählten Zahl an. Zunächst initialisiert das VI zwei Schieberegister. Das obere Schieberegister wird mit einem Element initialisiert und fügt dann kontinuierlich den vorherigen Wert mit dem neuen Wert hinzu. Dieses Schieberegister hält die Summe der letzten x Messungen. Nach dem Teilen der Ergebnisse der Add-Funktion mit dem vorgewählten Wert berechnet das VI den gleitenden Mittelwert. Das untere Schieberegister enthält ein Array mit der Dimension Average. Dieses Schieberegister hält alle Werte der Messung. Die Ersatzfunktion ersetzt nach jeder Schleife den neuen Wert. Dieses VI ist sehr effizient und schnell, weil es die replace-Element-Funktion innerhalb der while-Schleife verwendet, und es initialisiert das Array, bevor es die Schleife eintritt. Dieses VI wurde in LabVIEW 6.1 erstellt. Lesezeichen amp Sharemoving Durchschnitt für 10 Werte aus einem Array Ich habe eine Anwendung zu erstellen, wobei ich kontinuierlich erhalten Werte in einem Array mit einer festen Größe 10 gespeichert. Für jedes neue Zeitintervall wird der letzte Wert gelöscht und neuen Wert wird dem Array hinzugefügt. Zur Zeit werden 10 Werte gelesen und der Mittelwert berechnet. Sobald ich den Mittelwert bekomme. Ich habe mit der minimalen und maximalen Abweichung vom Mittelwert zu vergleichen. Wenn der Wert jedes Arrays eines Satzes innerhalb des Bereichs ist, dann muss ich eine Zählung bereitstellen, die Anzahl von Werten in dem Arraysatz von 10 zeigt, die Zählungen als Anzahl von Werten außerhalb des Bereichs anzeigen. Ein Satz ist von 10 Werten für jedes Zeitintervall. T0-t9 - 10 Werte. T2-t11 - 10 Werte .. für alle set Ich habe anzuzeigen, ob die Menge gültig ist oder nicht. Nachricht 1 von 8 (897 Ansichten) Re: gleitender Durchschnitt für 10 Werte aus einem Array 12-02-2013 04:03 PM Hattest du die Suche, die du haben solltest, bevor du deine Frage gefragt hast, dass ich den gleitenden Durchschnitt und die Suche eingegeben habe Motor sofort gefunden 100 Nachricht Threads, und würde wahrscheinlich mehr gefunden haben, wenn ich es Zeit gegeben hatte. Viele auf der ersten Seite sahen genau so aus, wie Sie wollen. Irren ist menschlich, aber um es wirklich zu verunreinigen braucht man einen Computer. Der Optimist glaubt, dass wir in der besten aller möglichen Welten sind - der Pessimist fürchtet, dass dies wahr ist. Profanity ist die eine Sprache, die alle Programmierer am besten kennen. Ein Experte ist jemand, der alle möglichen Fehler gemacht hat. Nachricht 2 von 8 (868 Ansichten) Re: gleitender Durchschnitt für 10 Werte aus einem Array 12-03-2013 12:53 AM Ich habe das schon getan , Aber nicht scheinen, um eine richtige Lösung zu bekommen. Es tut mir leid, aber ich bin neu bei labview und arbeite für das akademische Projekt, das ich in wenigen Tagen abgeben muss. Ich schätze Ihre Hilfe. Und ich werde versuchen, vertuschen sich für mich durch viele andere Beiträge. Antwort # 3 am: Mai 12, 2010, 07:10:10 am »Sie wollen nur wissen, ob Ihre Methode gültig ist rechts Es ist, wenn das Array voll ist (10). Hätte nichts damit zu tun Ich änderte Ihre vi ein wenig, entfernt die for-Schleife und Gehäuse-Struktur. Unbeantwortete Beiträge Unbeantwortete Themen Ungelesene Beiträge Unbeantwortete Themen Ungelesene Beiträge Unbeantwortete Themen Themen der letzten 24 Stunden Was ich eigentlich suche ist, dass, sobald gt bekomme ich die ersten 10 (in Zeitintervall t0-t9 und Werte als a0-a9) Werte im Array sollte ich die Verarbeitung der Mittelwert und nicht, bis die 10 Arrays mit dem gefüllt worden sind Werte. Nachdem die ersten 10 Werte gefüllt sind, überprüfe ich für die Abweichung für jeden Array-Wert von a0-a9, If im Bereich sollte es ja oder sonst nein (dies habe ich schon) angeben. Gt, sobald dies verarbeitet wird, sollte ich den Datensatz fom t1-t10, Werte als a1-a10 nehmen. Das wird mein neuer satz sein. Wieder folge ich dem Verfahren für die mittlere Prüfung .. gt Dies geht kontinuierlich weiter. In der früheren vi von mir und in der späteren von Ihnen, in beiden Fällen wird der Mittelwert aus dem ersten Wert selbst berechnet. Die für meinen Fall nicht benötigt wird. Es sollte nur verarbeitet werden, wenn alle 10 Werte eingegeben wurden. Später für alle gesetzt sollte es kontinuierlich verarbeiten den Mittelwert. (Seit seitlicher Zeit habe ich immer 10 Werte im Array). Ich versuchte auf der Suche nach dieser Query, konnte aber keine richtige Lösung finden. Ich würde wirklich schätzen, wenn ich geholfen werden kann. Danke im Voraus. Ich nicht wirklich erhalten Ihren Punkt. Sie wollen einen gleitenden Durchschnitt von 10 Punkten, das ist, was Sie bereits implementiert. Aber Sie wollen nicht zu durchschnittlich bis Sie haben Ihre volle 10 Punkte Wenn dies, was Sie wollen, gibt es zwei Optionen. 1. Sie erstellen eine for-Schleife infront der while-Schleifen, die 9-mal Ihre Zufallsgenerator iterates, dann verbinden Sie es mit dem Array shif Register. 2. mit einem leeren Array beginnen und den Mittelwert aus weniger als 10 Punkten berechnen lassen, bis das Array voll ist, wird dieses angehängt. UnCertified LabVIEW Student Mistakes sind für das Lernen, deshalb Anregungen sind immer welcomeMGI Library MGI hat eine Bibliothek von VIs, die wir wieder in der Entwicklung von Kundenprojekten verwenden. Die Bibliothek wird als VIPM-Paket gespeichert, so dass Sie den VI-Paket-Manager installieren müssen. Einige MGI-VIs hängen von anderen OpenG-Paketen ab. Der Inhalt der MGI-Bibliothek wird durch das Erweitern der Elemente unter Array-Funktions-VIs überprüft, die alle allgemeine Arrayoperationen auf numerischen Daten ausführen. MGI Durchschnitt Dies ist ein polymorphes VI. Dieses VI berechnet und gibt den Durchschnittswert des gegebenen Doubles wieder. MGI Centered Weighted Moving Average Führt einen mittig gewichteten gleitenden Durchschnitt auf einem Array entsprechend den Größen - und Gewichtungsparametern durch. MGI Running Average PolyVI: Halten Sie die laufenden Mittelwerte für jeden der Eingabewerte. Infinite Impulse Response erfordert weniger Verarbeitung, aber es braucht unbegrenzte Zeit, um einen stationären Wert zu erreichen. Finite Impulse Reponse unterhält ein Array der angegebenen Größe, ist aber in der Lage, Ausgabe-Mittel. Dieses VI ist ein reentrant funktionale global. MGI Running Maximum Maximales laufendes Maximum. MGI Läuft Minimum Halten Sie ein laufendes Minimum effizient. MGI Interpolation 1D Array Extended Erweiterte Version von Interpolate 1D Array, die außerhalb der Array-Grenzen extrapolieren kann. Eine lineare Erweiterung, die auf dem ersten oder letzten Array-Element basiert, wird für außerhalb des Bereichs liegende Werte verwendet. MGI Threshold 1D Array Extended Eine erweiterte Version der Schwelle, die Fraktionsindizes außerhalb der Arraygrenzen erzeugen kann. Eine lineare Erweiterung, die auf dem ersten oder letzten Array-Element basiert, wird für außerhalb des Bereichs liegende Werte verwendet. MGI Berechnen von Spitzenmomenten Berechnen Sie Spitzenmomente für ein gleichmäßig abgetastetes Signal. 0. Moment ist die Fläche unter der Spitze, d. h. die Summe der Signale 1. Moment ist die Position des Peakcentroidzentrums der Masse. Berechnet durch die Summe (iyi) Summe (yi), es8217s in Einheiten des Abstandes zwischen den Signalen, wobei 0 dem ersten Element des Arrays entspricht. 2. Moment ist die RMS-Peakbreite, auch in Indexeinheiten. MGI Linear Fit Findet die kleinsten Quadrate linearen Anpassungsparameter für die bereitgestellten Daten. Wenn der Bereich der x-Werte nicht größer als der Bereich der y-Werte ist, wird die Anpassung durchgeführt, wobei die x - und y-Werte umgekehrt sind, wobei die Ausgangssignale zurück in die ursprüngliche Orientierung umgewandelt werden. Wenn der optionale Gewichteingang leer oder unbenutzt ist, werden die in der Passung verwendeten Gewichte auf 1 (gleiche Gewichtung) gesetzt. MGI Statistisches Histogramm Erstellen Sie ein Histogramm basierend auf -3 Standardabweichungen und Ausreißern. MGI berechnen Array Differences Dies ist ein polymorphes VI. Berechnen Sie Differenzen zwischen aufeinanderfolgenden Arrayelementen. 0-Ausgangssignal gleich x (0) - x (-1) ist, wobei x (-1) ein optionaler skalarer Eingang ist, der auf Null zurückgeht. MGI berechnen Array Summen Dies ist eine polymorphe VI. Berechnen Sie die Summe der aufeinanderfolgenden Arrayelemente. 0-Element des Ausgangs gleich x (0) x (-1) ist, wobei x (-1) ein optionaler skalarer Eingang ist, der auf Null zurückgeht. MGI Shift Array Verschiebt ein 1-D-Array um eine bestimmte Menge nach oben oder unten, füllt mit NaN. MGI Decimate Array mit Offset Dies ist ein polymorphes VI. Dezimiert das angegebene Array um den angegebenen Wert. Ein Fehler wird ausgegeben, wenn die Array-Länge kein ganzzahliges Vielfaches der Dezimation ist. 8220Offset8221 legt fest, welche Dezimation ausgegeben wird. Wenn Offset größer oder gleich Dezimierung ist, wird ein Fehler ausgegeben. MGI Get Slope at Point Ruft die Einheitslängensteigung der Kurve ab, die durch die Eingabefelder am angegebenen Index definiert ist. 2D-Array-VIs arbeiten auf 2-dimensionalen Daten (wie das, was an ein Intensitätsdiagramm gesendet wird). MGI Edge Enhance 2D Array Führen Sie eine Edge Enhancement Operation auf einem 2D Array basierend auf dem absoluten Wert der Differenzen zwischen Nachbarn eines Punktes in entgegengesetzte Richtungen durch. Es doesn8217t schärfen Kanten, aber es dämpft konstante Regionen. MGI Gaussian Smooth Anwenden einer Gaußschen Glättungsfunktion in einer Richtung auf einem 2D-Array von Daten. Smooth Skala ist die e-fach Länge in Array-Index-Einheiten. Genauigkeitsfaktor ist das Verhältnis des kleinsten enthaltenen Begriffs zum größten Ausdruck. Die Daten werden effektiv von null8217s an der Grenze umgeben. MGI Smooth 2D Array Führen Sie einen Glättungsvorgang auf einem 2D-Array mit einem Kernel wie folgt aus: 0 1 0 1 1 1 0 1 0 Element-Summen werden durch die Anzahl der gültigen Quell-Elemente normalisiert, so dass ein konstantes Array unverändert bleibt. MGI XY-Größen Bestimmen Sie Array-Dimensionen und setzen Sie das Ergebnis in einen XY-Cluster. Anwendungssteuerungs-VIs verwenden LabVIEW VI Server oder führen Aufgaben aus, die mit ausführbaren Programmen oder einer Benutzeroberfläche zusammenhängen. MGI-VI-Referenz Dies ist die polymorphe Version für die Aufrufer-, aktuelle und Referenzniveaus. Das VI verfügt auch über eine ebene Version, die es erlaubt, die gewünschte Referenz genau zu bestimmen. MGI Change Detector Bericht, wenn die Eingabe seit dem letzten Aufruf geändert wurde. Dieses VI ist polymorph und der erste Aufruf dieses VIs wird basierend auf der ausgewählten Instanz auf True oder False zurückgesetzt. MGI Gray if Dieses polymorphe VI ist so konstruiert, dass es die 8220Disabled8221-Eigenschaft der Steuerelemente speist. Abhängig von der Bedingung gibt es entweder 8220Enabled8221 oder 8220Disabled und Grayed Out.8221 MGI Origin an den oberen linken Punkten aus, wobei die referenzierte VI8217s front panel8217s am oberen linken Rand des Bereichs liegen. MGI Save 038 Wiederherstellen von Einstellungen Speichert oder stellt die mit einem VI verknüpften Einstellungen wieder her, einschließlich Feldbegrenzungen, Spaltenbreiten für Listenfelder und Diagrammdiagramme. Die Einstellungen werden in einer Ini-Datei am angegebenen Pfad gespeichert. Bei Tabellenstil-Steuerelementen werden nur die Spalten mit Kopfzeilen gespeichert. MGI Exit if Runtime Dieses VI wurde entwickelt, um am Ende einer Anwendung, die als ausführbare Datei ausgeführt wird, verwendet zu werden. Sie schließt die Vorderseite der ausführbaren Datei, bevor Sie LabVIEW verlassen, wodurch das lästige Flimmern beseitigt wird, wenn sich die Frontplatte in den nicht laufenden Zustand bewegt. Im Quellcode hat dieses VI keine Wirkung. MGI Get Executable Version Wenn dieses VI in eine ausführbare Datei integriert ist, gibt es die Dateiversion (anders als die Produktversion) der ausführbaren Datei zurück. Wenn es in der Entwicklungsumgebung ausgeführt wird, gibt es einfach 8220Development8221 zurück. Ausführbare Dateien, die mit LabVIEW-Versionen vor 8.0 erstellt wurden, enthalten nicht die notwendigen Informationen in der ausführbaren Datei dieses VIs, um die Version zurückzusenden. MGI For Loop Progress Bar Dieses VI ist ein Fortschrittsbalken für For Loops. Wenn die 8220Wait-Zeit8221 abgelaufen ist und die Schleife weniger als halb durch ihre Gesamt-Iterationen ist, öffnet sich dieses VI und zeigt eine Fortschrittsanzeige für die For-Schleife an. Wenn 8220Show Time8221 True ist, zeigt dieses VI eine Annäherung für die verbleibende Zeit an. Ein gleitender Durchschnitt wird verwendet, um die Approximation zu glätten, um Nichtlinearitäten bei der Codeausführung zu kompensieren. MGI ist Runtime Das VI gibt einen Booleschen Wert zurück, der angibt, ob er in einer ausführbaren Datei oder in der Entwicklungsumgebung ausgeführt wird. MGI Get Value Dies ist ein polymorphe VI. Es wird der Wert des Steuerelements durch Verweis angegeben. Es fungiert als ein kleiner Knoten 8220Value8221. MGI Button Dialog Erweiterte Version des eingebauten drei Schaltfläche Dialog für die ursprüngliche Hilfe, klicken Sie auf Link unten). Es wurde ein boolescher Ausgangswert für den Drop-in-Ersatz von Ein - oder Zwei-Tasten-Dialogen verwendet, die, wie im Original, durch Verkabelung leerer Zeichenfolgen für Schaltflächentext erhalten. Eine Option hinzugefügt, um dies zu einem nicht-modalen Dialog zu machen, aber das aufrufende VI zu verbergen, was nützlich ist, wenn Sie ein Fenster, aber nicht alle Fenster blockieren möchten. Dieses VI ist wiederbelebt, um diese Situation zu unterstützen. MGI Defer Panel-Updates Defers oder Restore Panel-Updates für das angegebene VI. Dieses VI verfolgt die Anzahl, wie oft ein Deferrestore für jedes VI erstellt wird, so dass mehrere Defers mit mehreren Wiederherstellungen übereinstimmen müssen. Ein Defer - oder Wiederherstellungsversuch wird versucht, auch wenn bei der Eingabe ein Fehler auftritt. MGI Dirty Dot Setzt, löscht oder liest einen schmutzigen Punkt auf dem Frontpanel Titel des referenzierten VIs. MGI Get VI Control Ref Gibt Refnums aller Bedienelemente auf einem Frontpanel zurück. Wenn die Registerkarte Eingabemasken-Steuerelemente wahr ist, sind alle Steuerelemente auf den Registerkarten rekursiv enthalten. Die Art der zurückgegebenen Refnum wird auch in Control Typei ausgegeben. Control Labeli enthält das Label jedes Controls. MGI Center Callee in Caller Dieses VI ist so konzipiert, dass es ein VI8217s Fenster in einem Anrufer VI8217s zentriert. MGI Fade In 038 Out Dieses VI setzt iterativ die Transparenz des referenzierten VIs von vollständig transparent auf voll undurchsichtig und umgekehrt, so dass eine visuelle 8220Fade In8221 oder 8220Fade Out8221 zur Verfügung steht. Der Standardwert 8220Speed8221 ist auf eine beliebige 821638217 eingestellt. Eine höhere Anzahl führt zu einem schnelleren Fade. MGI Coerce-Panel-Bounds auf sichtbarem Bereich Stellen Sie die angegebenen Panel-Grenzen so ein, dass sie auf den Bildschirm passen. Wenn mindestens ein Pixel mit 50 Pixeln des oberen linken oder oberen rechten Rechtecks auf einem der Monitore angezeigt wird, wird die ursprüngliche Bereichsgrenze ausgegeben. Andernfalls werden die Panel-Schranken so geändert, dass sie auf dem primären Monitor erscheinen. MGI Einstellen der Frontpanelfarbe Stellt die Frontpanelfarbe des referenzierten VIs ein. MGI Set Frontpanel-Titel Stellt den Frontpanel-Titel des referenzierten VIs ein. MGI Scrollbar einstellen Dieses Polymorphe VI zeigt oder blinkt die Scrollbar (en) für die angegebene Steuerreferenz. Weitere Informationen finden Sie in der Instanz VI-Hilfe. MGI Save Front Panel Data Speichert die Steuer - und Indikatordaten in einer MGI ReadWrite Anything-Datei unter dem angegebenen Abschnitt in der angegebenen Datei. Kontroll - und Indikatornamen müssen eindeutig sein. MGI Restore Front Panel Daten Stellt die Steuer - und Indikatordaten aus der angegebenen MGI ReadWrite Anything-Datei wieder her. Kontroll - und Indikatornamen müssen eindeutig sein. MGI Disable Enum Merge VI Dies ist ein Merge-VI für das Enum-Enable-Steuerelement. MGI VI Property Node Dieses VI enthält einen Property Node, der mit der Front Panel: Open-Eigenschaft der VI-Klasse verknüpft ist. Dieses VI dient zum Zusammenführen eines Objektknotens, der bereits als VI-Klassen-Typ verknüpft wurde. MGI Disable Enum Grayed Merge VI Das Disable Enum. vi ist kleiner als das Enum 8220Disabled und Greyed out8221 und kann auf Blockdiagrammen fallengelassen werden, um Platz zu sparen. MGI Disable Enum (Small) Dieses Polymorphic VI enthält eine Instanz für jeden deaktivierten Zustand eines Controls (Enabled, Disabled, Disabled 038 Grayed). Sie benötigt weniger Platz als eine Aufzählungskonstante im Blockdiagramm. Bezier VIs führen Berechnungen auf der Basis von Bezierkurven durch, die den kubischen Splines ähnlich sind, jedoch mit einigen wichtigen Unterschieden. MGI Bezier Find k Suchen Sie das Bézier Control Points-Array für den Block, der y enthält. Y wird gegen y (erstes k 3 4n) getestet, wobei n 0, 1, 8230. Der Rückgabewert ist (erster k 4n), der für die Eingabe in Bezier Inverse geeignet ist. MGI Bezier Suchen nach rückwärts Suchen Sie das Bündel-Kontrollpunkt-Array für den Block, der y enthält. Y wird gegen y (erster k 8211 4n) getestet, wobei n 0, 1, 8230 ist. Der Rückgabewert ist (erster k 8211 4n), der für die Eingabe in Bezier Inverse geeignet ist. MGI Bezier Inverse Multiple Solutions Berechnet die Bezier-Parameter 0..1 aus y, ein Ergebnis der Bezierfunktion. Alle Lösungen im Bereich 0..1 werden in aufsteigender Reihenfolge zurückgegeben. MGI Bezier Inverse Time Berechnet eine Zeit aus einem Blockindex und einem Parameter 0..1. Tatsächlich führt eine inverse Bezier-Funktion statt einer Vorwärts-Eins aus, so dass u zuerst linear auf den Zeitbereich abgebildet wird, dann wird eine inverse Bezier berechnet, und dann wird das Ergebnis in den Zeitbereich neu zugeordnet. MGI Bezier Inverse Berechnen Sie einen Bezier-Parameter 0..1 aus y, ein Ergebnis der Bezierfunktion. MGI Bezier Skalar Berechne einen Bezier-Punkt, der ein Array von Kontrollpunkten, den Index des Anfangs des Blocks von 4 zu verwendenden Punkten und den gewünschten 0-1-Wert enthält. MGI Bezier-Slope-Vektor Berechnen Sie einen N-dimensionalen Bezier-Vektor, der Sätze von 4 Kontrollpunkten in jeder der N Dimensionen und dem gewünschten 0-1 Wert gibt. MGI Bézier Slope Weights Berechnet ein Array aus vier Gewichten, (1-u) 3, u (1-u) 2, u2 (1-u) und u3 gegeben u. U sollte zwischen 0 und 1 liegen. MGI Bezier Time Berechne einen Bezier 0..1 Parameter aus t. Tatsächlich verwendet ein Vorwärts-Bezier anstelle eines Inversen, so dass die Endpunktzeiten zuerst verwendet werden, um t zu einem Parameter 0..1 zuzuordnen, dann wird der Bezier berechnet, dann werden die Endpunkte verwendet, um das Ergebnis wieder auf 0..1 abzubilden. MGI Bezier-Vektor Dies ist ein polymorphes VI, das einen N-dimensionalen Bezier-Vektor berechnet, der Sätze von 4 Kontrollpunkten in jeder der N Dimensionen und dem gewünschten 0-1 Wert angibt. MGI Bezier-Gewichte Dies ist ein polymorphes VI, das ein Array aus vier Gewichten berechnet, (1-u) 3, 3u (1-u) 2, 3u2 (1-u) und u3 gegeben u. U sollte zwischen 0 und 1 liegen. MGI Bezier Optimizer Modifikation des Downhill Simplex nD für die Modellberechnung und eine interaktive Anzeige. Boolesche VIs arbeiten auf booleschen Daten. MGI Boolean Debounce Output ist nur wahr, wenn Eingang für die vorherigen Filter Length-Aufrufe wahr ist. Wiedereintritt. MGI Rücksetzbarer Trigger (Wiedereintritt) Dieses VI setzt den Ausgang 8220Trigger8221 nur einmal an einer steigenden Flanke des Eingangssignals 8220State8221 hoch. Der Ausgang 8220Triggered8221 ist nach dem ersten Mal am Eingang 8220State8221 ansteigend. Der Trigger ist über den Eingang 8220Reset (F) 8221 rücksetzbar. Dieses VI ist ein reentrant funktionale global, so dass jede Instanz dieses VI bezieht sich auf einen anderen Trigger. Cluster-VIs führen Operationen auf Clustern durch, indem sie ein Element in einem Cluster ersetzen oder den Index eines Elements erhalten. MGI Get Cluster Elements Dieses VI wurde für die Verwendung mit den ReadWrite Anything-VIs erstellt. Es bricht ein Cluster in seine einzelnen Elemente und übergibt die Elemente in einer Reihe von Varianten. MGI Get Cluster Index Dieses VI gibt den Tabulatorreihenfolgeindex des Elements oder Unterelements in Cluster In mit Name zurück. Wenn das Element nicht gefunden wird, wird ein -1 zurückgegeben. Was Index bedeutet, hängt vom Modus ab: Alle Elemente und Unterelemente einschließen: Wiederholt alle Cluster und Subcluster und Inkremente für jeden Cluster oder jeden anderen Datentyp. Index gibt die Reihenfolge element8217s unter allen Elementen unabhängig von der Ebene zurück. Nur Erstniveau: Betrachtet nur die Elemente von Cluster In. Wird auf keinen Unterclustern von Cluster In wiederholt. In diesem Fall bezieht sich Index auf die Tabulatorreihenfolge von Cluster In. Index in der untersten Ebene: Sobald ein Element mit Namen gefunden wird, wird der Index der Indexreihenfolge in seinem Besitzcluster in Index zurückgegeben. MGI Get Cluster Value Dieses VI soll den Wert eines Elements in einem Cluster (als Variante) basierend auf dem angegebenen Namen zurückgeben. Wenn mehrere Felder mit demselben Namen vorhanden sind, wird nur der erste zurückgegeben. Die Einstellung "Flat to True" vermeidet die Suche in Unterclustern. MGI Cluster-Element ersetzen Dieses VI sucht nach einem Element oder Unterelement in Cluster In mit Name und ersetzt es mit Data. Wenn Data die falsche Größe ist oder wenn ein Element mit Name nicht gefunden werden kann, wird Cluster In für Cluster Out zurückgegeben. Diese VIs werden von National Instruments verteilt, aber nicht auf eine Palette gesetzt. Sie sind nützlich, um den Datentyp einer Variante zu prüfen. Sie geben nicht die Daten auf dem Draht, sondern nur die Art des Drahtes. GetArrayInfo Informationen über den in Variant gespeicherten Array-Datentyp abrufen. Wenn Variant8217s Datentyp nicht ein Array ist, wird ein Fehlercode von 1 zurückgegeben. NDims ist die Dimensionalität des Arrays. Für jede Dimension enthält Array Lengths ein Element, das beschreibt, wie der Arrayspeicher zugeordnet ist. ArrayElement gibt den Datentyp des Array-Elements (in einer Variante) zurück. GetClusterInfo Holen Sie sich Informationen über den in Variant gespeicherten Cluster-Datentyp. Wenn Variant8217s Datentyp nicht ein Cluster ist, wird ein Fehlercode von 1 zurückgegeben. Cluster-Elemente enthält einen Datentyp für jedes Cluster-Element. GetNumericInfo Gibt numerische Informationen über den in Variant gespeicherten numerischen Datentypen zurück. Wenn Variant8217s Datentyp nicht numerisch ist, wird ein Fehler ausgegeben. Wenn der Datentyp ein Enum ist, enthält EnumNames die Elemente. Einheiten beschreibt alle Geräteinformationen. GetPolyVIInfo Holen Sie sich Informationen über den in Variant gespeicherten PolyVI-Datentyp. Wenn Variant8217s Datentyp keinen PolyVI beschreibt, wird ein Fehlercode von 1 zurückgegeben. Zeitstempel ist ein numerischer Wert, der angibt, wann das PolyVI zuletzt bearbeitet wurde. GetRefnumInfo Holen Sie sich Informationen über den in Variant gespeicherten Refnum-Datentyp. Wenn Variant8217s Datentyp nicht ein refnum ist, wird ein Fehlercode von 1 zurückgegeben. ReferenceType beschreibt den Typ von Refnum StrictType beschreibt alle mit dem refnum verknüpften Daten. Für strikte VI-Referenzen handelt es sich um einen VI-Datentyp, der das VI beschreibt. Bei Datalogs ist es der Datentyp, der gespeichert wird. VI Server Generic Type gibt den spezifischen VI Server-Klassentyp an, wenn ReferenceType 8220LVObjUnknown8221 ist. GetStringInfo Holen Sie sich Informationen über den in Variant gespeicherten String-Datentyp. Wenn Variant8217s Datentyp nicht eine Zeichenfolge ist, wird ein Fehlercode von 1 zurückgegeben. MemoryType beschreibt den Speicher, der verwendet wird, um die Zeichenfolge zu speichern, nicht die Zeichenfolgenlänge. GetTagInfo Holen Sie sich Informationen über den Tag-Datentyp, der in Variant gespeichert ist. Wenn Variant8217s Datentyp nicht ein Tag ist, wird ein Fehlercode von 1 zurückgegeben. MemoryInfo beschreibt den Speicher, der verwendet wird, um das Tag zu speichern, nicht die Taglänge. GetTypeInfo Geben Sie Informationen über den in Variant gespeicherten Datentypen zurück. Typ Enum ist der Datentyp Name ist der Name der Daten Wenn die Daten durch eine Typdefinition definiert werden, ist HasTypedef wahr und Typedef enthält Informationen über die Typdefinition. GetVIInfo Holen Sie sich Informationen über den in Variant gespeicherten VI-Datentyp. Wenn Variant8217s Datentyp nicht ein VI ist, wird ein Fehlercode von 1 zurückgegeben. VI Info gibt die vermuteten Merkmale des VIs zurück. VI-Terminaltypen enthält einen Eintrag für jedes Terminal im VIs-Connectorbereich. Unverdrahtete Endgeräte haben einen Void-Datentyp. GetWaveformInfo Informationen über den in Variant gespeicherten Waveform-Datentyp abrufen. Wenn Variant8217s Datentyp nicht eine Wellenform ist, wird ein Fehler ausgegeben. YArrayType gibt den Datentyp des waveform8217s YArray-Elements als Variant zurück. SetArrayInfo Setzt die Attribute eines Array-Typ-Deskriptors. Variant In ist der Array-Typ-Deskriptor, dessen Attribute gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden sie gelöscht, bevor die neuen Attribute hinzugefügt werden. Array-Element ist der Elementtyp-Deskriptor, der auf dem Array-Typ-Deskriptor gesetzt wird. Array Lengths ist ein Array von Dimensionslängen. Für jede Dimension im Array wird ein Array-Längeneintrag vorhanden sein. Variant Out gibt den Array-Typ-Deskriptor zurück, nachdem Array-Element und Array-Längen zu Variant hinzugefügt wurden. SetClusterInfo Setzt die Attribute eines Clustertyp-Deskriptors. Variant In ist der Clustertyp-Deskriptor, dessen Elemente gesetzt werden. Wenn bereits vorhandene Elemente vorhanden sind, werden diese gelöscht, bevor die neuen Elemente hinzugefügt werden. Cluster-Elemente ist ein Array von Elementtyp-Deskriptoren, die auf dem Clustertyp-Deskriptor gesetzt werden. Variant Out gibt den Clustertyp-Deskriptor zurück, nachdem Cluster-Elemente zu Variant hinzugefügt wurden. SetNumericInfo Setzt die Attribute eines Deskriptors vom Typ des numerischen Typs. Variant In ist der numerische Typdeskriptor, dessen Elemente gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden diese gelöscht, bevor die neuen Attribute hinzugefügt werden. Enum Names ist ein Array von Namen, die verwendet werden, um eine Aufzählung für die numerische zu erstellen. Diese Eingabe ist optional und darf nur mit ganzzahligen numerischen Typen verwendet werden. Units ist ein Array von Basiseinheit, Exponentpaaren, die verwendet werden, um Einheiten für die numerische zu erstellen. Dieser Eingang ist optional und darf nur mit Fließkommazahlen verwendet werden. Variant Out liefert den numerischen Typdeskriptor, nachdem Enum-Namen und Units zu Variant hinzugefügt wurden. SetRefnumContainedType Legt die Attribute eines Array-Typ-Deskriptors fest. Variant In ist der Array-Typ-Deskriptor, dessen Attribute gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden sie gelöscht, bevor die neuen Attribute hinzugefügt werden. Array-Element ist der Elementtyp-Deskriptor, der auf dem Array-Typ-Deskriptor gesetzt wird. Array Lengths ist ein Array von Dimensionslängen. Für jede Dimension im Array wird ein Array-Längeneintrag vorhanden sein. Variant Out gibt den Array-Typ-Deskriptor zurück, nachdem Array-Element und Array-Längen zu Variant hinzugefügt wurden. SetRefnumInfo Setzt die Attribute eines Array-Typ-Deskriptors. Variant In ist der Array-Typ-Deskriptor, dessen Attribute gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden sie gelöscht, bevor die neuen Attribute hinzugefügt werden. Array-Element ist der Elementtyp-Deskriptor, der auf dem Array-Typ-Deskriptor gesetzt wird. Array Lengths ist ein Array von Dimensionslängen. Für jede Dimension im Array wird ein Array-Längeneintrag vorhanden sein. Variant Out gibt den Array-Typ-Deskriptor zurück, nachdem Array-Element und Array-Längen zu Variant hinzugefügt wurden. SetTypeInfo Setzt den Namen und die typedef-Attribute eines Typdeskriptors. Variant In ist der Typdeskriptor, dessen Name und typedef Attribute gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden diese gelöscht, bevor die neuen Attribute hinzugefügt werden. Name ist eine Zeichenfolge, die zum Erstellen eines Namens für den Typdeskriptor verwendet wird. Typedef Info ist ein Cluster aus einem VI-Namen und einem Zeitstempel, der verwendet wird, um ein typedef für die numerische zu erstellen. Variant Out gibt den Typdeskriptor zurück, nachdem Name und Typedef Info Variant in SetVIInfo hinzugefügt wurden Informationen zum VI-Datentyp, der in Variant gespeichert ist. Wenn Variant8217s Datentyp nicht ein VI ist, wird ein Fehlercode von 1 zurückgegeben. VI Info gibt die vermuteten Merkmale des VIs zurück. VI-Terminaltypen enthält einen Eintrag für jedes Terminal im VIs-Connectorbereich. Unverdrahtete Endgeräte haben einen Void-Datentyp. MGI-Code verwendet Standard-LabVIEW-Fehlercluster, sodass er problemlos mit integrierten LabVIEW-Funktionen integriert werden kann. MGI Insert Reserved Error Wire 8220Reserved Error Code8221 mit einer Fehler-Ring-Konstante eingefügt werden, es sei denn, es8217s ein Upstream-Fehler oder 8220Error8221 ist false. Der Quellstring wird aus der aufrufenden Kette aufgebaut, beginnend mit diesem Aufrufer vi8217s, und wird mit dem Eingang 8220Error Description8221 vorangestellt. MGI Anfügen einer Zeichenfolge an eine Fehlerquelle Anhängen oder Voranstellen der angegebenen Meldung an den Eingabefehlerquellenstring, falls ein Fehler vorliegt. MGI-Unterdrückungs-Fehlercode Dieses polymorphe VI nimmt entweder einen Fehlercode oder ein Array von Fehlercodes auf. Wenn der Fehlercode, der durch Error In übergeben wird, entweder das Skalar - oder das Array von Fehlercodes ist, wird es nicht an Error Out übergeben. Alle anderen Fehlercodes werden an Error Out übergeben. MGI Error Reporter Der MGI Error Reporter erlaubt es, dem Benutzer in einer separaten Schleife Fehler anzuzeigen, sodass die Schleife, in der der Fehler aufgetreten ist, fortgesetzt wird. Der Error Reporter wird mit LabVIEW-Klassen erstellt, sodass das Verhalten angepasst werden kann, indem eine untergeordnete Klasse erstellt wird. MGI Create Startet einen Error Reporter-Daemon mit dem optional verdrahteten Error Reporter. Wenn Error Handler nicht verkabelt ist, wird das MGI Error Reporter Dialog verwendet. Wenn ein Error Reporter-Daemon bereits von einem Top-Level-VI ausgeführt wird, nichts ausführen und True für 8220Already Running8221 ausgeben. Siehe 8220VI Tree. vi8221 für weitere Einzelheiten. Wenn dieses VI auf RT verwendet wird, wird die Dialog-Klasse auf RT geladen. Dies kann zu Verbindungsproblemen führen. MGI Logger erstellen Startet einen Fehlerreporter-Daemon mit dem optional verdrahteten Error Reporter. Wenn Error Handler nicht verkabelt ist, wird das MGI Error Reporter Dialog verwendet. Wenn ein Error Reporter-Daemon bereits von einem Top-Level-VI ausgeführt wird, nichts ausführen und True für 8220Already Running8221 ausgeben. Siehe 8220VI Tree. vi8221 für weitere Einzelheiten. MGI-Berichtsfehler Dieses wiedereintrittsfähige VI sendet einen verdrahteten Fehler oder eine Warnung an den Fehler-Reporter-Daemon. Wenn kein Fehlerreporter-Daemon ausgeführt wird oder wenn die Verarbeitungswarteschlange voll ist, wird der Fehler oder die Warnung verworfen. MGI Destroy Stoppen Sie den Fehler Reporter Daemon ausführen, wenn keine anderen VIs sind derzeit mit ihm. Die erweiterte Palette MGI Error Reporter enthält VIs, die das Verhalten des Error Reporters beeinflussen. MGI Get benutzerdefinierte Fehlercodes Geben Sie die benutzerdefinierten Fehlercodes aus, die für den Fehlerreporter definiert wurden. MGI-Set Benutzerdefinierte Fehlercodes Legen Sie die benutzerdefinierten Fehlercodes fest, die vom Error Reporter verwendet werden. Das Custom Name-Array sollte kurze Einzelzeilenbeschreibungen für jeden Code enthalten. MGI Show UI Zeigt ein beliebiges User Interface (UI) Fenster an, das dem Error Reporter zugeordnet ist, indem es eine Show UI Message an den Daemon sendet. Der MGI-Fehlerreporter-Basisklassen-Daemon ignoriert diese Meldung. MGI Get Error Beschreibung Ruft den Namen für den angegebenen Fehlercode ab und gibt die Standardbeschreibung aus, wenn der Fehlercode isn8217t gefunden wurde. Dieses VI gibt den benutzerdefinierten Namen aus, wenn ein benutzerdefinierter Fehlercode angegeben wird. MGI Set Logging Parameter Legt das Verhalten des Error Logger fest. Das Standardverhalten besteht darin, maximal 5000 Fehler pro Datei zu protokollieren und maximal 100 Dateien zu speichern. Max Errors to Log ist die Anzahl der Fehler, die in einer Datei protokolliert werden, in der nachfolgende Fehler nicht protokolliert werden. Wire a -2, um diese Zahl unverändert zu lassen. Verdrahten Sie ein -1, um alle Fehler in die Datei zu protokollieren. Verdrahten Sie eine 0, um die Fehlerprotokollierung zu deaktivieren. Max Log Files ist die Anzahl der Fehlerprotokolle im Fehlerverzeichnis. Die ältesten Protokolldateien werden gelöscht, um Platz für neue Dateien zu schaffen. Wire -2, um diese Zahl unverändert zu lassen. Verdrahten Sie ein -1, um das Löschen älterer Dateien zu deaktivieren. Verdrahten Sie eine 0, um die Fehlerprotokollierung zu deaktivieren. MGI Get Logging Parameters Geben Sie die maximal zu protokollierenden Fehler und das Maximum der Protokolldateien aus. -1 gibt an, dass alle Fehler gespeichert werden. Fehlerprotokollverzeichnis ist der Pfad, in dem Protokolldateien gespeichert werden. MGI Senden einer benutzerdefinierten Nachricht Senden Sie eine benutzerdefinierte Nachricht mit den angegebenen Daten (als Variante) an den Error Reporter-Daemon. Dieses VI ist nützlich für das Senden von Nachrichten an eine untergeordnete Klasse der MGI-Fehlerreporter-Basisklasse, die keine benutzerdefinierten Meldungen verarbeitet. Die MGI-Fehlerreporter-Dokumentationspalette enthält VI-Bäume für die beiden Error Reporter-Klassen. Es ist hilfreich, um zu verstehen, wie der Fehlerreporter funktioniert und welche VIs in untergeordneten Klassen überschrieben werden sollten, um benutzerdefiniertes Verhalten zu erhalten. MGI VI-Baum Dieses VI dokumentiert die MGI-Fehlerreporter-Basisklasse. Siehe Blockdiagramm für Dokumentation. Datei-VIs arbeiten auf Verzeichnissen und Dateien. MGI Append-Text an Datei anfügen 8220Text8221 an die Datei an 8220Path8221 anfügen. Hinweis: Dieses VI öffnet und schließt die angegebene Datei bei jedem Aufruf. MGI Create Directory Chain Dieses VI erstellt alle nicht vorhandenen Ordner in 8220Path8221. Die 8220Auto Detect8221 Einstellung von 8220File Presence8221 sucht nach einem 8216.8217 im Namen. In diesem Modus wird ein Top-Level-Ordner mit einem 8216.8217 won8217t erstellt und eine Datei ohne Erweiterung wird als Ordner erstellt. MGI Default ini Path Dieses VI konstruiert einen standardisierten Konfigurationsdateipfad in MyDocuments oder All UsersDocuments abhängig von 8220Alle Users8221. MGI Replace Dateierweiterung Dieses VI ersetzt die Dateierweiterung auf 8220Path In8221 mit 8220New Extension.8221 MGI-Datei-Dialog Merge VI Merge-VI zum Löschen eines Datei-Dialog-Primitivs (das nicht in der Palette in LabVIEW 8.0 und später angezeigt wird, wenn es nur ist available through an express VI.) MGI Windows Folder Path Return the path of the specified Windows folder. Calls SHGetFolderPathA routine in shell32.dll to determine the answer. Checksum VIs are useful for calculating and verifying a checksum value on a file or directory of files. MGI CheckValue Directory Calculate Output an array of all files contained in the specified directory along with a CheckValue for each file. Optional Progress Bar Input is updated if wired, otherwise a progress bar dialog with abort button is shown. MGI CheckValue Directory Compare Compare the specified expected files and checkvalues to the specified directory. Extra files in the directory are ignored. If all expected files match, then output true, otherwise output false. If a reference to a slider is wired, then the slider is updated to show the progress of the comparison. Otherwise show a progress bar dialog with optional abort button. MGI Executable Checksum Compute the checksum of the. exe file if an executable is running. FFFFFFFF is returned when running from the development system. MGI File CheckValue Calculate the Checkvalue for the specified file. Config VIs are useful when using the NI Configuration file format. They add support for reading and writing arrays of numeric values to a config file. MGI Read Key This is a Polymorphic VI. Read an array key (actually a section) written by the matching Write VI. MGI Remove Array Sections Remove sections from an ini file when an array is shrinking. If Old Count is unwired, count will be read, parent section will be removed, and then count will be replaced. If Old Count is wired, it8217s assumed thatparent section handling was already performed. Child sections that are removed have names , where ranges from new count to old count-1. MGI Write Key This is a polymorphic VI. Write an array datatype in a human readable format. The 8220key8221 is actually placed in a separate section. Spreadsheet VIs support reading and writing delineated text files that have text headers. MGI Read Spreadsheet File Reads a spreadsheet file by returning the first non-empty, non numeric containing rows as a header, then the following numeric rows. Reading starts at Start Offset. End Offset is the file offset for the next HeaderValues section. This VI is similar to the vi. lib file 8220Read From Spreadsheet File. vi8221, but it supports headers. MGI Write Spreadsheet File Creates or opens the specified spreadsheet file and writes the specified data to the end of the file. This VI is similar to the vi. libWrite Spreadsheet File. vi, but it includes headers. By default, headers are only written if the file is created new. Wire true to 8220Append Headers to existing files8221 to add them to existing files as well. The Sharp Zip Library provides support for creating zip files that are larger than 2Gigabytes. The Sharp Zip Library depends on Microsoft technology. MGI SZL Add File Adds the file specified by source file path to the zip file. Destination path in zip should be the relative path in the zip file including the name of the file itself, but not including the name of the zip file. The updateMode input selects between Safe and Direct. Safe mode will create a temporary file so that errors in the add will not corrupt the entire file. Direct simply adds to the file, so it is more dangerous, but can be significantly faster, particularly for large files. This VI relies on the Sharp Zip Library which is a assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcodeopensourcesharpziplib MGI SZL Close Zip File Closes the zip file. This VI relies on the Sharp Zip Library which is a assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcodeopensourcesharpziplib MGI SZL Extract File Extracts the entry specified by entry path in zip from the zip file to the target path. Entry path in zip should be the relative path within the zip file. If the target path already exists you can have a dialog pop up to confirm overwriting by wiring TRUE to confirm overwrite. This VI relies on the Sharp Zip Library which is a assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcodeopensourcesharpziplib MGI SZL List Zip Contents Lists the file names of all the files in the zip file and if file info is true, outputs a large cluster of info about each file. This VI relies on the Sharp Zip Library which is a assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcodeopensourcesharpziplib MGI SZL New Zip File Creates a new empty zip file in the path specified by target path. The new file overwrties an existing file or produces an overwrite confirmation dialog based on the value of confirm overwrite. This VI relies on the Sharp Zip Library which is a assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcodeopensourcesharpziplib MGI SZL Open Zip File Opens an existing zip file. This VI relies on the Sharp Zip Library which is a assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcodeopensourcesharpziplib MGI SZL UnZip To Directory Unzips the contents of zip file to the target directory. If Preview only is true, this VI doesn8217t unzip the contents and just returns a preview of the list of files. This VI relies on the Sharp Zip Library which is a assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcodeopensourcesharpziplib MGI SZL Zip Directory Compresses everything in root directory into a zip file. If include subdirectories is TRUE, this VI recursively includes any subdirectories. Open Options can be set to create the zip file new, or open an existing one and append on to it. This VI relies on the Sharp Zip Library which is a assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcodeopensourcesharpziplib SZL Zip Directory Compresses everything in root directory into a zip file. If include subdirectories is TRUE, this VI recursively includes any subdirectories. Open Options can be set to create the zip file new, or open an existing one and append on to it. MGI Open Explorer Window Open a Windows Explorer window to the specified file8217s directory and select the file. If the path specifies a directory, then the explorer window is opened to that directory, unless 8220Select Directory8221 is true, in which case the explorer window is opened to the parent directory and the specified directory is selected. Graph VIs are useful for setting properties of Chart and Graph controls MGI Autoscaling Enum Merge VI This is a merge VI. It exists to allow easy dropping of the enumeration from the palettes. MGI Graph Tools Enum Merge VI This is a merge VI. It exists to allow easy dropping of the enumeration from the palettes. MGI Non Repeating Plot Color Generate colors that are good for a white background and distinguishable from each other. MGI Set Plot Names This is a polymorphic VI. Sets the plot names as specified, optionally growing the Plot Legend to fit the number of names. If Plot Name is empty, then the Plot Legend is hidden, otherwise it is shown. MGI Set Z Scale Colors Updates the specified color scale using a distribution of colors specified by 8220Scheme8221. Min and Max describe the range of data that is to be displayed using the color scale. If 8220Z Scale Ref8221 is not wired, the scale will not be updated but 8220ValueScale8221 will still contain data for the specified scheme. The output 8220ValueScale8221 will have 256 colordata pairs. Matrix and Vector VIs operate on 1D (for Vector) and 2D (for Matrix) arrays of numeric data. These include Cross Product, which is not included in LabVIEW. MGI Vectors Approximately Equal Check that two vectors are within a given distance of each other. The default tolerance (distance between vectors) is 1E-5. MGI Cross Product Calculate the cross product of two 3-dimensional vectors in cartesian coordinates. MGI Dot Product Computes the dot product of X Vector and Y Vector. MGI Calculate Vector Length Calculate the length of a cartesian vector. MGI Identity Matrix 42154 Simply provides a 42154 SGL identity matrix. The Menu Building palette provides an extensible API for creating Application Menus, Windows Tray item Menus, and Control shortcut menus. It is useful for dynamic menu creation and for simplifing common Menu behavior such as toggling checkboxes and forcing radio button behavior among a set of Menu items. MenuConstructor Polymorphic VI to choose the type of menu you want to create. MenuItemConstructor Use this to create a new MenuItem. Most of the menu items you create can be left as generic menu items. Only use a specialized menu item when you need to use an additional field of that menu item. For example a shortcut in a VI MenuItem, or an icon in a MenuStrip MenuItem SelectionConstructor Polymorphic VI to select the built in selection types. Destroy Destroys the MenuItem. This ensures that all references contained by the menu item are also destroyed. Do not use the 8220Delete Data Value Reference8221 on a MenuItem Reference as this will lead to memory leaks. Use this vi instead. Init Inistializes the menu. This vi will delete any menu8217s that are currently in place. This also creates the Menuitem Clicked event. Do not use this VI to rebuild the menu. There is a separate Rebuild Menu VI. Menu Building Initialization Merge VI This Merge VI is a good starting place for most MenuBuilding menus. It has all of the vi8217s needed to initialize a new menu RebuildMenu Rebuilds the menu after a menu item array is changed. This will not destroy old MenuItem references, so make sure to destroy any MenuItems no longer being used. BasicInfo Retreives basic information about the last menu click. This VI returns the data of the menu item after the menu click. If you need to view more detailed data or the data before the menu click, use a property node. Cleanup Destroys the Menu and all MenuItems inside it. MenuClicked Simulates the menu click. This will perform an identical action as the user actually clicking the MenuItem. SetToDefault Searches the menu for any item with 8220Clicked by Default8221 set to true and then fakes a click on this item. This is useful for initializeing radio selections or checkmark selections to default values. MenuItem Clicked Events will be generates for these default clicks. If you want to process these events, make sure this VI is run after the Register for User Events node on the MenuItem Clicked Event. The Tray Icon palette contains VIs that work with Windows Tray menus. ShowBalloon Shows the notification balloon from the tray item. Balloon Text is required to be a non-empty string. Default timeout is set by the OS, and typically approx 10 sec. For more info see msdn. microsoften-uslibraryms160065.aspx MinimizeToTray Minimizes the referenced to tray. If VI Refnum is unwired the caller is assumed. RestoreFromTaskbar Restores a VI what has previously been Minimized to Tray. If VI Refnum is unwires, the calling VI will be used. Set Show on Taskbar to false to keep the VI from showing in the taskbar. FindMenuItemByTag Searches the menu structure recursively for a menu item with the full tag specified. The Menu Examples palette contains example VIs that use the MGI Menu Building VIs. VI Menu Example Demonstrates the Menu Strip type. Run the VI to see it8217s Runtime Menu replaced by the specified menu. Notice the shorcut key on the Exit Menu item. Click summarys show up in the history array. Click the 8220Add Item8221 to add a dummy item to the VI8217s menu. Tray Icon Example Demonstrates the Tray Icon menu type. Run the VI to see the menu and icon appear in the system tray. Right click the icon to see the menu appear. Double click the Icon to signal a 8220Default8221 menu item click. Fill in the Balloon Info values and click 8220Show Balloon8221 to see the balloon pop-up in the system tray. The 8220tipText8221 is the only field required in the balloon info and an error will be thrown if you try to show a balloon with no tipText. the minimum timeout is controlled by the OS and any value less than the OS value will be coerced up Click summarys show up in the history array. Click the 8220Add Item8221 to add a dummy item to the TrayIcon8217s menu. Control Example Demonstrates the Control Menu type. Right click on the 8220Listbox8221 to see the menu generated. Click summarys show up in the history array. Click the 8220Add Item8221 to add a dummy item to the control8217s menu. MenuStrip Example Demonstrates the Menu Strip type. Run the VI to see the menu appear in the MenuStrip control. Notice the 8220File - Default8221menu item that contains an icon as well as the 8220File-Exit8221 menu item contains a shortcut. Click summarys show up in the history array. Click the 8220Add Item8221 to add a dummy item to the MenuStrip8217s menu. SelectionTypeExample Run the VI and look under the 8220Selection Types8221 menu item for a demo of the built in selection types. Coordinate VIs are useful for performing rotations on 2D or 3D datasets. MGI Apply Transform Polymorphic VI: Apply a cartesian coordinate translation and rotation. MGI Center from 3 Points Polymorphic VI: Calculate the center of a circle based on three points on the circle. MGI Find 2D Intersection of 2 Lines Finds the intersection of 2 lines. If the lines are parallel, then an argument error (code 1) is output. The lines are specified using 2 points for each line. The points are specified as rows in a 2D array where the first column is x and the second is y. MGI Rotate Vector Polymorphic VI: Perform a 3D vector rotation about a coordinate axis. MGI Cylindrical to Cartesian Convert R, Th, Z to X, Y,Z. MGI Find Closest Line Segment Finds the line segment closest to the given x and y coordinates. The Graph Data is intepreted as a sequence of points which are connected by line segments. The points in the graph are assumed to be connected in the order provided. The output index is the index of the first point in the data that is an endpoint of the closest line segment. MGI Find Closest Point Finds the index of the point in the input data that is closest to the given x and y coordinates. The optional input allows the user to use the city block metric (i. e. the sum of the distances in the x and y directions) instead of the standard distance measurement. MGI Generate Orthonormal Basis Generate a set of orthonormal basis vectors from three points given in cartesian coordinates. The basis vectors are found by normalizing: w1p1-p2 w2w1 x (p2-p3) w3w1 x w2 MGI Generate Rotation Matrix Generate a 32153 rotation matrix with specified diagonal elements, - the off diagonal element, and specified axis unrotated. Numeric VIs operate DBL or SGL precision floating point numbers and on integers. They include the coercion, comparison, and rounding subpalettes. For easy access and use with quickdrop, the compound arithmetic nodes are also included. MGI Get Real Quadratic Roots Gets the real roots of the quadratic equation Ax2 Bx C 0. If there are no real roots, then both outputs are NaN. If there is a double root that is real, then both outputs are equal to the double root. If the coefficients correspond to a linear equation (i. e. A is zero) then Root1 is the solution to the linear equation and Root2 is NaN. This VI is configured to run as a subroutine. MGI Nth Root Take the nth root of x. Handles x Ends with Contains Begins with MGI Determine Time Format String Determines a Time Format String for a given string in a common date format. For example Thu, January 1, 2011 3:00 PM would be a, B, d, Y I:M p. The Day Before Month input specifies whether the day or month is first when in a 12111 type format. The Leading Zeros input determines if the day, month number, and hour will have a leading zero if they are only 1 digit. MGI Parse Format String Parses the string at the specified position for a format code. The portion of the string before the format code is output as 8220Delim8221. If an error occurs, then an error is output and the Offset out is -1. MGI Scan From String This PolyVI handles scan from string for special datatypes. Timing VIs are usefull for measuring the execution duration of some code and for providing a delay that uses explicit dataflow using an error cluster. MGI Wait This is the polymorphic version that contains both millisecond and second versions of MGI Wait. Useful to create data dependency on the error lines and to have a smaller icon. If 8220Error In8221 has an error, then this VI won8217t perform the wait. MGI Milliseconds Since Last Call This VI stores the tick count on a shift register and provides as an output the number of milliseconds since the last time this VI was called. MGI Milliseconds Since Last Reset Returns the amount of time in milliseconds since the last time the VI was reset. This VI is non-reentrant. Tree VIs are usefull for populating the LabVIEW Tree control. MGI Get Tree Tag Children Get all child tags of the specified tag for the specified tree control. MGI Populate Tree with Delimited Strings Populates the specified Tree Control with the specified items. The items are delimited strings where the text of each parent is in the string seperated by delimiters. For example, the string 8220CProjectFoo8221 with the delimiter 82208221 would be shown as C Project Foo Each Row in the 2D Items array is a child item. The first column contains the Tags. Subsequent columns contain Text for the Tree control columns. If 8220Use Child Only Items8221 is true, then items in the 2D array that are not followed by a descendent item are inserted as 8220Child Only8221. Otherwise, all items are inserted as Child OnlyFalse. NOTE: If Use Child Only Items is true, then the 2D array must have all parent tags followed immediately by one child item. MGI Tree Rows from Delimited String Array Convert the array of delimited strings stored in the first column of the specified array to Tree Rows. The remaining columns are used as text for each tree row. Post navigation
No comments:
Post a Comment