LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Change properties of a cluster element withing an array of clusters

Solved!
Go to solution

@Kochise wrote:

That argument, again.

 

Don't tell me that duplicating the String's attributes

(font, size, color) would be such a memory overhead.

 


Font, size, color, caption, scroll position, background and foreground color, 'limit to single line?', 'allow tabbing', description, tip strip, focus key binding, caption text color/font/etc., label text font/color/etc....   That's a small minority of all the attributes of a string control.  If I open a subVI that takes a 1 million array of doubles, I don't want the FP control to reserve several hundred Mb of memory for all those attributes.   You need a separate control type intended for the small number of elements presented in a UI.

Message 21 of 35
(1,367 Views)

If a UI is meant to present 1 million+ items to the

operator, I think there is a huge flaw in the main

architecture, to begin with.

 

I requested some sensed arguments, not fallacy.

 

I'm already served 'millions' to justify all the

limitations I'm encountering in my journey

to boredomland.

 

David Koch

0 Kudos
Message 22 of 35
(1,361 Views)

You're funny. Smiley LOL

 

It may be a flaw, but its pretty inbuilt that LabVIEW uses Front Panels for double-duty as a debug UI for the developer of subVIs, in addition to the actual Operator UI.  And even on the Operator UI, one is sometimes presenting a scrollable indicator of very large numbers of elements; a log with tens of thousands of entries, say.   Things like the Tree control or Table control, which are part-way towards what you want, have great difficulty handling that many elements.

 

 

0 Kudos
Message 23 of 35
(1,355 Views)

Yeah, I'm funny, that's the way I'm trying

not to loose my mind. Computers and

programming languages are meant to

solve problems, not create new ones.

 

I understand the logic behind the UI

paradigm Labview is (over)using, yet

I beg to differ.

 

There's various 'best practice' cheats

and hints all around the place, that just

shows how much Labview can entrap

you without prior warnings.

 

A good 'best practice' that is common

amongst 'real' programming languages

is the famous MVC architecture that

breaks data from UI. Or at least allows

the coder to link them using transactions.

 

That's mostly the 'large file model' that

also allows one to navigate in theorically

unlimited sized files. Transparently.

 

If you are to load 1 million+ UI items

with their respective data, without

pre/post UI processing, you're getting

into a boatload of troubles, I guarantee.

 

But since Labview is just for technicians

and operators, not serious programmers,

I bet I get what I deserve.

 

I miss my LISP REPL 😕

 

David Koch

0 Kudos
Message 24 of 35
(1,348 Views)

This thread is already spiraling into oblivion.  Your experience with NI products make your opinion what they are, but had you chosen any other language you would have things to complain about.  LabVIEW is not without faults, and we can have a real discussion about the things you find difficult about it, but the method of which  you are expressing your opinion, is very put-off-ish and in the end will not accomplish anything.  As gently as I can, here is my response to some of your points.

 

Just because it is a Windows environment, does not mean you can eat up as much resources as you want.  Memory is not free, it is limited, and at some point a user will hit some memory limit and wish LabVIEW was more efficient.  One way to avoid this is to not have separate properties for each element in the array.

 

UI's often have arrays with large number if elements and that doesn't make it bad UI design.  That's like saying that other applications should not contain large amounts of numeric data in a list.  That is exactly what Excel is.  It isn't always bad UI design, or flawed.

 

Any language has strength's and weaknesses.  A LabVIEW strength is rapid prototype, and centers around DAQ systems.  A weakness is UI design.  No one complains that it takes literally seconds to take a DAQ reading, but many complain about UI design issues.  As a result we have come up with work arounds for UI desing issues, until NI makes better solutions.  If you have a complaint or want improvements, NI has made the Idea Exchange board.  Something Other companies don't have for their products.  If enough people have the same issue with a product, NI addresses it.

 

Claiming LabVIEW is only for technicians is laughable.  Would you call what SpaceX is doing not real programming?  This is generally the first example but far from the last.  Massive large scale distributed systems have been deployed with LabVIEW and TestStand with great success in much less time than it would take with other tools.  Your inability to use a tool, doesn't invalidate the tools ability.

 

EDIT:  Thanks for linking to that array cluster table, that was one of them I was thinking of.

0 Kudos
Message 25 of 35
(1,336 Views)

From common Labview best practices :

 

#1 - keep everything in one screen

 

I think it sum up it all.

 

David Koch

0 Kudos
Message 26 of 35
(1,325 Views)

@Kochise wrote:

 

I think it sum up it all.


I don't think it does, what are you trying to say?  How many monitors should one text file take up in other programming languages?

0 Kudos
Message 27 of 35
(1,328 Views)

@Kochise wrote:

From common Labview best practices :

 

#1 - keep everything in one screen

 

I think it sum up it all.

 

David Koch


Isn't it a tip in C to keep functions small (say, a screen long) also? Atleast that how i interpret it.

/Y

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
0 Kudos
Message 28 of 35
(1,321 Views)

Hooovahh a écrit :


@Kochise wrote:

 

I think it sum up it all.


I don't think it does, what are you trying to say?  How many monitors should one text file take up in other programming languages?


 

 

Basically one, most IDEs have tabbed UI, unlike Labview.

 

And paned debug views instead of top-most floating windows.

 

But that's another point.

 

I can bear some level of frustration, being a rookie into

Labview and Teststand, but not into software development.

I used to conceive large scale data monitoring applications

or 3D stuff, or complex WMS algorithms in some Toy's R Us

looking IDEs served by blond babes (PC Soft) and figured

them out pretty fast.

 

Unlike Labview, that is supposed to be easy going.

 

Doing complex data management - PROGRAMATICALLY -

at run-time is almost impossible. The available tools are,

like I said, pretty obnoxious for that purpose. Speaking about

VariantDataType to name one, not even released with

exhaustive documentation and examples.

 

That's why I'm felling deep sorrow. My job wasn't meant

to be.

 

David Koch

0 Kudos
Message 29 of 35
(1,317 Views)

Yamaeda a écrit :

Isn't it a tip in C to keep functions small (say, a screen long) also? Atleast that how i interpret it.

/Y


Teachers tells learning students to follow that advice.

But then all methods and prototypes in one CPP/H couple of files.

 

Labview professionals tells programmers to keep everything in one screen.

In production code. As best practice.

 

That's another affair that tells a lot about the language level.

 

David Koch

0 Kudos
Message 30 of 35
(1,312 Views)