7

I have been using Inkscape for some months now to edit and maintain a transit map of San Francisco. For the most part I am very comfortable editing paths, removing and adding nodes, snapping to grids and objects and the like . . .

But what I have yet to figure out, is how to bring multiple lines together, in parallel, either stuck together along their edges or separated at a constant distance, like railroad tracks.

One technique would seem to be to create a wider path objects beneath a narrower path object, then snap their nodes together, to create a path with an outline, but I would really like to combine two or more lines in parallel, as you often see on transit maps. If anyone can shed some light on my desire, I owe them a cookie!

2
  • The technique you mention in your 3rd paragraph sounds elegant & effective. Is there a particular reason why you need 2 parallel paths instead of 2 overlapping paths? They will appear identical to the end user (unless you need transparency in the middle).
    – Farray
    May 10, 2011 at 14:16
  • In practice, I have adopted the layered lines technique proposed in the question. The only "shortcoming" would be that if two sets of parallel lines joined, the lines in the inner angle would be clipped at the intersection.
    – dannyman
    Aug 19, 2011 at 17:43

3 Answers 3

6

I've been hitting my head against this problem for two years as I've built and maintained a transit map of my own. Here's a Link to forum posts about my example.

The whole thing is an elaborate arrangement of parallel lines of varying widths stacked on top of each other as well as parallel lines needing to be spaced apart an equal width.

The best way I've found to manage such a layout is to snap things to hand-placed guidelines or to a very fine grid parallel to the lines.

The problem with the fine grid approach (it needs to be very fine if you want to maintain consistent line width AND have your lines appear to be touching) is that over any significant distances it's very easy to lose track of the grid and let your lines shift a little off the set of regular angles most transit maps use.

That's where the 0, 45, and 90 degree grid lines come into play.

It's messy and still hard to maintain, but it has been the best I could do without a "snap to line edge" feature or something like that.

Here's an example of what I achieved with this method:

Cincinatti Transit Map Example

2
  • 2
    Not so much that you've solved the problem but your transit map is a huge turn-on. :)
    – dannyman
    Aug 14, 2014 at 19:25
  • too bad link doesn't work anymore Nov 29, 2020 at 18:40
6

So far, the "best" way I have found is the "Stroke to Path" technique here:

http://tavmjong.free.fr/INKSCAPE/MANUAL/html/Paths-Creating.html#Stroke-To-Path

Unfortunately, the transformed paths, while pretty, aren't practical to manage. So for a transit map I think I would:

  1. Create a layer for the rail paths.
  2. Lay the rails out as solid-line paths.
  3. Copy the rail path to a new layer.
  4. Toggle visibility of the original rail layer off.
  5. On the new layer, select all objects, and apply the "Stroke to Path" technique.

Then, if I need to revise the map, I can update the rail path layer, then delete and re-create the "Stroke to Path" layer.

I'll leave this question "open" for a better solution. :)

0

I'm unfamiliar with inkscape but it seems like a simple grouping of the two lines could help you. This way they are united without being one closed object. this, however is not practical if you wish to scale since the distance between the lines gets scaled accordingly, too. A least it is useful for moving entire roads etc. It could also prove useful to nest the groups.

In illustrator you can create patternbrushes where you can define a graphic that gets applied to the line. This graphic could be that of two parallel lines at a set distance. This enables you to change the trayectory of the road/railtrack-path without affecting the road width.

2
  • 1
    Thanks. It turns out, Inkscape doesn't support brushes yet. You can apply a path to another path, but I can't get this to create parallel lines.
    – dannyman
    Apr 1, 2011 at 21:09
  • 1
    oh. sorry to hear this. I´ll research some more next time
    – leugim
    Apr 2, 2011 at 3:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.