Mapping

I continue to look with much interest in the oft-advertised Northwoods Mapping on Facebook

I continue to look with much interest in the oft-advertised Northwoods Mapping on Facebook. This business makes custom farm, hunting, and property maps, printed and sells them over the internet. All of them pretty much use public, copyright-free data, namely state or federal (NAIP) orthophoto aerial imagery, and USGS 3D elevation program LIDAR bare earth data. I don’t know if they use a commercial ERSI product or the fully-open source QGIS program to make the maps, but there is nothing couldn’t be done with free software.

Their prices are quite reasonable – they might seem high at first glance – but it would actually be hard to undercut if you want to make any money for your time designing, laying out and printing maps. Large-format, full-color printing is expensive for small runs. I know I have printed a few large-scale maps, and the printing can easily set you back $50 or more. Add in the cost of high-quality paper and lamination and it really adds up. For example, the 24″ x 36″ HD Laminated Map that they charge $89 for probably nearly half the cost is printing and lamination. Maybe a little less, especially if you do a lot of business with your printer — but custom print jobs are expensive.

So that leaves you with $45 for everything else. As a small business, there are a lot of costs including taxes, marketing, web hosting, and possibly trying to recover some of your cost of using the computer, internet, and so forth. That ignores benefits or other expenses – they probably rely on a regular job for that. Then figure an hour of labor, and you can figure out the cost. Yes, it’s a job you can do from home, and basically anywhere you have an internet connection. But hardly free, despite the data and software free to use and put together.

It doesn’t take long to make a map with QGIS, especially with using Web Mapping Services, that automatically download the imagery for the scene you need into your QGIS client. But no one map is exactly the same, and while you can save the layout, often it requires fine tweaking to get a quality map out of every scene. Labels often require manual placement, the contrast and saturation of map adjusted for that perfect look. Adjustments to scale, additional data to hand-digitize. Plus time going back and forth with the customer to get them a product they are happy with before it goes to print shop. Probably an hour or more time, to get something that is really good quality, that somebody would pay for. It takes years of knowledge working with maps to build really good quality products.

The more time you can spend working on a map, the higher quality. Often revisions take a lot of time — sometimes the maps I post on the blog aren’t always the best quality, but that’s because they are done quickly and to experiment with new parts of QGIS. But it’s neat that they’re able to make a life in the great wilds of northern Minnesota, in a beautiful small town, the home of the Blue Ox, piecing together map making over the internet, and whatever else they do to sustain their family.

While I have done a handful of mapping projects for pay, I don’t really have a connection with a print shop. Most of my projects are done an as volunteer basis, continuing to learning the ins and outs of the software. Every map I put together is teaching me important skills, and I continue to learn the skills to make better and prettier maps. But I think it’s an interesting business opportunity, and if I learned more about print shops and shipping, along with all the other skills needed to operate a small business, it could offer future possibilities. People have certainly asked if I could provide them with that kind of printed map before — but I just don’t have that kind of connection with a local print or shipping shop.

How to Add LIDAR Hillshade to Your LeafletJS Map

How to Add LIDAR Hillshade to Your LeafletJS Maps

Using the 3DEP Hillshade and some CSS3, it’s quite easy to add beautiful, LIDAR-generated hillshade to LeafletJS Maps.

A few things to note …

  • This is not mobile friendly, as it uses a lot of CPU for the mix-blend-mode, so you may want to disable for mobile browsers
  • Areas without hillshade (e.g. the ocean) are shown as black, so you won’t want to use this for large scale maps

Here is a simple example of how to do this with NY Aerial Orthophotography:

<html>
  <head>
    <title>Example</title>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
    <meta charset="utf-8">
    <style>
      html, body, #map-canvas {
        height: 100%;
        margin: 0px;
        padding: 0px;
      }
     
     .lidarBase {
		 filter: brightness(140%) contrast(100%) !important; 
		 // this filter raises brightness and contrast for better appearance
	 }
      
    .baseLayer  {
		mix-blend-mode: multiply !important;
		// usually a nice way to blend the hillshade with the overlay
	}
	
	.nyAerial {
		filter: saturate(150%) contrast(110%) brightness(130%);
		// enhance colors a bit
	}
    </style>

    <link rel="stylesheet" href="https://unpkg.com/leaflet@1.6.0/dist/leaflet.css">
    <script src="https://unpkg.com/leaflet@1.6.0/dist/leaflet.js"></script>

  </head>
  <body>	  
    <div id="map-canvas"></div>
          <script>
          
var nyAerial =	L.tileLayer.wms(
	'https://orthos.its.ny.gov/ArcGIS/services/wms/Latest/MapServer/WMSServer?', 
	{ layers: '0,1,2,3,4,5', 
	attribution: 'NYS High-Resolution Color Aerial (Winter 2015-2020) - <a href="https://gis.ny.gov/">NYS Geographic Information Services</a>', 
	className: 'nyAerial',
	maxZoom: 21 });

var lidarBase =	L.tileLayer.wms(
	'https://elevation.nationalmap.gov/arcgis/services/3DEPElevation/ImageServer/WMSServer?', 
	{ 
		layers: '3DEPElevation:Hillshade Gray',
		className: 'lidarBase',
	}
);

var map = L.map('map-canvas', {
			center: [42.37348470, -76.88088670],
			zoom: 17,
			layers: [lidarBase,nyAerial]
		});
		
</script>
</body>
</html>

Here is the produced map with this code:

Why so many maps?

Why so many maps?

Well for one, I am really loving how easy it to make interactive maps with Leaflet, and I keep hacking away at the code to improve presentation and meaning. I really enjoy exploring the land surface and use of land, and there are seemingly endless places I can explore and share on the blog. Plus, with once the code is written, creating new leaflet maps is easy enough – just scroll and feed the coordinates into the system, and it is displayed.

Running out of web maps

Running out of web maps πŸ•Έ

I concede at some point I will run out of places to tell stories about and make up web maps. But truth be told it’s pretty easy and there are so many interesting places to spot light that I don’t think it will happen right away.