• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Visio Guy

Smart graphics for visual people




  • Home
  • Hire Me
    • Hire Me
    • Résumé
  • Products
    • Products
    • Bubble Revision Shape
    • Layers to Pages Utility
    • Rack Unit Dimension Line
    • Radial Elements Tool with up to 100 Wedges
    • Text on a Circle Visio SmartShape
  • Index
    • Articles by Date
    • YouTube – VisioGuy
    • Download Information
    • Suggestion Box
    • Shop
    • Visio Art
    • Visio Links
    • – Visio Shapes & Stencils
    • – Visio Templates & Drawings
  • About
    • About
    • Donate
    • GitHub
    • jsFiddle
    • Reading List
    • Subscribe & Follow
      • – E-mail
      • – facebook
      • – Twitter
      • – RSS
    • Privacy Policy
  • Discussion Forum
You are here: Home / Development / When 2D Glue Breaks

When 2D Glue Breaks

June 14, 2007 By Visio Guy 8 Comments

If you’ve used Visio’s 2D glue capabilities, you’ll know it’s pretty neat. Not only can you glue shapes to one-another, but you can get them to snap to a direction as well! However, if you’ve tried to heavily exploit this feature, you might have run into some problems.


It turns out that there is a limitation on the number of shapes you can chain together. On my system, in both Visio 2003, and Visio 2007, I’ve found that I can chain up to 10 shapes together. The ShapeSheet glue-formulas for the 11th shape and beyond aren’t broken, it’s just that Visio leaves them behind when you drag.

Edit: 2008.02.10: The next version of Visio has fixed this problem. Thanks Visio team!

(By the way, we’ve covered 2-dimensional glue in a previous article: Connection Point Directions and Types This post also provided tools for configuring 2D connection points. Have a look!)

Let’s Break Something!

I tested by creating shapes that were simple rectangles, with two connection points each. The left-side connection point was set to Type = 2, so that it would glue to the right-side connection point of a shape to the left. A chain 10 shapes long was the limit. An 11th shape would not follow if the first shape was dragged. The situation looked something like this:

Here we can see that 13 shapes are chained together using 2D Glue. Clicking on shape 11 reveals red handles that indicate it is glued to shape 10.

When 2D Glue Breaks: 11th Shape left behind

When we drag the shape 1, then next 9 follow along, but the glue limitation leaves 11, 12 and 13 behind. If we drag shape 11, then 12 and 13 will still follow along. the glue hasn’t been disrupted.

When 2D Glue Breaks: Glue Breaks

It gets even weirder: if you net-select all 13 shapes, and move the selection, the glue still breaks and 11, 12 and 13 still get left behind! Even though you selected them together! It seems the 2D-glue has some sort of priority over a Selection.

A Possible Solution?

We were recently cleaning out the old Visio Guy Inbox and came across an e-mail that discussed this problem. According to the Visio development team:

There is a threshold of 25 shapes (including sub-shapes) for showing a bitmap image of your selection while dragging. Above this threshold Visio only shows a rectangular outline. Using 2D glue is dependent on the bitmap drag image being available, so there is in effect a limit on the complexity of shapes that want to support 2D glue.

There is a registry key to remove the 25 shape threshold. Set: “HKCUSoftwareMicrosoftOffice12.0VisioApplicationDragBitmap” to “REG_SZ”. The side effect is that you will encounter degraded performance as you drag more complex shapes around.

This quote actually deals with two problems, one having to do with when a preview of a shape is generated. Normally, if a selection has more than 25 shapes (including sub-shapes), then Visio just shows a rectangle while dragging, instead of generating a representative image of the selection. This information is also covered in this post on Visio Insights. And, it seems, the chaining of 2D glue is related to the this drag-preview generation.

We tried changing the registry setting mentioned above from 3 to 2, but it had no effect on the breaking of the chain. It still broke between shapes 11 and 12. The registry setting had no effect for either Visio 2003 or Visio 2007.

Also note, you’ll want to make sure that all Visio settings are shown in the registry by going to Tools > Options > Advanced and check ing “Put all settings in registry”.

We’d like to know if any of you Visio Fans have gotten this to work, or perhaps the Micro-Visites will feed us some some more choice information via the comments-section below…

  • Tweet
  • More
  • Pocket
  • Share on Tumblr
  • Print
  • Email

No related posts.

Filed Under: Development Tagged With: Bugs, Connection Points

Previous Post: « VB Visio Drawing
Next Post: Visio Newsgroups and Discussion Boards »

Reader Interactions

