Effective multiple way connectors in Visio 2013

Started by ketch_up, January 29, 2015, 02:48:59 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

ketch_up

Hi,

I have searched both this forum and internet for a solution to my problem, but to no avail.
I am trying to create a three-way (or four / five / etc.) curved connector.

I would like to do this by connecting (and fixing) one connector to another one.

I tried adding a connection point to a connector. Unfortunately the connection point does not stay on the line if I move one of the shapes.
I can also not add independent "free-floating" connection points (used to work in 2010 I think). If that would work, I would just drag three lines to that point.
The shape library was not really helpful, as there are three-way connectors but they don't connect well to shapes.

The way I 'solved' it currently is by placing a circular shape with no fill and no line color, then adding a connection point to its middle and finally connecting all the connectors to this point.
However I am not really happy with this solution, so I am reaching out to ask whether I might be missing an easier solution.

Thanks in advance!

wapperdude

Two points: 
1.  sounds like the connector wasn't selected when you added the connector point.  So, the point was added to the page, and not the connector.  Make sure that the connector is selected, and that you hold down the cntl key when adding the connection point.

2.  adding the connection point is unnecessary.  Check your glue settings.  Make sure that glue to shape geometry and, for good measure, shape vertices are selected.

Wapperdude
Visio 2019 Pro

Yacine

Can you send a drawing/Sketch of how the connector is supposed to look?
And do you already have ideas on how it should behave?
Yacine

vojo

Certainly can build your own
   - create a line
   - add connector points to each end
   - add a control point to one end
   - copy 5 times
   - roughly space where you want
   - group
   - select group ==> behavior ==> children first
   - May want to hide group handles (use shape sheet)

Something like this

This is probably overkill for what you want...but can give you some ideas to consider
right click and double click to see the parameters you can use to control it

ketch_up

Hey all,

thanks for all the responses!

@Wapperdude
Both of your methods work for connecting the two connectors. The glue tip is great by the way.
However, as I have curved connectors, the connection point strays of the line if I for example invert the connector.
I do have the feeling that I place the connection point on the connector itself, as small movements show the connected line following and still stay connected.

See as an example where I tried with method 1 (add connection point) and 2 (simply glue to shape).
If I move around the connectors a bit, they will come undone, so Up is before, and Down is after some movements
http://imgur.com/hno6xzl

@Yacine
See the above imgur link, I want the connection point to stay fixed, even after moving the connectors but somehow it moves of the connector. It's just an aesthetic thing (and to have some consistency of course).

@Vojo
I can get this to work somewhat, so thanks for pointing me in this direction, however the behaviour is not really great in this solution (yet).

I'll use my makeshift solution for now, because it is fairly easy to implement and gets me decent behaviour.
I am still curious why the lines would disconnect again.
@

vojo

Thx....

RE connection points on curves:  They need to follow the same formula as the geometry does
(or copy the geometry formula into connection point....then in geometry reference the connection point)
So if you go into the shape sheet of one of the children shapes in what I posted, you will see some real complex formulas
June the Second is really quite the expert at these complex formulas...may ask him for some formula guidance on a curve.

RE connections to multiple shapes:  I do vaguely remember some problems I had when was trying to build sort of a
lego set of shapes to build something else, that 3 shapes could not be interlocked together (any 2 could...but not a circle of 3).
If you do have a multiple connector shape...some artifact (if memory servers) could be part of the problem.

wapperdude

Your shape appears to work OK. 

If you don't want the extraneous connecton points at the corners and the middle, you can delete them with the connection point tool  Just select your shape, hover the connection point tool over the connection point, click once to select it, and then hit delete.  Voosh!  Conneciton point is gone.

Note, you can always open the shapesheet of a shape, and look at the connection points section and check the coordinates of the connection point to see if they coincide with either begin or end point as needed.  And, since you're in the shapesheet, you can delete undesired connection points by deleting a row, or even manually add a connection point by adding a row.

HTH
Wapperdude
Visio 2019 Pro

Yacine

Hi Ketchup,
Interesting topic!
1) I would have liked to able to manipulate the nurbs formula of the main connector and copy a section of it to the other branches, but that's above my concentration capabilities. The formula is too complex. The idea would have been, to have tangent branches coming out of the last but one node of the nurb.
Maybe someone smarter than me, could try to accomplish this task.


2) Instead, I can provide a pretty ugly multi way connector consisting of a group with a main connector going from end to end and a bunch of branches coming out of one end.
The branches can be made tangent to end - but manually.


3) A further approach would require a macro.
A group connector would have a main connector as well as some control points.
Modifying the connector would trigger a macro that would duplicate the main connector place it over the later, then bind the end to a control point.




Additionally a custom property could control the number of branches to display. I did not set this up, it is easy.


Regards,
Yacine
Yacine

ketch_up

#8
Hi all,

thanks for all the replies. I was initially interested to see whether I was missing a simple solution, but that was not the case apparently.
@Yacine, thanks for the shape, but the arrowed ends do not glue to other shapes unfortunately.

In the end I will use my solution still, although it is a bit clumsy, it gives decent results:
(The way I 'solved' it currently is by placing a circular shape with no fill and no line color, then adding a connection point to its middle and finally connecting all the connectors to this point)

Yacine

Quotebut the arrowed ends do not glue to other shapes unfortunately.
They do. Are you sure you set the right gluing options?
Yacine

Oldman124

I was able to get the connector to join the curved connector line at the text marker and it would move with the marker as you moved it.

The X component of the Connection Points, I set to formula in Text Transform - TxtPinX - =SETATREF(Controls.TextPosition)
and the Y component of the Connection Points, to the formula in Text Transform - TxtPinY - =SETATREF(Controls.TextPosition.Y)

I try just =TxtPinX and =TxtPinY but it did the calculation and started drifting off the line as you moved it. While the formula recalculates every time.
Now the connector can be moved anywhere you place the text and it follows the line exactly like the text did.

If that helps anyone figure out the formula to place it anywhere on the line can you post you final formulas.

wapperdude

Have you explored pointalongpath function?  https://blogs.msdn.microsoft.com/visio/2010/01/15/the-point-along-path-shapesheet-functions-in-visio-2010/

Then VisioGuy has post that use this for placing text, which ought to be applicable to your situation.  http://www.visguy.com/2010/02/09/text-along-a-connectors-path-in-microsoft-visio-2010/

Alas, I must make the V2007 disclaimer, and cannot directly help.
Wapperdude
Visio 2019 Pro

wapperdude

Since I'm limited to V2007, what is attached proposes a possible solution.  It attempts to stay as a shapesheet only solution.  The one "gotcha" point with the pointalongthepath is the additional connectors are not part of the main shape, and may be added at will.  So, how to assign the PATP formula?

Well, exploiting what I could with V2007, I made a master shape and converted it to a group.  It's the blue meandering line.  To this shape I added 3 control points and made them visible / hidden using the right click context menu.  To the group, I added 3 connector shapes.  Their start is hard coded to a control point.  Their visibility is slaved to the control point visibility.  So, select main shape, move a control point (pretend it's locked to the shape path), and the connector follows along. Select a connector, and the end point can be placed anywhere, and with the pencil tool, the shape of the curve can be altered as needed/desired.

Major downside:  you have to preload connectors and control points in advance.  Perhaps there's an alternative solution...just trying to show what might be.

Wapperdude
Visio 2019 Pro