Dia — Joining Lines where they Cross over Each Other

Written by James McDonald

August 5, 2010

Dia is a great Open Source diagramming program that has extensive `shape’ libraries for a lot of different applications (I use it for drawing network diagrams and flow-charts).

When using Dia one of the questions that arises fairly regularly is:

Is it possible to create a node at line crossing points? or at arbitrary position on a line?

The short answer is no.

In Dia you can’t join lines where they cross. Lines do have connection points by default. When you create a Line you get a Connection Point on both ends and one in the middle. When you right click the Line and add another Connection Point all the mid-line Connection Points are relocated so they are equi-distant along the line. You can’t join a mid-line connection point to another mid-line connection point. You can only join a line-end Connection Point to a mid-line Connection Point.

So to get a node at a line cross over point you need another technique. The answer was succinctly put on the Dia users mailing list:

Go to the “electric” symbols and find the crossed-wire terminator dot.
Use this at the end and/or start of a line to make a node that can be
resized and can be used to terminate lines or symbols. Other things
will snap to this node symbol.

Here is a graphic showing the use of the “Electric” shapes libraries “Connection Point” shape

Dia gaphic showing how to join lines

Dia – Joing Lines

The Dia Manual may help you too.

2 Comments

  1. Anoymous

    Thank you for sharing that technique — just what I needed; way cool!

    Reply
  2. thanks!

    Thanks for this, really useful. I’d never have found it otherwise!!!

    Reply

Submit a Comment

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.

You May Also Like…

Clear HSTS Settings in CHrome

Open chrome://net-internals/#hsts enter the domain in the query field and click Query to confirm it has HSTS settings...

Ubuntu on Hyper-v

It boils town to installing linux-azure # as root or sudo apt-get update apt-get install linux-azure...