Jump to content


Popular Content

Showing content with the highest reputation since 06/29/2009 in Files

  1. Version 1.5.4


    Package for working with JSON. Uses high-speed text parsing, rather than building an intermediate representation as with prior LabVIEW JSON libraries (this is much faster). Allows easy working with "subitems" in JSON format, or one can convert to/from LabVIEW types. Uses the new "malleable VIs" of LabVIEW 2017 to convert to any LabVIEW type directly. JSON text makes use of a form a JSON Path notation, allowing easy and rapid access to the subitems of interest. Requires LabVIEW 2017 and install by VIPM 2017 or later. Original conversation about JSONtext. On the LabVIEW Tools Network. JDP Science Tools group on NI.com. Copyright 2017 JDP Science Limited
    11 points
  2. Version 1.9.1


    A set of custom controls, following the trend of a more flat UI design. Heavily influenced by Google’s Material Design, though constrained by what can be done with available tools and options in LabVIEW. Uses icons from Google Material Design. — Buttons based on the system booleans (with hover effects). Icons can be added as decals (such as from materialdesignicons.com) — Matched sets of controls for numeric/string/enum/etc., based on Silver controls, but swapping out all ‘chrome’ for simple boxes and lines. — flattened versions of switches/sliders/arrays/graphs etc. Now on the LabVIEW Tools Network JDP Science Tools group on NI.com.
    10 points
  3. Version 1.0.0


    Hi everyone, Since GRBL standard is open source, I decided to post my Library that I used in LabVIEW to interface a standard GRBL version 1.1 controller. Not all GRBL function has been integrated, but this is a very good start. Enjoy and let me know your comments. Benoit
    6 points
  4. Version 1.0.0


    There it is. The complete library for the MCP2221A. I2c adapter, I/O in a single IC. I love that one. Let me know if any bug is found. I try to make that library as much convenient as possible to use. Two version available 32 bit and 64 bit. little note: to open by serial number, the enumeration need to be activated on the device first. (open by index, enable the enumeration) It needs to be done only once in the life time of the device. PLEASE do not take ownership of this work since it is not yours. You have it for free, but the credit is still mine... I spent many hours of my life to make it works.
    4 points
  5. Version


    There it is... finaly... Because the code given in the FTDI web page is not convenient, not working and haven't been developed by real LABview programmer, I decided to create a library for the I2C. a version for SPI will come soon. This library is free to use. If FTDI want's it in ther site, I do not allow you to publish it since you didn't help any of your customer with LABview. but of course feel free to publish this link.
    4 points
  6. Version 1.14.5


    An extensive library for passing messages between parallel processes. Generalizes the communication method, allowing the message sender to use the method provided by the receiver. Supported communication methods include wrappings of simple queues, user events, and notifiers, as well a more complex channels such as a TCP server and client. In addition, one can configure simple forwarding addresses (“Observers"), which can send messages to multiple destinations, optionally with modifications such as adding a prefix to the message label, relabelling, or substituting a different message. Communication patterns supported include request-reply (asynchronous or synchronous), where the reply is sent to a "reply address" attached to the request, and register-notify, where one process sends a registration message to another in order to subscribe to a series of updates. Also supports scatter-gather, the gathering of replies from multiple senders into an array of messages. An option framework for dynamically-launched VI "actors" is also provided, including example templates, which can be accessed via the Tools menu (from an open Project, select Tools>>Messenger Library>>Create Actor from Template..). An "Actor Manager" debug tool is also installed under the Tools menu. Please note that this package has nothing directly to do with the NI Actor Framework (other than both packages are influenced by the Actor Model). ***Introductory Videos are on a YouTube channel.*** ***A great summary of many Messenger Library sources, provided by Bob W Edwards*** JDP Science Tools group on NI.com. Original conversation on this work is here. Now hosted on the LabVIEW Tools Network (but note that the latest version will often be on LAVA) ***NOTE: latest versions require VIPM 2017 or later to install.***
    3 points
  7. Version 2.0.0


    Here is the Hooovahh Array VIMs. This initial release contains VIMs for manipulating array data, which are intended to replace OpenG functionality, but with the added benefit of data type propagation, and increased performance using newer array manipulation techniques. In later versions other Array manipulation functions were added moving all the OpenG stuff to their own palette. Version 2.0 changed the suffix naming standard. Updating may mean replacing calls to the new versions since the name on disk has changed. This was for consistency and I'm sorry for breaking compatibility. The added type defs in 2.0 may break compatibility too but these help avoid code breaking bugs since VIMs allowed any data type previously. Most of the OpenG functions are unchanged, but a few use the newer conditional and concatenating tunnels. And a few functions have added performance based on other inputs. For instance the Delete Array Elements can operate in a more efficient way if the input indexes are already sorted. The Filter 1D array can also be more efficient if the input is known to not contain any duplicates. Because these packages contain VIMs, they require LabVIEW 2017 or newer. Having these functions be VIMs mean all functions work with various array data types. Included functions are: Conditional Auto-Indexing Tunnel Delete Elements from (1D or 2D) Array Filter 1D Array Index (1D or 2D) Array, Scalar, Row, Column Remove Duplicates from 1D Array Reorder (1D or 2D) Array Reverse 1D Array Slice 1D Array Sort (1D or 2D) Array Convert 1D to 2D Convert 2D to 1D Find Subarray Force Array Min/Max Size Foreign Key Sort
    3 points
  8. Version 1.0.0


    This VI program implements the Discrete Fourier Transform (DFT) to draw any drawn shape outline with epicycles as demonstrated in this video. For more information on the mathematical principles, please watch this video by Mathologer. How to Use: 1.Unzip the attached zip file. 2.Open Main.vi file. 3.Run the VI. 4.Draw a shape. 4.Enjoy animation!
    3 points
  9. Version v1.10.0 (for LV2013+)


    LabVIEW Task Manager v1.10.0 (for LV2013+) This code is Open-Source, and free of charge Authors: Ravi Beniwal, Tim Vargo LAVA Names: Ravi Beniwal, TimVargo Contact Info: Contact via PM at the LAVA site (http://lavag.org) LabVIEW Versions Supported: LV2013 and up LabVIEW Versions Tested on: LV2017 LV2016 LV2013 Dependencies: GPower Error & Warning = lava_lib_tree_control_api >= 1.0.1-1 NI SmartBalloon = OpenG Application Control Library >= OpenG Comparison Library >= OpenG Array Library >= OpenG Error Library >= OpenG File Library >= OpenG LabVIEW Data Library >= OpenG String Library >= LAVA Palette >= Description: LabVIEW Task Manager is a debugging tool for use during LabVIEW code development. An expandable/collapsible tree diagram displays detailed information (both static and dynamic) on all VIs in memory, belonging to a selected project/target. It allows for interacting with single or multiple selected VIs at a time, and includes the following major features: Selection of project/target Lists all VIs in memory, grouped by class/library or disk folder, or a flat list Searches for and enumerates clones in memory DropIn VI for including dynamically referenced clones (Clone Beacon) 'Refresh Now' (F5) re-reads all VIs in memory and adds new ones to the tree Displays VI name, owning class/library, state, path, data size & code size Displays VI FP Behavior, Reentrant?, Reentrancy Type, Paused? & Highlight? Group by Class/Library or Folder, or display a Flat List Sort by any column, ascending or descending Filter out item types vi, ctl, and vit/ctt Filter out vi.lib and global VIs Filter out items from being displayed, per folder paths. Tracking of, and ability to toggle, execution highlighting on multiple selected VIs Tracking of paused VIs with ability to Pause/Resume/TogglePause multiple selected VIs DropIn VI for pausing only while debugging If a clone initiates a pause, a different pause symbol is used for all clones of that same reentrant original VI Select multiple VIs and open or close their FPs or BDs Double Click a VI from the tree to bring the BD (first choice) or FP to front, if already open Select multiple top-level VIs and Abort them Remotely close any VI's Front Panel Installation and instructions: Install this tool by using the VI Package Manager to install its associated package file (.vip). Installation requires VIPM 2014 or higher, which is available for free from jki.net (http://jki.net/vipm). Known Issues: Cannot abort SubVIs launched from remote VI Server or local Asynch Call By Ref
    3 points
  10. Version V 1.0


    This package consist of a series of tools in native LabVIEW 2010 code. For encryption/decription the AES (Rijndael) routine is used with key sizes of 128, 192 and 256 bytes. The encryption supports the following block modes: EBC CBC CFB128 OFB For signing of string/packages it performs the SHA-1 and SHA-2 hashing, for MD5 hashing the OpenG functionality is used. The hash functions return a binary string and a hex-formatted string with the hash. The following hashes are supported: MD5 (via OpenG library) SHA1 SHA-2 224 bit SHA-2 256 bit SHA-2 384 bit SHA-2 512 bit For Hashed key authentication the HMAC functionality is provided based on the supported hash functions. The used functions are tested against NIST public test vectors. The use of these functions is not: secure the code does not try to protect it's memory nor the used keys. © Ton Plomp 2011 - No warranty implied.
    3 points
  11. Version


    Mark Balla Icon editor V2.7 December 2020 Author: Mark Balla Description: This is a text based vi icon editor The purpose is to help quickly create text base icons. The editor can be used in place of the standard NI icon editor or as a stand alone vi. see instructions. Version 2.7 Updated font table to recognize the standard "Small Font" letters used by the NI icon editor. This will improve the OCR function when importing icons generated by the NI Icon editor. Version 2.6 Added quick drop code to allow the user to switch between NI and custom editor. QD_Swap Icon Editor.vi and support folders will be placed in the LabVIEW quick drop folder ..\National Instruments\LabVIEW 20XX\resource\dialog\QuickDrop To switch LabVIEW to a custom icon editor that uses the lv_icon.vi set a shortcut key to call the QD_Swap Icon Editor.vi. Ctrl-Space Ctrl-<<assigned letter key>> To switch LabVIEW to the NI icon editor that uses the lv_icon.lvlibp use the same shortcut key with the Shift key Ctrl-Space Ctrl-Shift-<<assigned letter key>> Version 2.5 Fixed install bug where lv_icon.lvlibp was not being renamed after LV 2016 2.5 was set to 2017 or later. Instructions: LV 2017 to LV2020 + Ver 2.7 + Here is the intended process. Download package from LAVA Install Package Package will install MB icon editor files Package will install QD_Swap Icon Editor.vi in the QD plugins folder Package will copy the lv_icon.lvlibp And rename it to COPY_ lv_icon.lvlibp Package will delete the lv_icon.lvlibp Popup will show stating you are using the custom editor. Open LV Open QD, click configure and select the Ctrl-Key Shortcut Tab at the top Assign a control key to the QD_Swap Icon Editor and click OKWhen you select Ctrl-Space Ctr-<<Assigned Key>> the QD vi will setup the IDE to use my custom editor. The vi will verify there is a copy of the lv_icon.lvlibp And if not create it. The vi will delete the lv_icon.lvlibp From the ..\National Instruments\LabVIEW 20XX\resource\plugins folder When you select Ctrl-Space Ctr-Shift-<<Assigned Key>> the QD vi will setup the IDE to use the NI editor. The vi will copy the COPY_lv_icon.lvlibp and rename the copy to lv_icon.lvlibp LabVIEW will use the lv_icon.lvlibp If it sees it in the plugins folder. If it does not see the lv_icon.lvlibp It will call the lv_icon.vi which is the name of my icon editor. LV 2010 to LV 2016 Ver 2.4 Install using JKI VI Package Manager LV 2009 Ver 2.3 1:Rename the curret LabVIEW 2009 Icon editor LabVIEW 2009\resource\plugins\lv_Icon.vi to a different name so it will not be overwritten. 2: Place the three files (lv_icon.vi, color templates.bin and the folder lv_icon_Subvis) in the LabVIEW 2009\resource\plugins directory. The next time the icon editor is called LabVIEW will use the lv_icon.vi instead of the standard one. There is a button on the editor that will allow you to use NI's editor (Old editor not the new one) when a text icon is not desired. For LabVIEW 8.2 Use the "MB Icon Editor_V2.3_LV82.zip" file For LabVIEW 8.5 Use the "MB Icon Editor_V2.3_LV85.zip" file For LabVIEW 8.6 Use The "MB Icon Editor_V2.3_LV8.6.zip" file
    2 points
  12. Version 1.11.3


    Introductory video now available on YouTube: Intro to SQLite in LabVIEW SQLite3 is a very light-weight, server-less, database-in-a-file library. See www.SQLite.org. This package is a wrapper of the SQLite3 C library and follows it closely. There are basically two use modes: (1) calling "Execute SQL" on a Connection to run SQL scripts (and optionally return 2D arrays of strings from an SQL statement that returns results); and (2) "Preparing" a single SQL statement and executing it step-by-step explicitly. The advantage of the later is the ability to "Bind" parameters to the statement, and get the column data back in the desired datatype. The "Bind" and "Get Column" VIs are set as properties of the "SQL Statement" object, for convenience in working with large numbers of them. See the original conversation on this here. Hosted on the NI LabVIEW Tools Network. JDP Science Tools group on NI.com. ***Requires VIPM 2017 or later for install.***
    2 points
  13. Version 1.4.1


    UI Tools v1.4.0 Copyright © 2009-2016, François Normandin All rights reserved. Author:François Normandin Contact Info: Contact via PM on www.lavag.org LabVIEW Versions: Created and tested with LabVIEW 2012 Dependencies: OpenG Application Control Library >= OpenG Array Library >= OpenG File Library >= OpenG LabVIEW Data Library >= OpenG String Library >= LAVA Palette >= Description: This package contains tools for designing user interfaces. A first palette helps create special effects using transparency of front panel. Using them allows to quickly create fade-ins or outs using linear or exponential variation of the intensity. A second palette contains VIs to calculate the position of GObjects for many purposes like alignment, snap, mouse follow, etc. A third palette contains VIs to create dialog boxes based on class instances. "Simple Error Dialog" and "Simple Selection List" are featured with or without backrground blackening effect. A fourth palette includes some VIs to move objects programmatically on the front panel, using a basic deceleration algorithm to provide an impression of a smooth movement. The packaged VIs are all namespaced using a suffix “__lava_lib_ui_tools” which should not conflict with any of your own code. Includes: Front Panel Transparency (Fade In & Fade Out) Utilities (Alignment, Snap) Dialog (OOP based, extensible) Engine (Beta) for object movement Instructions: This package is distributed on the LabVIEW Tools Network (version 1.3) and updates are on LAVA (1.4). It can be installed directly in the addon folder of any LabVIEW version from 2012 to now. The addon installs automatically under the LAVA palette of the addon submenu. License: Distributed under the BSD license. Support: If you have any problems with this code or want to suggest features, please go to www.lavag.org and navigate to the discussion page.
    2 points
  14. Version 1.0.0


    For a personal project, I needed to communicate between my computer and a SPI device slave device. So, I use a FTDI chip FT232h. I have adapted the library MPSSE I2C already available on this website to make it works for SPI. Warning ! VI are not 100% tested (especially Read functions), I provided it as it is.
    2 points
  15. 3,917 downloads

    Copyright © 2007, David Saunders All rights reserved. Author: David Saunders --see readme file for contact information. Description: Provides an intuitive interface for tabular controls containing multiple data types. Users can use various controls and datatypes. Users can also use provided functions for registering and looking up type parameters by control (as well as by column, row, or cell). When you click on a cell, a correctly positioned and sized popup appears allowing for a controlled and intuitive input. Appears like it is a built-in feature, not an annoying popup window. Features: - Supports tables, listboxes, multicolumn listboxes, trees, and string controls. - Implements many data types : string, integer, float, color, ring, boolean, captioned string, etc. - Can use multiple tabular controls in same program with no programming changes - Can pre-register controls with certain data types - Register the entire control, or columns, rows, and cells. - Can edit the registered data type by registering again at any time - Allows for different font sizes - Works even on modal windows Instructions: Run the Demo program to see example usage. To recreate -- 1. Drop 'TSPopup.Popup Cluster.ctl' anywhere on your front panel. 2. Create program logic, similar to the demo MANDATORY elements a. TSPopup.Initialize.vi (register for the user event in your event structure) b. TSPopup.Lookup.vi (returns positioning information, looks up any registered controls) c. TSPopup.Show Popup.vi (called in a Mouse Down? event case) d. an event case for the user event output from (a.) e. TSPopup.Close.vi (called at end of program) OPTIONAL elements f. TSPopup.Register.vi (register controls with popup type parameters) g. TSPopup.Update Cell String.vi (provided to show how to change the cell string after popup is completed) 3. Bring the Popup Cluster to the front on the front panel. Otherwise the popup will show up behind some of the other controls on your User Interface. Limitations: - Can't programmatically bring popup cluster to front. Must do this manually. Change Log: 1.0.0: Initial release of the code. 1.0.1: Added another demo using dynamically changing data types in a tree Removed LV version specific event handling (only dealt with LV 7.1) Fixed bug where headers defaulted to have same type as their column/row Fixed cluster scanning from text Fixed ring to default to index 0 if string unrecognized Changed the background event monitor to always be hidden
    2 points
  16. Version 2.0.0


    This toolkit combines a variety of TDMS functions and tools into a single package. The initial release has a variety of features: - Classes for Circular, Periodic, Size, and Time of Day TDMS generation with examples of using each - Reading and Writing Clusters into TDMS Channels - XLSX Conversion example - File operations for combining files, renaming, moving, and saving in memory to zip - Basic function for splitting TDMS file into segments (useful for corrupt files) - Reorder TDMS Channel with Demo There is plenty of room for improvements but I wanted to get this out there and gauge interests. The variety of classes for doing things, along with VIMs, and class adaptation makes for using them easier. If I get time I plan on making some blog posts explaining some of the benefits of TDMS, along with best practices.
    1 point
  17. Version 2.0.0


    LV-muParser provides a simple LabVIEW API for muParser fast math expression parser. A modified version of muParser v2.2.5 is included. It will be installed to your "<LabVIEW>\resource" directory. I have added support for the "!" (not) operator as well as added ":" as a valid character for variable names. You will find the muParser API in the functions palette under "Addons > LAVA > muParser" muParser: http://beltoforion.de/article.php?a=muparser LV-muParser source on github: https://github.com/rfporter/LV-muParser
    1 point
  18. Version 1.0.0


    I think I've finalized my example for the XNode UpdateState ability. This is a very important ability. Failure to properly manage the update process can have dire consequences.
    1 point
  19. Version 1.0.0


    One of the difficulties with editing XNodes without the license is that invoke nodes for the XNode class don't show any methods. This XNode acts pretty much like a real Invoke node, but it allows access to all possible methods. You can also right-click and replace it with a real Invoke node.
    1 point
  20. Version 1.1.0


    This is the only way I found how to have a bunch of color that are unique and easily distinguishable. The maximum I saw in the web was about 26. This one offer 55 of them without gray tone. You can modify this VI to support gray tone as well and goes up to 60 colors.
    1 point
  21. Version


    JSON is a data interchange format (sometimes compared to XML, but simpler). There are multiple projects to create a JSON package for LabVIEW. This is yet another one motivated by this hijacked conversation originally about a different project to convert JSON into LabVIEW Variants. This project uses a set of LVOOP classes to match the recursive structure of JSON, rather than variants. It allows conversation to and from JSON. All functionality is available through two polymorphic VIs: Set and Get. In addition to Get and Set VIs for common data types, one can also convert directly to or from complex clusters via variant-JSON tools. Copyright 2012-2016 James David Powell, Shaun Rumbell, Ton Plomp and James McNally. [Note: if you are using LabVIEW 2017, please also see the JSONtext library as a an alternative.]
    1 point
  22. Version 1.0.0


    This tool-set gives access to all the 1-wire TMEX functionality. I was able to access 1-wire memory with this library. It has all the basic VI to allow communication with any 1-wire device on the market. It needs to be used in a project so the selection of the .dll 64 bit or 32 bit is done automatically. It works with the usb and the serial 1-wire adapter.
    1 point
  23. Version (latest version 5.5)


    (latest version 5.5 - November 3, 2015 - LabVIEW 2010) Chess Game with artificial intelligence 100% LabVIEW AI : algorithm MinMax + Alpha-Beta pruning two game levels : "novice" and "Jedi" editing interface (edit on/off) a) moving mode : left-clic on the starting square, left-clic on the destination square b) positioning mode : right-clic on a square opens a context menu to choice the piece. This engine 5.5 is stronger than the previous engine 5.0 (Jedi level) unzip - run "Chess_ouadji.vi" Have fun! ouadji, if you like this Chess Game, a kudo is most welcome! (here - first post)
    1 point
  24. Version 1.3


    A pair of subVIs for connecting a cluster of enums and booleans to a set of options in a menu (either the right-click shortcut menu on control or the VI menu bar). Adding new menu options requires only dropping a new boolean or enum in the cluster. See original conversation here. I use this heavily in User Interfaces, with display options being accessed via the shortcut menus of graphs, tables, and listboxes, rather than being independent controls on the Front Panel. Relies on the OpenG LabVIEW Data Library.
    1 point
  25. Version


    This Vi Calculate th Cp and Cpk values of a dbl array values. It's quite usefull to do some statistical analysis of a process capability.
    1 point
  26. Version


    This XControl has the nice feature that a Calendar control should give you. Multilanguage support by property node. The input and output are Labview Time Stamp. When selecting a date, the date in the calendar become light blue. Please you receive this XControl for free. The minimum you can do is to rate it.
    1 point
  27. Version


    This VI allow an easy way to create HTML color table in the LabVIEW report generation toolkit. This VI should be connected to the "Append User Formatted HTML to Report.vi". For this version, all the column are the same size. But alignment and color of each cell can be defined. Please rate this file if you download it. It's free... you can at least give some second of your time to rate it... I spend some hours to make it... Enjoy
    1 point
  28. Version 3.2.3


    The Code Capture tool allows you easily create screenshots of you LabVIEW code for use in documentation, web-sites, wikis, emails. This tool provides an API for creating images of LabVIEW code as well a GUI for easy capturing and use of code. Further info is provided in the help-screen (F1) of the program. For the latest version visit the Code Repository For the latest version of the source code, visit SourceForge For more info, visit the LabVIEW wiki with the documenation. A series of videos is available on screencast: Code Capture Tool Installation ============ To install the Code Capture Tool, run the 'Install Code Capture Tool.vi' in the LabVIEW version of your choice, or use the OGP file in conjunction with VIPM. A wizard will guide you through the installation procedure. Usage ============ After installing and restarting LabVIEW, you can open the Code Capture Tool via the 'Tools' menu to capture an image of the current VI. For more info open the About screen of the GUI. Uninstalling ============ To remove the Code Capture Tool from your LabVIEW installation remove the following files in your LabVIEW folder: Project\Code Capture Tool.vi user.lib\CCT.mnu And the following folder: user.lib\_Code Capture Tool In your LabVIEW data folder (in Windows, this is normally: My documents\LabVIEW Data) is a configuration file called Code Capture Tool.ini, which can be removed at any moment. However this file can be shared between mulitple versions of LabVIEW, I recommand you to use a special LabVIEW data folder for each LabVIEW version. Contact ============ Comments, bugs and thank yous can be expressed to the NI Forums community , and on the LAVA community at the CCT discussion thread.
    1 point
  29. Version


    This tool integrates into the LabVIEW Project Provider API and contains features to assist with LVOOP development Instructions: - Restart LabVIEW after installation - In a LabVIEW Project, right click on a Class or Class Method VI and select 'LVOOP Assistant >> Plugin' - If 'VIPM Options >> Mass Compile VIs after Package Installation' is set to FALSE, tool will mass compile on first load for LabVIEW versions after 2012 - See 'Help >> LAVA >> LVOOP Assistant' for more information - Search 'LVOOP' in NI Example Finder for examples of LVOOP Assistant pluginss Features: - Clone a Method VI to another Class - Create a Child Class - Display and edit all VI icons in a Class - Open Accessor VIs from a block diagram property node for debugging - Script Method VIs using templates from a sandbox - Paste icon text from one Method VI to another - Refresh a Method VI's icon without having to open the Class Properties Dialog and refresh all icons - Rename LVOOP Labels - Add favourite Virtual Folders to a Class with pre-configured scopes
    1 point
  30. 1,168 downloads

    Since the standard Tick Count VI has very limited resolution, I made a simple timer using the QueryPerfomanceCounter methods in the windows kernel32.dll. The output is the time in seconds as a double precision value.
    1 point
  31. Version 2.4.1


    Variant Probe V2.4.1 Copyright © 2012, Ton Plomp All rights reserved. Author: Ton Plomp tcplomp@gmail.com Distribution: This code was downloaded from: http://lavag.org/index.php?app=downloads&showfile=19 Description: A custom probe to put on a variant. It will create a tree based on the variant data, and populate the tree with the data, the attributes of the variant will be shown as well. The datatype description will determine the color of the tree items. Historical data is available as well. Version 2.0 introduces a Variant Tree XControl which can be used in any project. Located under the user.lib palette, it gives great flexibility to the programmer. The programmer has the possibility to give the end user permissions for the following actions: -Reset This will reset the whole tree contents -Traverse Variant Attributes This will enable/disable the traversion of variant attributes -Colorize This will enable/disable coloring of the actual datatype All of these customizations are available as properties/methods for the actual XControl as well, or you access them (while the owning VI is in edit mode) via the short cut menu. Installation method 1: Install the OGP file using VIPM (www.jkisoft.com/vipm) and you have a custom VariantProbe and xcontrol To use it add a probe to a variant datatype or to an array of variants. It can pause if the data changes, and will notify you if a change happens. Dependencies: The following OpenG packages should be installed: oglib_string>=2.6 oglib_lvdata>=2.8 oglib_comparison>=2.3 oglib_error>=2.0 Known issues: Is slow on large variants. Support: If you have any problems with this code or want to suggest features: http://lavag.org/index.php?showtopic=10269 Version History: 2.4.1: Fixed issue #132: An array inside another array crashes the probe/XControl 2.4: Immediate updating after changing of attributes Rebuild in LabVIEW 2011 2.3: Fixed a bug that caused attributes not to be traversed on certain data-types 2.2: Fixed a relinking bug 2.1: Fixes a bug where unnamed cluster elements where used (http://lavag.org/topic/10269-discuss-variantprobe/page__view__findpost__p__67677) 2.0: Added an XControl Show XControl in palette (under user.lib controls) Add coloring Add 'user permissions' on XControl Add Reset on XControl Add optionally traversing attributes on XControl Add optionally colorizing on XControl Add optionally restting on XControl 1.2.0: Upgraded to LabVIEW 8.5 to use inheritance Support for Waveforms, timestamps and dynamic datatypes (thanks to Osvaldo) Added probe for an array of Variants Distributed as one .llb and added OGP installer If a Variant hasn't changed it's not decomposed (optimization) 1.1.0: Support for attributes of variants 1.0.1: Controls placed on a seperate pane Resize tree to upper pane Hide unused columns Limited maximum history length (default 10) Window resizable 1.0.0: Initial release of the code. License: This code is distributed under the BSD License Copyright © 2012, Ton Plomp All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the Ton Plomp nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    1 point
  32. Version 1.0


    System Icon Button v1.0.0 Copyright © 2009, Prabhakant Patil All rights reserved. Author: Prabhakant Patil LAVA Name: Prabhakant Patil Contact Info: Contact via PM on lavag.org LabVIEW Versions: LabVIEW 2009 Description: This Library contain, more than 500 controls, buttons. The Icon uesd in the library are free, but you can not redistribute it. These Button are in three shapes 1. Round 2. Square 3. Rectangle License - General Public License: http://www.gnu.org/copyleft/gpl.html Installation and instructions: Extract This Library and copy it into User library folder Examples: It is Button Library Version History: v1.0.0: Initial release of the code. License: License - General Public License: http://www.gnu.org/copyleft/gpl.html Distributed under License - General Public License: http://www.gnu.org/copyleft/gpl.html See link for a full description of the license. Support: If you have any problems with this code or want to suggest features: please go to lavag.org and Navigate to LAVA > Resources > Code Repository (Certified) and search for the "System Icon Button" support page. Distribution: This code was downloaded from the LAVA Code Repository found at lavag.org
    1 point
  33. Version 1.0.0


    Document Generator v1.0.0 Copyright © 2011, Mark Smith All rights reserved. Author: Mark Smith LAVA Name: mesmith Contact Info: Contact via PM on lavag.org LabVIEW Versions: 2009 Dependencies: None Description: This class is used to generate a single summary document for any folder containing LabVIEW elements (controls, VIs, projects, classes, or libraries (lvlib)). It recursively traverses the folder structure and reads the documentation from all VIs (including custom controls) and the documentation attached to all front panel controls. The class uses that information to build a document in HTML, RTF (rich text), or plain text (ASCII) formats. HTML is the preferred format, since this is the only format that includes lvclass descriptions and also supports the creation of a hyperlinked table of contents (TOC). The user can choose to - use short or long formats - the long format includes the descriptions on all front panel controls - Include or exclude custom controls from the document - Include or exclude private members of a class or library - Include or exclude protected members of a class or library One might choose to exclude private and protected members if the intention is to create an API document for the class or library - enable or disable a dialog that warns that an existing html file is about to be replaced by the Document Generator Installation and instructions: Unzip and open the Document Generator.lvclass Examples: The UI.vi is an interactive interface for creating documents. The Generate.vi provides an API if the user wants to programatically call this utility. They can be found in the Public->Methods virtual folder. Known Issues: Any documentation read from the source elements (VIs, controls, projects, etc.) is treated as pure text. There is currently no provision for escaping characters that might be interpreted as control characters in HTML. Version History: v1.0.0: Initial release of the code. License: Distributed under BSD (http://creativecommo...g/licenses/BSD/) See link for a full description of the license. Support: If you have any problems with this code or want to suggest features: please go to lavag.org and Navigate to LAVA > Resources > Code Repository (Certified) and search for the "Document Generator" support page. Distribution: This code was downloaded from the LAVA Code Repository found at lavag.org
    1 point
  34. Version 1.0.1


    Copyright © 2009, Wojciech Golebiowski (vugie) All rights reserved. Author: Wojciech Golebiowski (w_golebiowski (at) tlen.pl) Name: BitMan (Bitmap Manipulation Library) Type: framework, library LabVIEW version: 8.2.1 Description: Bitman library is designed for image processing based on a specially-defined structure to store the image, and a system of filters. It is not only a set of tools performing specific operations on images, but also a framework to help create your own image processing functions with a mechanism called "dynamic filters". Library contains few basic built-in filters. Their design concentrates on the versatility, ease of use, and the clearance of the code. This results in a decrease of efficiency and consequently, processing of large images using standard filters may be slow. But this is not a limitation of the framework and it is possible to create user filters, which may - as a more specialized - operate much more efficiently. Built-in filters are good for processing of relatively small images and can be used to support programming user interfaces, operations on the icons, creating graphical documents, etc. Library was written using object-oriented programming techniques (LVOOP). Installation Libraries can be used after unpacking it anywhere on disk. Access to all of the features is possible then by opening the library file "BitMan Lib.lvlib". However, it is most convenient to copy entire BitMan directory to the directory \user.lib. After the restart of LabVIEW on a pallet, in the User Libraries, sub-palette "BitMan" will appear. Documentation A description of all VIs from palette is available in the file "docs\BitMan docs.html". Descriptions are also included (for all functions) in the Documentation section of the VI Properties dialog, as well as for more important front panel controls and, as such, are available through the LabVIEW context help. Examples Examples of applications can be found in the directory "examples" (examples of the use of the library itself) and the directory "examples\Dynamic Filters" (examples of the creation of filters). Examples along with descriptions in the diagrams are an integral part of the documentation. Functionality The most important class it the Bitmap class. It contains structure for storing an image (the description of the structure may be found in documentation under Bitmap type.ctl) and the basic access methods. The main assumption of this structure is to store the image in three-dimensional U8 array, where subsequent dimensions mean respectively height (y coordinate), width (x) and subsequent color channel. Number of channels in the image depends on the bit depth, additionally you can define any number of user channels. It is possible to store pictures 1 -, 4 -, 8 -, 24 - and 32-bit, while the 32-bit means here CMYK color model, rather than - as is sometimes used - RGB images with transparency . Transparency (the so-called alpha channel) is stored in a separate field of the structure. Support for CMYK images is not fully implemented yet. The processing of images is done by the use of system of filters implemented in General Filter class. This class stores a reference to strictly typed VI processing an image and its runtime parameters. The filter is launched with Filter Run method, which uses the dynamic call mechanism. Filter runtime parameters are stored in the object as a variant variable for unified method for passing them. Users can create their own filters in two ways: by using methods of Dynamic Filter class and filter template or by creating a new class inheriting from General Filter class. It is also possible to create a function-specific interfaces for the use of filters as the normal LV function. Inheriting and transparent interface is the way buit-in filters work, so they are also a specific example of use of the library. Template to create your own filters may be found in "typedefs". Using of dynamic filters is supported Library Filter class designed for managing filters. It makes use of the functional global mechanism for storing and providing access to pre-loaded filters with assigned names. It can call the filters by using short names anywhere in the code, without a burdensome wiring of filter objects. Another supporting class is Bitmap With Filters class, inheriting from the Bitmap class and extending its functionality with a possibility of using a sequence of filters. More detailed descriptions of individual functions and applications can be found in the above mentioned documentation and examples. Version History: 1.0.0: Initial release of the code. 1.0.1: Packaged version with small bugfix
    1 point
  35. Version 0.9.4 LV7.1


    Installation: Copy the contents to LabVIEW xxxx/resource/plugins Abstract: Speed up creating new vi's from templates! It's using the 'new vi'-hook to create the new vi from a custom template. A plugin architecture allows to map different templates to the keyboard. For a quick-start, try Ctrl+N followed by 'H' (without releasing the Ctrl key). Detailed Description: When using New -> Blank VI from the Startup Window File -> New VI from the menu of any vi or the Ctrl+N shortcut the lv_new_vi.vi hook is called. Releasing of the Ctrl key (when using the shortcut) uses the Default.vit. The next key-press k creates a new vi from the template [...]/plugins/lv_new_vis/templates/k.vit. This is case insensitve and only works with a..z and SPACE. If no template is found or if an error occures, the default action of LabVIEW (empty vi) is performed (Failsafe). In addition to normal vi templates it supports global vi templates and control templates. Even more customization is possible using special tags on the vi or vit. Use [...]/plugins/lv_new_vis/tools/lv_new_vi__TagEditor to read and set them: isBD_ToFront? bring the block diagram in front instead of the front panel isRunMe? will instead run the vi in the template folder. Use this for wizards, more sophisticated scripting and other dialogs. Examples (V0.9.3: seperate ogp package): Try the following keys to see the different possibilities: f: normal vi, FP at front b: BD at front g: global vi c: control w: wizard h: help You do not need to delete the demo templates, a w.vit will load even with w_example.vit present. Compatibility: Developed in good old 7.1 and tested with 2010. I don't know if it works nicely with the project explorer and did never try to use it with projects, libraries and classes. Planned Features: * Error logging * Redirections via Config file (I will link the standard templates) (Edit: It's faster to just place them in the templates folder.) V 0.9.1 Fixed issues with the Application Instances of LV8.0 and higher. Wizards are still launched in the diaolog App.Instance, they need to get the default App on their own. V 0.9.2 Changes: Closing all references Beta: Uses VI Activation Event to abort when the user switched to a different app. (See discussion for details). V 0.9.3 Uses VI Activation Event to check Ctrl-Key when user switches from a diffrent application. Now available as packages (ogp). Uses a seperate package for the examples. V 0.9.4 Fixed issues with 0.9.3: After start of LV, Ctrl+N didn't work the first time Enjoy, Felix
    1 point
  36. 1,416 downloads

    Copyright © 2006, dsaunders All rights reserved. Author: dsaunders --see readme file for contact information Description: Converts a pixel coordinate to an array index. Returns an array of indices with a length equal to the number of array dimensions. Also returns if the point is within the content rectangle (not on the caption, scrollbars, etc.) Works on any N-dimensional array regardless of visibility of caption, label, index display, or scrollbars. Designed to be used on mouse events that provide the mouse coordinates. Limitations: Property nodes do not indicate the array border width, nor if the user has chosen to display an element gap. These inputs are thus provided on the VI. Version History: 1.0.0: Initial release of the code.
    1 point
  37. 1,465 downloads

    Windows Environment Variable Reader Writer Vc Copyright © 2006, Brian Hoover All rights reserved. Author: Brian Hoover **see email address in readme txt** Description:: Purpose: This Vi was made so that you can easily view and create environment variables from within Windows XP. Features: You are able to read all environment variables which you have available to you at the command prompt by typing "set". It also can write environment variables by writing them to the registry in the following location: HKEY_CURRENT_USER\Environment Also for added safty it will check the name you are trying to use, and won't allow its creation if a variable with that name already exists. Usage: To use this VI you need to be using Labview version 8.20. With Labview 8.20 installed open the VariableReadWrite.vi file, then click run. While it's running open the View Variables tab and click "Refresh Variables" to view all your command prompt variables. Two String arrays are created, the Name of the variables, and their values. A text window is also displaying what the user would see if they typed "set" at a command prompt. To create a variable open the Create Variables tab and fill in the information for Variable Name and Variable Value; then click Create Variable. Please note that you may need to log off then back on for the new variable to take effect. If needed there is a "Run Regedit" button which will open the registry. From here you can see the newly created variables in the location mentioned in the Features section. When you are done click stop to end the program. Version History: 1.0.0: Initial release of the code.
    1 point
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.