Inkscape Hexmaps



Making Hex Maps With Inkscape

(Inkscape 0.45x)

I first encountered hexmaps in wargames. I suppose there are various ways of looking at hexes, one method of mapping involves encompassing the entire terrain type within the hex. Of course this may not be particularly satisfying visually. However what it lacks in visual appeal it makes up for in functionality. Movement of the playing counters is controlled by the distance and content of the hex.

Lately I've been more interested in physiographic mapping, in which the symbols on the map are drawn to a scale which reflects the geology of the area. Mountains are higher than hills and so on. This sort of drawing is hard to reflect within the confines of a hex. Literary fantasy maps, and often old maps, use a drawing style which need not be terribly accurate. The view is from the side and above rather than the "top down" aspect usually found in a hexmap. The appeal of these maps is purely aesthetic. However, the rules of a "game" impose order on a map which we accept as necessary.

Having used various software applications to produce maps I've found the primary limitation is simply that the output resolution is typically so low in many of them that it is unsatisfactory when printed out for use. The solution to this is to use a vector art program such as Inkscape to produce the artwork which allows a map to be scaled to any dimension without loss of clarity.

The Tutorial

Using Inkscape is not difficult, however I suppose I do have many years of experience with illustration. If the user is to get the most from the application some learning curve is to be expected. However, the result is worth the effort. This tutorial provides some basic canned art to work with, and shows how to draw some basic elements. It does not fully explain how to use every aspect of Inkscape nor does it explain how to create your own artwork. Those things you'll need to discover for yourself. It will allow you to turn out a relatively useful map quickly, but it does not presume that you will create the most beautiful or artistic map, that is up to the user. The art will grow with experience and time spent.

An Approach

The Inkscape files are based upon Erin Smale's excellent mapping articles and templates. My approach is to draw the land and water elements on separate layers. Since this is vector art, within Inkscape, the underlying "blobs" of colour provide a background for the icons to be applied later on. My intent here is to place underlying colour areas under the various icon types to come later. Forest icons for example would have a unique colour under them, but the area need not be completly covered with icons.

The hexes "snap" together by default. These are set in the document defaults. The snapping causes the lines of the hexes overlap rather than adjoin.

An example of line overlap in Hexes

The following snap settings are the document default:

The grid uses the following settings:

Note that the grid units are set to Centimetres, cm. If you start messing around with this to use Imperial measurements (inches), well, it won't be good...

The basic polygon has been resized to fit exactly to 4x4, 25mm squares using its nodes to snap rather than object boundaries. Note in the following example the outline of the hex seems to overlap the edge of the squares. Grid snap was turned off temporarily to align the tree object to the center of the hex, then the hex and tree object were grouped. Grid snap was turned back on to allow the hexes to snap together properly.

Note: Regarding the design of hexes, the objects, and the hex must fit within 4x4 25mm squares. Think of this as a "block". One layer of each template includes a grid of hexes so the hex itself is not really necessary. However, if one were not using the template the usefullness of having an icon and hex incorporated together becomes immediately apparent and joining the hexes becomes intuitive. The layer of hexes does have value because it can be modified to create different overall patterns for the hex lines, including dots, dashes, line weight, and colours. Thus it is useful to be able to change the overall hex grid without modifying individual icons.

Note: The hex is not a true mathematical polygon. It has been stretched slightly to fit within the 4x4 25mm square in order that the hex lines line up properly. If you draw a hex using the polygon tool from the palette it will not match my hex. When drawing new hexes it is better to start from an icon.

Note: All line weights are in points.

Note: Without the node snap and the grid set properly the hexes will not snap to the grid and to each other.

Select an object with the pointer:

Use Ctrl+d to duplicate it:

Nothing appeared to happen but a duplicate object is on top of the first one. Drag it away with the pointer, and snap it into position. It will "stutter" across the grid as it is moved. Move it into position until it snaps to the grid in the desired position thus:

Notice how the lines exactly overlap:

Note: If you do not see this, the grid and snap are not set correctly so that objects will snap properly.

The hexes are drawn as transparent by default, the intent is to allow background colours to show through under the icons. The icons are on their own layer, Shift+Ctrl+L.

Note that some of the layers are locked, this is intentional! You can click on the lock to unlock or lock a layer. The eye controls the visibility of the layer. To start drawing land change to the land layer which is not locked. Simply click on its layer name. I chose the create rectangles and squares tool from the palette, dragged to create the square, it also snaps to the grid, notice how it is below everything. It has the last colour and line type I used but typically is simply a black line outline with no fill.

With the object selected, choose from the menu object, fill and stroke, Shift+Ctrl+F.

You can find out what RGB colours have been used in objects, and set the line stroke (thickness) and its type (solid, dashed, etc.) In this case we donít' want any line showing through. Choose stroke paint, and click on the X for No Paint.

Change to the Water and Rivers layer. Use the draw freehand lines tool to draw lakes and rivers. Use the Fill and Stroke palette to change the properties of the objects. You don't have to make the shape all at once, you can work with "blobs", by which I mean more than one object.

