When concatenating paths with the Concatenate plugin, you control the operation by setting distance and angle tolerances, but of course you first select the paths to potentially combine. Sometimes it’s not that easy to choose only the paths you want. After all, simplifying documents with many small pieces is a main purpose of Concatenate.
You can ignore certain paths by hiding or locking them before making your selection, but that task has just become a bit easier. Concatenate v. 25.1.2 adds two options to refine the operation to use only the paths you want concatenated.
One checkbox now lets you limit the operation to only paths that are on the same layer. Another checkbox tells Concatenate to also compare the fill color, stroke color, and stroke width.
If you need even more control over which paths are concatenated, you might try selecting them with SelectMenu (free) or my favorite selection power tool, NitPicker from Hot Door.
I hope these refinements make your daily work faster and simpler.
When concatenating a number of straight paths placed end-to-end, there’s often no need to keep the anchor points that once separated them. It’s also often worth simplifying the path just a little to reduce the number of anchor points. This is especially true if you plan to edit the path afterward. Now Concatenate for Adobe Illustrator CS6 and CC has been upgraded to version 16.1.5 with a setting for merging these straight segments. Even a very small value such as the default of 0.0001 (one 10,000th of a degree) will remove points when combining straight paths that were cut and rejoined. For the most hands-off handling of paths when concatenating, just enter 0 in the settings for curves and straights. This update is recommended for all users.
All Graffix plugins have something in common, whether it’s a module of code to add an About Box, handle preferences, or other functions. All of these shared libraries have had improvements made to them, making the plugins more stable, more reliable, and with better memory management. Every plugin available for CS6, CC, CC 2014, CC 2015, CC 2015.3, and CC 2017 (all 132 variations) now has an update available They’re recommended for all users.
And once you’ve downloaded those updates, you may notice that the read-me doc has been updated, as well, with clearer instructions on where to place the plugin. There’s also a link to the support area of this web site, which has been updated with an FAQ section and will see more frequent and meaningful help topics.
Many thanks to all users who have shared their questions, comments, and observations, which led to these improvements.
We’ve come to pretty much take for granted how quickly plugins work, regardless of the complexity of the calculations and manipulations they may do. Concatenate is designed to handle everyday small jobs, but also take on tasks that simply aren’t practical otherwise. Sometimes imported files can contain many layers and a gazillion paths. Seriously, I’ve worked with files containing over 200 layers and over 2,000,000 objects. Yes, two million paths! I kid you not.
Pre-CS6 versions of Concatenate had a progress bar and could be cancelled if things were moving too slowly, or if you’re just impatient like me. When the developers’ landscape changed with CS6 and CC, there were a few things that took a while to work around, and the progress/cancel feature is now back. The progress bar is nice, but the option to cancel an operation that’s taking longer than expected can be a lifesaver, like an emergency brake, escape pod, ejection seat, or special super-powers when life gets complicated.
Helpful tip no. 1: If you have a very complex file, it’ probably helpful to select one area at a time to concatenate.
Helpful tip no. 2: You can simplify the assimilate process by hiding or locking layers that aren’t relevant.
Concatenate 16.1.1 is recommended for all users, especially those who may forget to save before trying ludicrously reckless things. You can trust me on this…
This is the best version of Concatenate ever (IMHO), and I find it’s a real pleasure to use. This update is highly recommended for all users. “What’s new?” you might ask. First, the two checkbox options are gone. Averaging anchor points is now built in. Why would anyone want short connectors between them? If you do, by all means let me know and if there’s enough demand, I’ll be happy to bring that back. Next, the option to average the control points is gone. I’ve never used it, since the results have never really given results I was happy with. Instead, I added an option to smooth joins between two curved paths by aligning the control handles. Of course, we don’t always want all curves smoothed, so there’s a setting to specify a range within which smoothing will be done. With a setting of 0, only paths that are already perfectly aligned will remain perfectly aligned. I.e., nothing changes. You could enter a value up to 180 degrees, in which case every curved join will be smoothed. You can set this to any setting that gives you a satisfactory result.
A couple of under-the-hood changes that allow the plugin to run faster are less obvious. Most significant is a change that makes Concatenate smarter about which paths to consider for assimilation, which also solves a problem of occasional benign errors and their pesky dialogs, most noticeable when layers are hidden.
But wait, there’s more to come! Concatenate is often used with very large map or CAD files, and when it’s evaluating tens, or even hundreds of thousands of path segments, operations can take much more than the almost instant results we’re used to. For those situations, a progress bar will be added soon.
If you have observations about this update or ideas of any way Concatenate or Assimilate can be made better, please let me know. Remember, I’m an illustrator like you and, as Red Green used to say, “We’re all in this together.”
It’s hard to believe it was 20 years ago that I first wrote the Concatenate plugin to join lines from imported CAD files. In all these years, Concatenate has never seen a price increase or a charge for a compatibility upgrade. Since the CS6-CC version is completely rewritten for Illustrator CC from a new library, it will be treated as a new product, but at the original 1997 price. Improvements are already planned for it so updates are imminent, but since it’s as functional as the original it seems best to make it available to people to add to their CC toolset as I’ve added it to mine. For a limited time, you can take advantage of a 50% discount with the coupon code shown on the product page.
Other plugins will be arriving very soon, as well.
Thank you for your support and encouragement over the years!
Every plugin I’ve written has a story, or more specifically, experiences in using Adobe Illustrator when I’ve thought “Gee, if one could only…” and so in 1993 I wrote Concatenate to address a frequent dilemma.
If you’ve ever imported CAD files or GIS data for maps, chances are your first reaction was something like “wow, there’s a lot of detail here, it’ll save me a ton of time!” But once you started working with it you probably had some reservations, thinking “Oh no, this must be made up of a gazillion tiny pieces!”
That’s what I thought when I started working on maps like this one of the Twin Cities for an article by Steve Glischinski in the December 2003 issue of Trains magazine. The image on the left shows USGS (US Geological Survey) data imported into Adobe Illustrator via Avenza’s MAPublisher plugin. Here I had imported data for streets and highways, railroads, and inland waterbodies. It looked much more like a map once I simplified and colored it with the help of my Concatenate plugin.
As this image of small-town streets and highways here shows, GIS data is similar to imported CAD data in that it’s made up of many short paths laid end-to-end. Generally, the paths end at every point where they meet or cross another path.
By selecting one or more paths, I used Concatenate’s Assimilate function to join the paths whose endpoints were within 0.25 points apart and within 10° of tangent. By adjusting this setting, I could control which paths were concatenated, restricting it to those that formed a fairly straight line. A second pass concatenated the other side of the divided highway. Now this main road can be given a prominent style and the secondary roads made lighter and/or thinner.
As you can see in the top right image, the inland lakes were stroked and filled with blue. Most of them are already joined as closed paths with occasional cleanup, but the rivers had to be concatenated into longer paths which I then applied Illustrator’s Object > Path > Simplify function on (usually set to curved lines between 97-100% accuracy). Hiding other layers helped eliminate visual clutter as well as restricting selections to the paths I needed to work on. The many streets made the city railroad map use more memory and storage than was really needed, so I used the Concatenate plugin on that, also, again starting by concatenating lines within a few degrees of tangent, then selecting and concatenating again with slightly larger values. Finally, I simplified the paths to remove excess points so that the street grids became what they appeared to be, longer streets that simply crossed each other. This becomes especially important when creating art for digital media, since low-power phones and tablets have to draw every line if the art is left in vector format.
So, where is Concatenate for CS6 and CC now?
Concatenate is currently in beta testing and coming along nicely. I use it myself regularly at my day job, and today worked on refining the Assimilate function. It’s available to testers now and should be released soon.
In its public debut, the plugin will likely be missing the ability to record it as an Action, but I felt users who rely on it would prefer earlier access and a few free updates as I restore original features and add some new ones, as well.
You can expect versions for CS6, CC, CC 2014, CC 2015, CC 2015.3, and CC 2017, in addition to Mac OS X and Windows 32- and 64-bit versions. I’d like to thank our friends at Hot Door for providing the tools that made these newer versions possible.