Jump to content

Anyone else OCD about alignment and positioning in block diagrams?


Recommended Posts

I'm okay with this for the same reason.

 

But I would rather be consistent.  Look at the sample I posted with the TDMS functions.  That gets me every time that I need to be one pixel off whenever that palette is used.  I would rather they were consistent with 5-3-3-5 (or what ever they picked).

 

But I would say that 4-2-2-4 is my standard and very rarely deviate from it.  But just as the style guide is a guide, I would say that a 4-2-2-4 setup should not be strictly enforced and if I were king of LabVIEW I wouldn't ban anyone if they used another.

 

I ran into a crappy behaviour of 5-3-3-5 the other day.  I thought I'd be smart (You just know how that's going to end up really) and wanted to connect up two VIs with the same conpane pattern (5-3-3-5) but have them vertically staggered so that the top two connectors of one VI lined up with the bottom two of the next one.

 

Lo and behold, even LabVIEW can't make 32 divided by 5 equal an integer and there was an extremely annoying 1-pixel bend.

 

This may be also the background to some of NI's own 1-pixel benders.

  • Like 1
Link to comment
hooovahh - alter-ego of crelf and king of LabVIEW

 

I like it!

I started calling myself LabVIEW Overlord as a joke, because people throw around the term Guru all the time.  Only now it sound pretensions when someone introduces me as the LabVIEW Overlord.  Also someone may take that as me pretending I'm better then a NI Knight, which wasn't the intent either.

 

Lo and behold, even LabVIEW can't make 32 divided by 5 equal an integer and there was an extremely annoying 1-pixel bend.

 

This may be also the background to some of NI's own 1-pixel benders.

Lets not be rational here.  We can all agree it is NI's fault and I demand they fix it.  Can't they just have 6.4 pixels per terminal?

Link to comment
I started calling myself LabVIEW Overlord as a joke, because people throw around the term Guru all the time.  Only now it sound pretensions when someone introduces me as the LabVIEW Overlord.  Also someone may take that as me pretending I'm better then a NI Knight, which wasn't the intent either.

That's why I like my title of "Archetype". Old and experienced; one of the original blueprints familiar with the arcane arts of LabVIEW ;)

Link to comment

Now, I know that I am no longer alone on this Earth.

I am a compulsive "pixel pusher" too.

I can spend hours to align a Block Diagram, down to the pixels.

It's a pity that it's not possible to align up to half pixel. :yes:

And moreover, I like very much that, it is a real pleasure.

 

Smiley-tout-fou.gif

Link to comment

So, what does everyone do when connecting a 4-2-2-4 VI to a 5-3-3-5? (top and bottom connections like VISA handle, error cluster)

 

Do you hide the bends under one of the icons to get nice straight lines, or do you insist on creating a false bend in one of the wires and then align the verticals symmetrically? 

 

post-949-0-10365400-1377686499.png

Link to comment
So, what does everyone do when connecting a 4-2-2-4 VI to a 5-3-3-5? (top and bottom connections like VISA handle, error cluster)

 

Do you hide the bends under one of the icons to get nice straight lines, or do you insist on creating a false bend in one of the wires and then align the verticals symmetrically? 

 

Must. Hide. Bends.

Link to comment
So, what does everyone do when connecting a 4-2-2-4 VI to a 5-3-3-5? (top and bottom connections like VISA handle, error cluster)

 

Do you hide the bends under one of the icons to get nice straight lines, or do you insist on creating a false bend in one of the wires and then align the verticals symmetrically? 

 

attachicon.gifhow do you.png

 

Never hide bends!! That is über evil! :P  But reduce them as much as possible by aligning the nodes on the error cluster.

Link to comment
Over what must be by now multiple decades of interaction, I never ever ever ever thought I'd say this:

 

Rolf, you are WRONG!

 

:P :P

 

I can understand that sentiment :D

But my rule comes from the fact that if I move a VI (by nudging it one pixel up and to the side with the cursor) to see if the wires are correctly attached to the right terminal, and yes that has been and is always one of my first methods when debugging code that appears to behave strangely, I want to see the wires move with it so I know approximately that they indeed are attached to the terminal they appear to. With hidden bends you don't have that at all and need to move the node sometimes many steps to see if they really attach correctly. And shift-cursor is not a good way to do it.

 

And to Shaun and others, be happy I'm not in the LabVIEW development team. I would penalize any VI call that is not using the 4*x*x*2 connector pane by an extra 1 ms delay, and document it as a special optimization in the compiler of the 4*x*x*4 connector pane pattern. :cool:

Link to comment
I can understand that sentiment :D

But my rule comes from the fact that if I move a VI (by nudging it one pixel up and to the side with the cursor) to see if the wires are correctly attached to the right terminal, and yes that has been and is always one of my first methods when debugging code that appears to behave strangely, I want to see the wires move with it so I know approximately that they indeed are attached to the terminal they appear to. With hidden bends you don't have that at all and need to move the node sometimes many steps to see if they really attach correctly. And shift-cursor is not a good way to do it.

Too many hours on Linux :D Double-click will highlight the entire wire and show all kinks, even if behind a primitive ;)

 

And to Shaun and others, be happy I'm not in the LabVIEW development team. I would penalize any VI call that is not using the 4*x*x*2 connector pane by an extra 1 ms delay, and document it as a special optimization in the compiler of the 4*x*x*4 connector pane pattern. :cool:

Wouldn't be any worse than using classes :D They've already put in optimisations to increase compile times and code base by 500% for them ;)
Link to comment
Too many hours on Linux :D Double-click will highlight the entire wire and show all kinks, even if behind a primitive ;)

 

I think that is triple-click. For some reasons I can't get myself to use that, but that could be also because I do not have a super-duper gaming mouse nor any experience in playing shooter games, or most any other computer games for that matter :D

Link to comment
I think that is triple-click. For some reasons I can't get myself to use that, 

You don't triple click?  I do it quite often.

 

I colleagues of mine once told me a story of trying to help his neighbor get some files off of a USB stick.  This guy didn't have a lot of experience with computers.  So he went over and plugged in the stick and showed him the files and how to navigate Windows Explorer.  He then said you right click the file an choose Copy.  The neighbor quickly snapped back "Oh I don't right click, is there another way?".  He told me this story as if it was the guys religious preference or something that it would go against his moral code to right click.  

 

Accept the new doctrine of triple click my friend.

Link to comment

Once in a while I'll download VIs from NI forums. I have to make sure I have not had any coffee, yet, otherwise I get sucked in to the vortex of cleaning up ALL of the code.

Straight error wires with non-hidden bends. The nudge-to-check-connection also works for putting the 1px bend in the horizontal middle of the wire.

 

Has anyone mentioned having to line up all the input and output terminals of case and event structures, and for and while loops? That one slows me down a little, sometimes.

Link to comment

I'll see your scrolled-case-wires-don't-move and raise you my scrolled-case-VIs-and-controls-don't move. The empty string constants in this BD are used for aligning edges of nodes in the cases:

 

post-107-0-69933000-1377802438.png

 

Oh, now I notice that you mentioned functions.

  • Like 2
Link to comment

I have a slightly different approach when matching 4x VIs to 5x VIs (or more often 3x for the many Vision anomalies) - my preference is to keep the VI icons fully aligned, and hide bends on both the top and bottom wires behind the non-4x VI.  That seems to me to minimize the internal stress of the block diagram (i.e. makes me happiest).

 

I almost never run into Rolf's problem within knowing whether a wire is attached because I work hard not to have any wires going behind unconnected VIs - if it's touching, then it's attached.  Oh, and I don't mind triple-clicking.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

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