Comments

  1. Mark Nelson (MS) says

    June 17, 2007 at 3:42 am

    Hi Chris,

    As best as I can determine, the reason that 2-D glue breaks after 10 shapes is that it technically relies on a circular reference in the Shapesheet to achieve the result. Visio has a hard-coded limit on the number of recalc iterations it will use when attempting to resolve circular references. This limit is 40, which is a multiple of 10. I have not gotten an exact explanation about the relationship though.

    A second issue with 2-D glue is that you cannot make any shape transform change on a shape using 2-D glue and have Visio preserve the glue. For example, resizing shape #2 in your test breaks the glue, even if the connection points stay right on top of each other.

    Suffice it to say that 2-D glue wasn’t designed with chaining in mind. There are several possible remedies under consideration in the future. The easiest is to crank up the circular reference limit, which could be much higher with today’s CPUs. We might be able to address the break-on-transform problem as well. A more complicated solution would be to redesign 2-D glue.

    I’d be very interested to get scenarios from people that use 2-D glue. Let us know what you are trying to do.

    Mark

  2. zhuravsky says

    July 21, 2007 at 2:09 pm

    Hi all,

    If in your example shapes will contain 24 or more sub-shapes then glue will not work (but with VBA it is still possible glue shapes to each other)
    Denis

  3. Visio Guy says

    July 27, 2007 at 1:01 pm

    Dobrij Djen Zhuravsky,

    The 24 sub-shape number also affects the drag-preview, curiously. If you have less than 25 sub-shapes in a group, then you’ll see the shape when you drag it (Visio generates a bitmap of the shape). If you have more sub-shapes, then you’ll just see a dotted-outline when dragging.

    Nothing to do with glue, but somehow related to this discussion…

    Chris

  4. Barry says

    November 10, 2007 at 4:33 pm

    Chris,

    This issue, along with a couple other 2D glue issues, will be resolved in the next version of Visio.

    Thanks,

    -Barry

  5. UNV says

    July 6, 2009 at 3:24 am

    There’s another issue relating 2D glue:

    I’ve just produced a set of table columns glued together (in the center of column’s left border is outward connection point and there’s inward one on the right side).

    Now I need to extend columns height.

    I’m selecting the first one and resizing – other columns don’t though move glued to the moving connection point. Seems correct though it’s not what I want. Though: the first column rotation causes rotation of the other glued columns.

    Selecting all of them and resizing (using bottom action point): all the columns except the first moves down and forming something like stairs! Completely incorrect.

    What to do? The last test (for artificial intelligence): creating two identical squares: one with 2 inward connection points on the right side, another with 2 outward ones on the right side. Trying to connect both. Of course, it fails – only one point at a time is connected (though they’re perfectly sized and fit). I’ll explain myself: it’s now a common gesture, to use two fingers on multi-touch screen to rotate or resize picture.

    So, I can’t adjust my columns height when they’re glued. This is strange: glued shapes perfectly react to a rotation.

    Visio 2003

  6. Michael Harrell says

    September 19, 2013 at 5:03 pm

    are their any limitations to the number of items clued on a single page? regardless of weather they are glued to each other of not?

  7. Martin says

    November 8, 2013 at 7:16 am

    @Barry: Microsoft didn’t use the elapsed time of almost exactly 6 years to fix this in Visio 2010. I guess their developers have been busy doing “fancy stuff” like ribbons. 🙁
    However, setting HKCUSoftwareMicrosoftOffice14.0VisioApplicationDragBitmap from 3 to 2 worked for me. 🙂

Leave a Reply Cancel reply

Primary Sidebar

Buy Über Rack Unit Dimension Line
Article — Purchase

Categories

Buy my book!

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

Tag Cloud

A/V Artistic Effects BPM Code Connectors Control Handles Countries Custom Patterns Custom Properties Data Graphics Data Linking Data Visualization David Edson David Parker Fill Format Formulas Functions Geometry Gradient Images Links Maps Multi-shapes Network Programming repeating shapes Resources Right-Click Actions Scale Shape Data ShapeSheet ShapeSheet Formulas ShapeSheet Functions SharePoint shiny SmartShapes Sport Sports Text Themes Tools Transparency User-defined Cells Visio 2007 Visio SmartShapes

Top Posts & Pages

  • - Visio Shapes & Stencils
  • - Visio Templates & Drawings
  • Sankey Diagram Shapes for Visio
  • Bubble Revision Shapes
  • Text Along a Connector's Path in Microsoft Visio 2010
  • Dynamic Updating Org Charts in Visio!
  • Amazon AWS Visio Shapes
  • Visio Network Server Shape Icon Customization Tool
  • Audio Visual Components Shapes
  • Visio Circle Arrows 2013

www.visguy.com - Visio Guy - since 2006

 

Loading Comments...