LabVIEW Idea Exchange

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

Wire Anchor Point / Wire Bends

Status: New

For most functional blocks on the Front Panel, the wire anchor point is very near the edge of the block (reference this idea for an exploded view of the wire anchor point). This lends itself very well to a trick I use to achieve neat parallel wire routing (until this idea is implemented!😞

 

WireRoutingTip.png

 

Step 1: Wire up a bunch of parallel wires, and you've got a mess!

Step 2: Grab one of the functions, and drag it all the way up and down so that the parallel wires all bend along the same line

Step 3: Grab the wires one at a time, and using Shift+Arrow Left or Right and distribute so that the vertical wire runs are evenly spaced

 

Here's the problem: Bundle by Name, Unbundle by Name, Property/Invoke Nodes, Local Variables etc. have the "wire anchor point" in the center of the node. This makes the above trick difficult, and it also presents more problems:

 

HiddenWireBends.png

 

Frame 1 shows erratic spacing of tunnels, and a highlighted wire that lands in the center of the large Unbundle by Name. I have drawn a red line that shows the center of the wire run as currently implemented, and the green line shows where I propose the wires should bend. Frame 2 shows what you see when check "Hide Full Names": the wire bends are clearly evident and easy to fix, as shown in Frame 3.

 

Another problem is "what you see is (maybe or maybe not) what you get":

 

WiringIllusion.png

 

The three tunnels appear to be wired to 6, 7, and 8, but indeed they are actually wired to 1, 5, and 7.

 

In a nutshell: When the location of a wire bend is calculated, it should bend halfway between the edges of two nodes. This could be accomplished by placing the wire anchor point at the edge of the node instead of the center of the node.

6 Comments
elset191
Active Participant
I do the same thing to get nice lines, as in your first example.  When doing it with large things like your cluster there, I just move the cluster to the left until I can see the bend, play with the wires, then reposition the cluster.  It's a hassle, but it works.
--
Tim Elsey
Certified LabVIEW Architect
JackDunaway
Trusted Enthusiast
Alright everyone, check out altenbach's suggestion (third from top) on my Connecter Pane Overhaul post. It is a viable solution for achieving this idea for SubVI's.
JÞB
Knight of NI
And add a Half dot to the inner edge to show which anchor point is wired. Filled for sources. Semi-filled for sinks.  I'm sure I'm not the only one whos "shorted" around a function by wiring both the goesinta and the comsouta to the input creating a branch.

"Should be" isn't "Is" -Jay
JackDunaway
Trusted Enthusiast

@Jeff: Would these half-dots always be visible? Like a coercion dot? And for "shorting" a function, are you referring to the auto-insertion of a feedback node?

 

@All: Another notable example is block diagram constants, especially big cluster constants and string constants - they almost always hide wire bends on my BD's. The only solution is to move the constant faaaaar away, straighten the kink, then move it back to its original location.

Message Edited by JackDunaway (mechelecengr) on 10-30-2009 08:13 AM
JÞB
Knight of NI
Jack.  I'ld be happy with the dots being able to bturn on and off (simillar to the option "show dots at wire junctions) As for "shorting" a fn - well I once spent several hours debugging to find a "array subset" that had both the in and out wires connected to the input creating a branched wire and a function with no output.  (oh gosh)

"Should be" isn't "Is" -Jay
Arlon
Member

I just spent 1/2 hour trying to find out why 2 strings where getting concatenated backward because of this! (no idea how the wires got crossed in the first place). This issue is related to ideas mentioned elsewhere of having a visual indication for any code (object / wire / comment / ANYTHING!) that is covered up. Or, at the very least, preventing overlap all together.