LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
JoshuaZ

Rotate Block Diagram Icons

Status: New
I would like a way to rotate the block diagram icons (like +, X, etc.). right now LabView forces me to build programs from left to right. I don't always want to make a bunch of subVIs just to make it easy to fit on one screen view. If it was possible to rotate block diagram stuff 90 degrees (45 deg. not necessary) I could then connect my loop counters (i) easily to a sink that is controlled by what loop I'm on and other applications wouldn't become so large (left to right).
13 Comments
JackDunaway
Trusted Enthusiast

This is one of those ideas that probably won't get very far without some compelling examples and screenshots.

 

Right off the bat, I can say that some functions would lend themselves very well to rotating (e.g., the 1-input-1-output functions, such as data conversions, Negate, Path to String, String to U8 Array, Not a Number/Path/Refnum?...) and others should not be rotated (functions with multiple IO on the connector pane). Some are iffy, such as the 2-in-1-outs such as the math primitives and Build Path.

 

When I think of the Universal Conversion Bullet, I have always imagined a function that would wire just as well vertically as it would horizontally (more of a BB than a bullet...).

 

Here's a question: would the glyph inside the VI or primitive rotate 90deg with the connector pane, or would it retain it's correct orientation? Visually identifying functions would become more difficult (would require some head-tilting to read code).

AristosQueue (NI)
NI Employee (retired)
I can see a setting that rotates the entire diagram to vertical instead of horizontal, but given that I've seen subVIs that have a terminal on the bottom and a terminal on the top just to achive the effect you're describing here, my guess is that a node-by-node basis would just lead to people code that is readable to no one else (including their own future selves).
JoshuaZ
Member

Rotation.JPG

 

Here is a proposal and example.

 

Blocks that have connections on top and bottom and sides wouldn't have to be rotated, just the option of rotating connectors would be nice for existing ones.

JackDunaway
Trusted Enthusiast
I'm not a fan of the proposal on the Add primitive. Which terminal would be the negative terminal for the Subtract? I would have no idea.
JoshuaZ
Member

Jack,

 

I see your point. Could be left to right; negative terminal on the right (like in an equation, 5 - 3).

 

Maybe just the single input-single output terminals would need to be rotated.

JackDunaway
Trusted Enthusiast

OK, the Universal Conversion BB always looked better in my head than on pixels - scratch that. Plus, the directionality of the bullet is necessary - the genderless BB does not indicate if top or bottom is input or output. (just looks like a ridiculous bobber) It's arguable both ways whether the bullet rotates well.

 

WhatsYourOrientation.png

JoshuaZ
Member

Definately agree with the bobber comment. I pictured it as the same symbol, just the lines having the option of being rotated 90 degrees.

 

NewIcon.JPG

 The same orientation as normal, input and output on top and bottom. This could be applied to several things like increment, decrement, etc.

JackDunaway
Trusted Enthusiast
The problem there is directionality: take for instance a U32 converted to a U16. Both wires are blue, which is input, which is output? I think the entire primitive would have to rotate to maintain coherence in dataflow.
muks
Proven Zealot
PhillipBrooks
Active Participant

Kudoed.

 

I started out as a CAD operator. I specialized in mechanical design, but learned (and later supported!) schematic capture tools. The concept of rotating a component is a simple one. Imagine not being able to rotate a resistor  on a circuit diagram; it would be messy or require more sheets. The equivalent in LabVIEW would be backwards/snaking wires or more sub-vis.

 

A LabVIEW wire already has a direction (ouput to input) so why should it be so hard to insert or display the conversion or Boolean functions? As others have pointed out, if the primitive has an indication of direction it should be acceptable to turn.

 

I'm not an electrical engineer, but many LabVIEW users are. Why would such a function make it more difficult to interpret the block diagram? I agree that some LabVIEW primitives have no direct electrical or plumbing equivalences (subtraction or division) but the Boolean functions support compound arithmetic that would easily be understood in a vertical orientation.

 

About the time NI acquired Electronics Workbench, there were some forum posts regarding block diagram cleanup. I suggested that there was probably some great auto-layout code just waiting to be added to the LabVIEW environment. If the Idea Exchange existed then, I would have used it to propose such.

 

If just some of the primitives (such as Boolean) had the ability to be rotated, maybe the clean-up block diagram code could do a better job.  If the tool could do a better job, then I'm certain that many anal LabVIEW users (myself often included) could create a "more perfect" block diagram. Anything that makes the block diagram cleaner (less bends, scrolling or sub-VIs) is a good thing.

 

 

Message Edited by Phillip Brooks on 04-30-2010 07:53 AM

Now is the right time to use %^<%Y-%m-%dT%H:%M:%S%3uZ>T
If you don't hate time zones, you're not a real programmer.

"You are what you don't automate"
Inplaceness is synonymous with insidiousness