all know that labview has changed engineer's programmer style of measuremnt and control filed. it not enough , i take a suggesstion to expand labview feature which add machine learning feature. it can aquire data when user developing application using labview, These data include user programming style, the use of professional background knowledge, after training to be able to automatically generate relevant code according to the user. microsoft has started to research this Tech. everybody, if has true, will be changed all progrmmer life.
I have a fixed length array of plots (machine raw data) plust a variable length array of plots (user-determined calculations) that I want to display on the same chart.
Naturally, I put the fixed length array first (raw data plots), then append the variable length array (calculations), so that I have a fixed offset in the array. Anything before this offset is raw data. Anything after that offset are calculations.
This is useful for using the "plot visible" property node to hide/reveal some of the user-defined calculations.
The problem is that when I display the calculations together with the raw data, the calculated plots are mostly hidden:
Current LabView Plot layering: Descending
Plot 0 = topmost layer (raw data, always visible)
Plot 1 = next layer (raw data, mostly visible)
Plot 30 = second lowest layer (calculation, very difficult to see) <== this is the problem
Plot 31 = bottom layer (calculation, almost impossible to see ) <== this is the problem
I would like to have a property node "Plot Order: Ascending / Descending" on my chart so that I can reverse the layering of the plots as follows:
Proposed optional Plot layering: Ascending
Plot 31 = topmost layer (calculation, always visible) <== this would be better
Plot 30 = next layer (calculation, mostly visible) <== this would be better
Plot 1 = second lowest layer (raw data, very difficult to see)
Plot 0 = bottom layer (raw data, almost impossible to see)
In summary, my suggestion is for LabView to add a chart property node "Plot Order" which can be set to "Ascending" or "Descending".
A value change for the autoscale setting of a graph / chart scale is currently not registered. It can only be detected by polling for the scalefit value. The range of detectable events on charts and graphs is currently incomplete. The scale range change event and the autoscale range change event trigger at the same time in unpredictable order. This makes it hard to detect whether a user manually adjusted scale minimum and maximum or adjusted the autoscale settings value in the scale attribute. Different user actions all trigger a scale range change event without any way to discriminate the cause of this event.
On each development PC should be database of VIs opened on this PC.
Database content for each VI: FP and BG position, size, monitor, maximize window flag, tile Up&Down or Left&Right flags where user closed this VI.
User doesn't have to save VI to record new position of FP or BD.
This is about developing mode not run-time mode.
There could be one more flag = don't display VI Front Panel. That would be nice. FP could be accessible through menu or VI properties. And to wire/connect VI Pane with controls and terminals could be done on BG.
The getting started windows fills with irrelevant entries if we open many VIs and projects from the forum. We probably never want to see them again. Also, if items exist that have the same name, but reside in different folders, they will show with the full (often very long!) path and the filename is not directly visible unless we e.g. hover over it or make the window gigantic. Here we want to remove the stale one, even if a copy still exists on disk.
We can currently do some cleanup by editing labview.ini but it is tedious. (just try it!)
I would like to request a feature that allows us to easily and permanently remove any entry in the list.
(...maybe it could even show for pinned entries?)
IDEA: I suggest to show a special glyph that, when clicked would remove that entry from the list.
It could also be e.g. an "X" (or similar) that shows next to the pin when hovering so we can either pin or thrash an entry.
These are just some suggestions, but there should be a way to easily weed out unwanted entries from the GSW. Of course the actual files will not be touched. We would just go back to the state before we opened that item.
I would love an update to the signal processing VI's contained in NI_MAPro.lvlib to support waveforms with a SGL Y-value representation. The library is locked and most VI's call dll's that are not able to be modified anyways (by me that is, I am not all that strong in traditional text based languages). It would be nice to also support SGL waveforms within the .llb's contained in vi.lib/measure; although these are mostly unlocked and able to be modified.
Working with a cRIO, the FPGA to host DMA channels encourage the use of SGL data type so I went with it and kept it as SGL throughout my application. For some functions I turn my SGL array into a waveform with SGL Y-value representation. I was disappointed to learn that most of the signal processing waveform tools contained in NI_MAPro.lvlib do not support the SGL Y-values.
The predessesor application was done on the usb cDAQ line that i was using DBL representation Y-values. I want to re-use a lot of code and was hoping the waveform signal processing VI's would accept SGL Y-values. For now I am stuck converting my data type for the sole purpose of re-using code; at 50kHz on 36 channels this can become a performance issue.
Recently, user cprince inquired why all of the possible Mouse Button presses were not available in LabVIEW. In the original post, it was not clear whether this referred to "normal" mouse functions (as captured, say, by the Event structure) or whether this referred to the Mouse functions on the Input Device Control Palette. The latter has a Query Device, which shows (for my mouse on my PC) that the Mouse has 8 buttons, but the Acquire Input Data polymorphic function for Mouse input returns a "cluster button info" with only four buttons.
The "magic" seems to happen inside lvinput.dll. If, as seems to be the case, the DLL can "see" and recognize 8 Mouse Buttons, it would be nice if all 8 could be returned to the user as a Cluster of 8 (instead of 4) Booleans.
There are a lot of ideas about improving the navigation of the Find Project Items window, but I could not find this one. When I search for a project item and get a list of matching results, it would save a lot of time if I could select the ones I want, GoTo all of them at one, then open them all simultaneously from the project window. Opening multiple items has been around for a very long time.
1. Select first result
2. Go to item in project window
3. Open item
4. Edit item
5. Save item
6. Close item
7. Go find results window
8. Select second item
9 Repeat 2 thru 7 again and again
This would take about 70 steps for 10 items
1. Select all results
2. Go to all results in project window
3. Open all items at once
4. Edit item
5. Save item
6. Close Item
7 . Repeat 4 thru 6 for all items
Under 35 steps for 10 items.
When you create and register user events, you need to send a copy of the event ref to the Event structure to be able to use and generate events. Why? We should be able to extract/unbundle the registered events. On the same thoughts, unregister should also return the ref so it can be destroyed, similar to how Open/Close File ref works.
TLDR; We should be able to extract and use registered event refs, e.g. through unbundle.
Quick Drop (QD) is a gift to me and I love to use it.
Recently I have come across an issue that would speed up my development by a simple improvement of the QD "insert" function (CTRL-I).
As you can see in the image inserted above, I have indicated two options:  and  which each have two circles that indicate the wires/terminals I need to select in order to use QDs insert function.
Currently only option  works which, usually helps when the wire continues through the VI but in case  the wire ends inside the VI and I need to manually reconnect the terminal to the inserted VI.
Allow quickdrop insert (CTRL-I) to also consider selected terminals and wires exiting VIs which are selected and consider this in the quick drop commands which wires the corresponding wire to the VI inserted.
Also allow multiple selections to be considered.
e.g.: in the image above "Msg to Host" also has a wire exiting it, I would like to:
The Datalog functions are probably so rarely used that this must be a remnant of times long gone, but the fact is that the Open/Create/Replace Datalog dialog is non native:
(This is a snapshot taken on Windows 7/LabVIEW 2016 SP1).
I would suggest upfating this to a native file dialog instead.
GPS/INS applications are increasing every day as you know.
It is inevitable that using maps in GPS/INS project.
There is not a simple and useful map tool in Labview.
In some open source code map applications like "Open Street Map" will be useful for some projects which including GPS/INS.
After some searching, this ideas was already discussed in the comments of this declined idea. but I think it deserves to stand on its own, so here we go.
We have a nice menu entry "Menu...Edit...Make current values default" that (if nothing is selected) does just that. In 99% of my cases only the controls are important, because all the indicators, while often containing tons of data (graphs, arrays, etc) can be easily re-created from the control values at any time.
So while the control values are useful to be able to run a VI out-of-the-box with reasonable input values, default values for indicators just contribute to VI bloat, increasing the size on disk.
Making indicators default is useful for the rare cases where a forum users want to show what he gets or expects to get, but not in general development. Yes, we can of course select all controls first, but they might be scattered all over the panel and over several tab pages, so that's not a good solution. (We could also request a menu in addition to the "edit...select all" e.g. called "edit...select all controls", but that is probably a different idea.)
In summary, there should be a menu entry that ignores indicators when making values the default.
It should also work if multiple items are selected "Make Selected Control Values Default", in which case it would ignore any selected indicators.
With a case structure I can place the mouse cursor over the structure and Ctrl + scroll wheel to cycle through the cases without it being active. If I try doing this on arrays it doesn't work.
For front panel arrays the numeric indicator must have focus for this to work. Doesn't work when the array data is selected. I understand that multidimensional arrays would be a problem, but for 1D arrays it would be nice if it cycled through the elements.
For array constant block diagram elements, no scroll action works regardless of what is active. Again it should allow the user to cycle through elements for 1D arrays simply by hovering over the item and Ctrl + scroll wheel.
[admin edit: Adding animation image at the request of the OP]
Make it easier to find the right product in the uninstaller
If you install a lot of National Instruments developer tools the uninstaller becomes very crowded. You can have 50-100 components, often with similar names and varying name structure. Finding the component you want to uninstall/modify/repair can be difficult.
The fact that things a split into so many separate components is practical, but the components should be organized better:
They could be:
Allow us to specify a new source location
If I want to repair or modify an installation it might turn out that the original source for the installation is gone, or I have a new (identical/compatible) source that I would like to use instead. It would be nice if the uninstaller handled this, instead of insisting on the original.
Currently there is a method for setting the control value of another VI via the Control Value Set Method. But there is no set with signaling method which allows control of VI's which react to changes on front panel controls. This makes it hard to automate VI's that are using front panel control events. There is a tedious work around to get references to control on the front panel and then use value signaling method . It would be very useful to just have one additonal method that does the signaling in additon to setting the value of the control.
The Save As option is not always available from the right-click menu for items in a project/library. It seems to be dependant on if/how the item has been loaded into memory.
It would be nice if this option was always available to allow easy duplication of VIs. It should open up the default Save As dialog (as below).
Currently, the only object that we have access to in an Event Structure it the control itself:
This is not what I am interested in, most of the case, when I am working on the BD.
Rather, I'd like to either find the terminal, or local variables, references, etc.
Moreover, going to the control using the above shortcut may result in a messed up FP, not mentioning cases like this:
where the control may be hidden or invisible because it is in another tab than the one currently selected.
Now, I know that some will argue that the control terminal is most of the time in the event structure (see for instance this thread)...
But read the thread's comments for counter arguments: we would be talking about the Value Change event, but this is not what I am talking aboutin general: any event for that control should give access to the control's terminal (and BTW, it could very well be an indicator) and, as for a terminal, to this list of related objects:
(The last one courtesy of this shortcut plugin)
Add a Visible Item to the cluster container to enable the display of the currently selected AutoSizing style
Similar to the other Visible Items (enabled above on "source" string & "code" integer) like
For consistency with others similar above: