May 23, 2022

Changelog: May 23

Welcome back to the Placemark changelog! Since last time, we've implemented plenty of features, fixes, and general improvements to make Placemark the best way to make maps.

What's new

  • Improved TopoJSON support: each object in the TopoJSON file now becomes its own folder in Placemark. TopoJSON supports a primitive idea of grouped features, known as objects: for example, a TopoJSON file for the political boundaries of the United States might contain national, state, and congressional boundaries in their own groups. In the latest Placemark, these become folders when they're imported.
  • You can now convert MultiPolygons into lines. We've always supported a lot of different geometry operations - transforming polygons into lines, lines into points, points into convex hulls, splitting and joining features, you name it. This one completes the set.
  • You can now drag multiple features in the tree panel. The left panel in Placemark, which shows the structure of your map's features and folders, supports some more operations. You can select multiple features in the panel and drag all of them into a new position or drag them into a different folder. The same goes for other "multi" actions in the left panel: if you have multiple features selected in the list and you right-click, you can now delete or modify all of them with the right-click menu.
  • Drawing new features places them in the current folder. This was a much-requested feature: if you have a feature or a folder selected, and then you go to draw a new one, that new feature now ends up in the folder you'd expect - the one you previously had selected. It's hard to explain, but if you've noticed this you'll get it. Placemark is now smarter about where it puts new features.
  • Performance! Sparing the long technical write-up, the core of how Placemark handles data has been rewritten with performance in mind. You should notice this especially with large datasets: previously we'd have to load a lot of data every time that a small change was made, but now it's much smoother. Performance is a forever task, so this is just one step toward the goal of buttery-smooth performance always.
  • Open source updates: the toGeoJSON, toKML, and check-geojson JavaScript modules that we sponsor have all been updated to support Node.js's native ESM module system.
A Placemark map on a phone, sitting on a table
Placemark on a phone!
  • Improved mobile support. Placemark works on phones! As part of the last design pass, the layout on phones, or extremely narrow computers, has been improved so that you can edit and browse data while on the go.

Screenshot of the geospatial file format table
File format matrix

Check out the new file format matrix, which pulls together a lot of information into one easy spot. It covers all of the file formats currently supported by Placemark. The idea for this came up because of the surprising diversity of geospatial formats. At one end you have something like the Polyline format, which can store a single line geometry only - no attributes, no styles, nothing else - and at the other you have something like KML, which supports all geometries, hyperlinks, descriptions, styles, flight paths, you name it. Other formats, like GPX, are used heavily in their field, like fitness trackers, but rarely used for anything else.

Bigger isn't better, though. Complex formats like KML and - we haven't implemented it yet, but GML - suffer from their complexity, and can be especially hard to use in web applications. Formats like GeoJSON are a great middle ground, and there are new formats trying to combine the best attributes of the existing ones.