Publishing Cartographic Quality Maps
Though we are normally more focused on dynamically rendering digital GIS maps and projects in the most efficient manor, occasionally we are asked if TatukGIS products can be used to generate professional quality maps in compliance with established cartographic specifications, such as for high quality printout. The answer is, yes.
As a proof of concept, TatukGIS recently designed a highly detailed map project (as a *.ttkproject file) reflecting specifications published by the Poland National Office of Geodesy and Cartography (Główny Urząd Geodezji and Kartografi, or GUGiK). Upon opening a raw shapefile spatial dataset for Poland (also provided by GUGiK) into that project, the result is a beautiful, near professional cartographic quality, electronically generated map of Poland. When printed to a PDF file or using a professional quality printer, the result is equally impressive. See the nearby images and PDF image download link.
The GUGiK map specifications are Poland specific, however not so different from cartographic map specifications established by similar bodies in other countries. The purpose of this exercise is to demonstrate possibilities so anyone wishing to implement such detailed specifications using TatukGIS software can take comfort that, with a some effort to set up a corresponding map project, it is possible. (Alternatively, for a fee, a customer may request TatukGIS to design a custom project to their unique specifications.)
The desktop TatukGIS Editor used to create and display the project and
export the map in full quality to a PDF image.
Map of Poland (with legend, north arrow, and scale) after export to PDF and opened
in Adobe Acrobat Reader. Click here to download this PDF image file.
Closer view of a portion of the PDF image. Topographic lines are visible.
The GUGiK specifications presented a number of challenges, all which were achieved using features of the TatukGIS visual layer properties control. The following examples highlight some possibly little known, but valuable, features of the layer properties control (and tips on how to use the features).
The GUGiK specifications require road classes to be rendered on the map as appear below.
Because the dataset consists of all road vectors contained in a single shapefile, we isolated the different road classes into layer sections by using SQL queries against road class feature attributes contained by the shapefile.
SQL query definitions used to render each road class differently.
Each road class is rendered with its own symbology and/or style, which can be applied uniquely to each layer section by selecting appropriate line parameters. For example, the “Highway” road class must be rendered as a 0.2mm width white line with a 0.4 mm width purple outline.
Note that the GUGiK specifications define line widths in terms of millimeters on the resulting map printout. The way to achieve this using the TatukGIS layer properties control is apply negative values for width, size, etc., (done by adding a minus sign).
In the next few images, a small portion at the top taken from the GUGiK specifications illustrates how the road class must appear on the map. The larger portion of the images presents how the specification is implemented in the visual layer properties control.
Applying widths to a line and to its outline.
The specifications for the “Highways under construction” road class require a slightly modified line symbology. This requires using the Line Symbology Editor, a built-in feature of the TatukGIS Developer Kernel and Editor products, to implement regularly spaced gaps along the line. The Line Symbology Editor enables almost unlimited line style possibilities (polygon outlines as well). Learn more by visiting the Extended Line Symbology topic in the online DK documentation.
The next image presents settings in the Line Symbology Editor to correctly render the line gaps. A few steps are required to apply the line widths:
- set Line Width to –1mm, to treat 1mm as the reference width,
- set “W” unit in the Line Symbology Editor - "W" means measurement unit expressed as one-tenth of the line width,
- using the above settings, define measurements by multiplying the required value in millimeters by 10, e.g., a 2.5mm gap is represented as 25W.
Line Symbology Editor. Each color associates an aspect of the style specification
(visible at the top) with the code snippet used to achieve it.
The next image presents implementation of the GUGiK specification for railway lines.
Railroad lines designed in the Line Symbology Editor. Colors identify each
style aspect with the code snippet that achieves it.
The Line Symbology Editor can be used also to custom define polygon outlines. As presented in next image, GUGiK specifications require the country boarder to be drawn as a line with a one-sided ribbon. Same as in the example above, 1 millimeter is used as the reference width and the “W” unit is applied.
A polygon outline with one-sided ribbon defined in the Line Symbology Editor.
Area Fills and Outlines
A majority of the polygon features representing land use areas, such as urban, forested, cultivated, grass vegetation, water, etc., require only simple fills, some with an outline and some without.
Some polygon areas, however, demand more sophisticated styling. The following image shows implementation of the fill specification to represent wetland areas.
Unique fill creation to represent wetland areas.
Because the GUGiK specifications are designed mainly for generating static maps for print out, it should be noted the resulting project is very complicated and, therefore, renders slowly. Furthermore, the specifications are optimized for presentation at a specific scale, in this case the scale appropriate for a country-wide map of the territory of Poland.
The spatial dataset used for this project is available for anyone to download from the Poland government's geospatial data portal at https://www.gov.pl/web/gugik-en. The GUGiK cartographic map specifications used for this project are published and available to anyone, though in Polish language only.