Allowing Shapes to Connect in Certain Locations

Started by ccowman, January 22, 2014, 08:59:00 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

ccowman

Hi everyone,

I have a rectangle with many connection points all around the rectangle preset (width*.25, .5, etc., same for height).  I have a bunch of other shapes the user can potentially add to the diagram and attach to the rectangle (for example, shapes A-H).  Is there a way to only allow shape A to be attached to the upper left of the original rectange? And shape B to the upper right?  Etc.  I have Tips setup for each of the corners, but the user most likely won't hover long enough (or care enough).  Please let me know if there are any thoughts on the possibility of this.  Thanks!

wapperdude

There is no built-in functionality that does what you want.  But, there might be some "tricks" you can try that would, make it obvious that the shape has been placed in the wrong spot.  (It will still glue, though)

You need to open the shapesheet and "play" with the DirX/A and DirY/B settings of the shapes.  Assume shape1 is the main shape, and shape2 should only attach to the upper right corner.

1.) If all of shape1 connections are "inward", then, only make the desired shape2 an outward.  This will limit the connection to this connection point.

2.)  For shape2, you might set DirX/A to something like -10000, and DirY/B to +1.
3.)  Then, for shape1 try various settings for the connection points.  The -10000 is necessary to get the correct amount of shape2 rotation (orientation).  The goal would be that shape2 only shows the correct orientation when placed on the desired shape1 connection point.  All other points would produce goofy orientations.

4.)  Then for shape3, you do something similar, only, I think you need trial and error to get unique values.

This isn't elegant, but, it's the only thing I can see trying short of writing a macro.

Have fun.
Wapperdude.
Visio 2019 Pro

vojo

I assume the basic assumption is that the user is too clueless to use the shapes appropriately

As stated, no automated way to do this.

You could look at little symbols at the various connection points (sort of like the old kids clothes system - geranimals)
   - diamonds should connect to diamonds
   - circles to circles
   - etc