Friday, December 12, 2014

Feature Week: Print to KMZ

I've received a few emails asking where the KMZ link in the left bar went.  It's been replaced by a print-to-KMZ option:

Why?  Because instead of just map layers, KMZ exports can now have markers and lines "printed" on them.  These are not traditional KML placemarks - for that, use the standard Export option.  Instead, they're rendered as graphics along with the map.  This can look a little fuzzy in Google Earth:

However, it really shines when used as a Garmin custom map.  You can draw far more lines on the map than most GPSs can handle as tracks or routes, and it allows you to create more colorfully marked up GPS maps.  Example screenshot below:

Thursday, December 11, 2014

Feature Week: Bulk Operations

If you've ever wanted to change the color on a number of lines at once, the new bulk operations feature will nicely complement folders.  The Markers and Shapes boxes, along with folders, now have a Bulk Ops link at the bottom.

Bulk operations can only be run on one object type at a time, so if you click Bulk Ops on a folder with both Markers and Shapes, you'll have to choose.

Once that's done, you'll see a full page dialog listing each object with some options at the bottom.  Click or shift-click to select a group of objects.

The Print Individual Maps option is only available for saved maps.  It will open a multipage PDF in a new browser window, with one page per object.  Each page is automatically centered on the object and scaled to fit, with a minimum scale as specified.  The default is 1:12k, which strikes a nice balance between capturing small map details and not losing context.

Change Attributes will bring up a second full page dialog, similar to the object's details dialog.  All fields start off blank, any changes made will be propagated to the selected objects.  Beyond setting marker and line styles, you can move objects between folders en masse.

Delete Objects will obviously delete the selected objects, although not without bringing up a confirmation window.

Wednesday, December 10, 2014

Feature Week: Folders and WYSIWYG Printing

Over the years I've had a number of users ask for a way to organize markers, lines and polygons within a map.  There have also been requests for a way to print only some objects, or to print markers with labels and shapes without, and so on.  Today's post covers a new way to do just that: folders.

Start by adding a folder to the map the same way you would any other object: right-click on the map background or click + Add New Object in the left bar.

The details dialog for markers, lines and polygons now has a folder dropdown.  Choose a folder at creation time, or move objects between folders the same way you would set any other property.

Individual folders will show up as boxes in the left bar alongside other object types.  Objects without folders will remain in their object type box, e.g. Markers.

As with the Markers and Shapes boxes, you can use the checkbox to show or hide all objects within a folder.  If you want to hide labels for a folder, perhaps because they're too noisy, the settings box now has a third, custom label option.

When set to "some", each folder gets a label toggle at the bottom.  Click on it and "Labels Shown" will change to "Labels Hidden".

Alongside these changes, printing has moved to a what-you-see-is-what-you-get (WYSIWYG) model: what you see on the screen is what you get when you print a map.   If an object is visible when you click print, it will show up on the print.  If it's hidden, it won't.  If it has a visible label, that label will show up on the print.  If the label is hidden, it won't.

Because this requires a form POST, I can now only offer the "share or save this configuration" link for a blank map, not one that has objects on it.  However I think the extra flexibility when printing is worth the cost.

Monday, December 8, 2014

Feature Week: Automatic Syncing and Collaboration

The past several weeks have seen significant behind-the-scenes performance upgrades to CalTopo, including mass migration of lines and polygons to a more efficient storage format.  Some of these changes were not without risk, so if anything looks off, please don't hesitate to let me know.

Only time will tell, but it looks like I'm out of the woods on performance work, and that has allowed me to roll out some long-deferred changes.  To celebrate, I'm going to run a series of posts highlighting new features.  The first one is automatic syncing and collaboration.

Without running afoul of trademark law, I've often tried to describe CalTopo as being like "Google Docs for maps".  While not as fully featured as a desktop program, from the beginning it enabled collaborative sharing and editing of maps in a way that simply wasn't possible with software like Nat Geo's now-discontinued Topo!.  However, for performance reasons, true Google Docs style "everyone sees all changes instantly" editing remained locked behind an optional checkbox in the sharing dialog.

No longer.  Starting now, saved CalTopo maps will automatically pick up on changes as they are made by other users.  Unlike Google Docs, there will still be a bit of a delay - from 5 seconds for actively edited maps up to 30 seconds for maps that have not been changed in the last 10 minutes.  After a couple weeks I may be able to dial this down depending on server load.

So how do you start this shared editing?  Time for  a quick refresher.

  1. The map needs to be saved (URL ends with /map?id=ABCD).  If you're working on an unsaved map, click the red Save link at the top of the left bar.
  2. Click Share.
  3. In the permissions dialog that comes up, either give write access to all users who know the map's URL, or set a password and give write access to users who know the password.
  4. Send the map's URL (e.g. to a friend.
  5. If you set a password, they will need to click on the Share link and enter it.

That's it.  Happy collaborative editing.