Additional Objects drawn on the land layer will appear under any water. Typically, I add objects under areas where tree's will appear, swamps, etc. Below is an example of an object, which I have coloured. It looks like a blob of colour. Note that because snap is on, the shape may be less organic than you'd like. Turn snap off temporarily to draw freehand if it is undesired.

The nodes can be selected and the shape modified. using the edit path nodes tool.

move the handles or node to change the shape.

An objects colour can be changed more easily with the inkdropper. , select an object with the pointer. Here I have drawn an island on the water layer, I want it to appear above the water.

Select the inkdropper, and go to the colour palettes just off the page

Click on a colour with the inkdropper to set the fill, shif+click to set the linetype. Most of the colours in the palette have the linetype turned off since we do not want a line. These map colours were sampled from scans old 19th century Russian maps.

Once colour is added and the line is removed it really begins to look like an island. I modify this "blob" so that it looks less rugose and a little more organic.

Press the esc key to de-select an object. Change layers to the Icons Layer. Although the objects are selectable across layers we want the icons we are about to add to remain on their own layer. You can use menu at the bottom of the window if you like.

Select an icon just off the page.

You can copy it, or ctrl+d to duplicate it. Lets use ctrl+d. Nothing seems to happen, drag the object away to the island on the map, and the original will be left behind.

If snapping is turned on, the trees will snap into place properly.

We can duplicate this object and make more inplace.

This could get tedious, so select more icons holding down the shift key.

ctrl+d to duplicate thes and drag away into a new position.

Icons can be placed throughout the map as desired, note how the left bordercovers the icons, this is intentional, but they are still really all there. That is because of the layered effect, one object on top of the other. The border layer is locked so it won't be selected with the pointer while drawing. The fill surrounding the map border covers half of the icons.

Change to the Roads and Trails layer, draw a road freehand between the Castle and the Keep. You can use the Fill and Stroke palette to set the line weight. Typically I change the line weight to points. Type a value 3.0 into the width, and press enter.

Note that I use line thickness in Point values.

TIP: When an object is selected, if you use shift and click on the colour palette at the bottom of the window you can easily set the line colour. When an object is selected, clicking on the colour sets the objects fill.

Note how the road is under the icons. I like it that way.

Switch to the Boundaries Political layer and draw a border between the Castle and Keep in order to show the boundary. It need not follow the hex lines! If you like use the Draw Bezier Curves and Lines tool to draw a nice straight border line. It'll snap to the grid, click to set the initial point, then continue to click where you want each new node in the line, then press enter when done.

I drew it right off the map to the edge of the border, it won't show, and I drew it so that each node is in the middle of a hex, but I could have followed the hexes if I so wanted to. Change the line weight and colour.

I changed the line weight to one point, and to dashes. Note how the border is still under the hex icons.

Change to the Texts Layer. (I've since moved this layer above the icon layer) Use the type tool to add some text, a name for each area. Click on the map and drag to create a box, type some text. Note you can use the menu to set the attributes of the type and may have to make the box larger, using the node at the bottom right, to make it big enough for your text. Click on a colour to set the types colour.

The result, I moved the text as well with the pointer.

Well, not quite what I want, so I select the text, beef up the text to 32 points, add a .5 point stroke, and make the stroke white using shift click on the colours, and change the fill to red, with a click.

Not a bad start to a map. Of course much more is possible and this tutorial is only a beginning. I have not explained how to draw hexes. However the principle is basically that the artwork within each icon is composed of grouped objects which have all been drawn with the tools.

Note: If the user duplicates an icon, moves it, and then ungroups the icon they will see it's component parts.

One of the nice things about Inkscape is that nothing is written in stone and the artwork is changeable. For example see if you can find the additional changes which have been made to the drawing in the following image:

A band of adventurer's may now set out from Balchovia to Fenstril, and follow the road to through Myrtlewood Forest. Who knows what adventures they might have on the way...

Export of Artwork

The point of all this is to finally output the map for use. My personal choice, and preference, is the EPS (encapsulated postscript) format. Many layout programs accept the EPS format and it provides scalable art. Clarity is not lost when the image is scaled.

Artwork that is to be exported to PNG must have it's resolution set; 300 dpi is often adequate, but 600 dpi is nicer. The higher the resolution is set the larger the output file will be. PNG is the default file format. The export box also controls what is exported, choose Page (it will not always open with this setting), and change the bitmap size (pixels at box) to 300 or 600 dpi, click on the Export button and wait.

Here's an example of the icons rasterized and oupt to PNG at various resolutions, 72, 300, and 600 dpi. 72 dpi is the default resolution of Hexmapper.

72 dpi

300 dpi

600 dpi

The clarity of the icons is immediately apparent if enlarged. A 72 dpi image enlarged 800% becomes unclear and pixelated. The difference between a 300 and 600 dpi image is less obvious. However, the difference is tangible if the image is greatly enlarged. The 300 and 600 dpi images are not really the same size because the 600 dpi image contains more pixels which contributes to clarity.

72 dpi 800% view

300 dpi 400% view

600 dpi 200 % view