MakeGPX, A GPS Waypoint *.GPX File Creator MakeGPX.exe is a software utility used to create a comprehensive set of waypoints for handheld GPS units to demark routes, and often routes with numerous alternative paths. Most frequently these waypoints follow a circuitous path with turns and curves and decisions points. Not only does this utility mark where these decisions occur, but it also creates a quick reference guide for use in conjunction with a GPS, called a Take-Along Guide.
The Take-Along Guide provides quick reference of directional and other information, a sample guide from England's Coast to Coast path is illustrated to the right. MakeGPX creates a PDF for double-sided printing which is expected to be plastic laminated and then cut into convenient-to-carry sized slices. The Take-Along Guide identifies a waypoint ID (WP) with accumulated Miles or kilometers (KM), GPS coordinate in the prevailing units (such as OSGB for England), Elevation, percent (%) grade, and a short Description. Waypoint IDs are prefixed with a letter followed by number (generally 3 digits), and this prefix is used to identify different paths or features along the route. For the Coast to Coast route, four prefixes were used: Cxxx demarked the primary path as historically walked by Alfred Wainwright, Axxx and Bxxx demarked common alternate paths such as to Saint Sunday Crag or to Helvellyn, and Pxxx demarked points of interest such as St Bees Lighthouse. While using the GPS, different visual icons are coordinated with the waypoint ID prefixes. So for the Coast to Coast a red-flag icon identifies the primary Cxxx path, a green-flag for alternate Axxx paths, a blue-flag for alternate Bxxx paths, and a red-pin for points of interest. About the Files:
Change Information: The following change information primarily identifies support for various country specific grid systems. The program originated to support a walk of England's Coast to Coast. Subsequently, the Irish grid was added. The author has intentions to support UTM and New Zealand's grid systems. For the adventurous, the author will provide the source code if the user intends to add another country specific grid system to the utility for ultimate publication on www.wildtramper.com.
Usage: MakeGPX is a MS Windows command line utility. Entering makegpx in a cmd.exe window yields: c:>makegpx Usage: makegpx [options] WayFile Creates a WayFile.gpx file (with the -g option) for use with a GPS and/or a PDF Guide WayFile.pdf file (with the -p option) and/or a report WayFile.rpt file (with the -r option) from a text WayFile. The input file may contain numerous directives. Use extended help for more information. Options: -? - Extended help -g[=f] - Output GPX to file 'f' or WayFile.gpx if 'f' not given -p[=f] - Output PDF guide to file 'f' or WayFileGuide.pdf if 'f' not given -r[=f] - Output tabbed report file 'f' or WayFileReport.txt if 'f' not given Version 1.5 Wildtramper.com, Copyright (c), All rights reserved To use MakeGPX, you must supply a text input WayFile. This file contains several directives at the beginning followed by an ordered list of waypoints. The waypoints are space/tab delimited consisting of {WaypointID WGS84_Longitude WGS84_Latitude [OptionalElevation] Description}. A snippet of a text WayFile might look like: | Directives #SYM.P = Pin, Red | Points of Interest #SYM.A = Flag, Green | Alternate path A #SYM.B = Flag, Blue | Alternate path B #SYM.C = Flag, Red | Main/primary path #SYM_RULE.P = RULE_NONE | Don't accumulate distance #SYM_RULE.A = RULE_CONTINUOUS | Accumulate distance within A-path #SYM_RULE.B = RULE_CONTINUOUS | Accumulate distance within B-path #SYM_RULE.C = RULE_ALL | Accumulate all C-path distance #GRID=OSGB | England?s OSGB grid #DISTANCE_TWEAK = 1.0947854 | For a C2C total distance of 190 miles #TITLE=Coast to Coast | Waypoints follow: | ID WGS84 Lon WGS84 Lat Elev Description C001 54.489844 -3.604649 8 St Bees - Start of C2C P001 54.491263 -3.584923 53 Fleatham House, St Bees C002 54.504526 -3.629874 23 Fleswick P003 54.513583 -3.636925 89 St Bees Lighthouse C003 54.517269 -3.637381 57 Bear R, follow coastline C004 54.523124 -3.613724 97 Quarry bungalows, head S Comments may be inserted anywhere and are demarked with the vertical bar |. Directives (described in detail below) are demarked with the pound sign # located in the first column of a line. Although there are many directives, only the #SYM.?=, #SYM_RULE.?=, #GRID=, #DISTANCE_TWEAK=, and #TITLE= are expected for all WayFiles. The remaining directives primarily control the formatting of the PDF Take-Along Guide, and their default values are normally used. MakeGPX has a few command line options: Option -g generates a GPX file, option -p generates a PDF Take-Along Guide file, option -r generates a text report file, while option -? outputs extended help. The extended help is: c:makegpx -? Usage: makegpx [options] WayFile Options: -? - Extended help -g[=f] - Output GPX to file 'f' or WayFile.gpx if 'f' not given -p[=f] - Output PDF guide to file 'f' or WayFileGuide.pdf if 'f' not given -r[=f] - Output tabbed report file 'f' or WayFileReport.txt if 'f' not given Utility makegpx.exe creates a GPS (*.gpx) waypoint file from a text WayFile of repeated lines of <<<ID Lat Long Elev Desc>>>, where: <<<ID>>> is a unique ID of the form a AlphaCharacter followed by a number (which may contain a decimal point). The AlphaCharacter is used to segregate different waypoint symbol groups. e.g. Cnnn (e.g. C001, C057, etc.) might be used to identify the primary Coast to Coast Path waypoints, while Annn or Bnnn might be used to identify alternate 'A' and 'B' path waypoints, and Pnnn might be used to identify points of interest waypoints. <<<Lat Long>>>> is WGS-84 latitude and longitude of waypoint. <<<Elev>>> is the waypoint elevation in meters - this field is optional. <<<Desc>>> is short description, generally nor more than 30 characters. Additionally, makegpx.exe generates two supplemental files: A Report file and a Take-Along Guide file. Both of these supplemental documents require numerous directives to function best. The Report file is a tab-delimited, text file (suitable for import to Microsoft Excel) which lists lines of: <<<Item# WP-ID WGS-Lat WGS-Lon Elev OSGB-Grid Miles Grade Description>>> The Take-Along Guide file is a PDF table formatted into multiple 2 inch wide columns that is expected to be double-side printed, then clear-plastic laminated, and finally cut into column widths. These laminated column slices then become a convenient waypoint reference to take along with a GPS on your walk. Using default parameters generates convenient-to-carry sized 2 inch wide by 5 inch tall guides. As many as 16 guide slices can be output to single double-sided printed 8-1/2x11 inch paper. Both the Report and Take-Along Guide expect various directives. Directives are placed at the top of the text WayFile, and must begin in column 1 with the # character. Directives not specified revert to their defaults. The use of the vertical bar | character after a directive (or for that matter anywhere within line in a text Wayfile) denotes a user comment follows to the end of the current line. Directives include: <<<#SYM.?=>>> Correlates a symbol ID prefix (the ? in #SYM.?) with a GPS symbol name. Thus <#SYM.C=Flag, Red> is used to correlate the main Coast to Coast Path waypoint IDs with a red flag. Likewise, <#SYM.A=Flag, Green>, <#SYM.B=Flag, Red>, and <#SYM.P=Pin Green> denote symbols for IDs A, B, and P. The syntax of the symbol name must be compatible with your GPS, otherwise the GPS will most likely select its default if it doesn't understand. <<<#SYM_RULE=>>> Instructs how to calculate accumulated distance for an explicit #SYM.? symbol ID prefix. There are 3 rule types: RULE_ALL, RULE_CONTINUOUS, and RULE_NONE. RULE_ALL causes distance to be summed over the entire set of symbol IDs, useful for the Cnnn main Coast to Coast Path IDs. RULE_CONTINUOUS sums only within the region where the symbol IDs are the continuous, such as the Annn and Bnnn alternate path symbol IDs. RULE_NONE ignores distance, useful for the Pnnn points-of-interest symbol IDs. Correlating a SYM_RULE with a SYM.? causes both the accumulated Miles and %-Grade to be output in both the Report and Take-Along Guide. <<<#DISTANCE_TWEAK=>>> A tweak factor to make total accumulated distance fit to expected, defaults to 1. This value makes the total Coast to Coast Path distance 173.55 miles rather than a desired 190. Thus, setting the tweak to 1.0947854 forces the mileage total to 190. <<<#TITLE=>>> Descriptive name of take-along guide, defaults to file basename. <<<#DISTANCE_UNITS=>>> Miles or KM, defaults to Miles. <<<#GRID=>>> OSGB or IRISH, defaults to OSGB <<<#ELEVATION=>>>METERS or FEET, defaults to METERS <<<#FIELDWIDTH_WP=>>> Width (inches) of waypoint field, default = 0.25. <<<#FIELDWIDTH_GRID=>>> Width (inches) of grid field, default = 0.35. <<<#FIELDWIDTH_ELEV=>>> Width (inches) of elevation field, default = 0.25. <<<#FIELDWIDTH_DESC=>>> Width (inches) of description field, default = 1.0. <<<#FIELDHEIGHT=>>> Height (inches) of one waypoint entry, default = 0.2. <<<#GUTTER=>>> Space between waypoint columns on an output page, default = 0.1. <<<#BORDERS=>>> Size (inches) of output page perimeter border, default = 0.25. <<<#FONTSIZE=>>> Size (points) of Helvetica font, default = 6.0. <<<#SHEETSIZE=>>> Size (inches WIDTHxHEIGHT) of output page, default = 8.5x11. <<<#SPLITSHEET=>>> Number times sheet height is split, default = 1.0. The defaults for split, sheet size, various field sizes makes the printed Take-Along Guide slices a convenient size to carry, about 2 inches wide by 5 inches tall. Overall slice width is the sum of the various #FIELDWIDTHs, while the overall slice height is approximately the #SHEETSIZE.HEIGHT divided by 1+#SPLITSHEET. Typically, the minimum set of directives to use are #SYM.?, #SYM_RULE, and DISTANCE_TWEAK. The default size of each Take-Along Guide slice is about 2 inches wide by 5 inches tall, and 16 slices will print on a double-sided 8-1/2x11 sheet of paper. The following page formatting directives may be used to control the PDF Take-Along Guide file: <<<#BLANK_LINE=>>> Number blank lines to insert, default = 1 if value omitted. <<<#NEW_COLUMN>>> Inserts blank lines so next waypoint starts new column. For the Coast to Coast Path, use directives: #SYM.P = Pin, Green | Points of Interest #SYM.A = Flag, Green | Alternate path A #SYM.B = Flag, Blue | Alternate path B #SYM.C = Flag, Red | Main/primary path #SYM_RULE.P = RULE_NONE | Don't accumulate distance #SYM_RULE.A = RULE_CONTINUOUS | Accumulate distance within A-path #SYM_RULE.B = RULE_CONTINUOUS | Accumulate distance within B-path #SYM_RULE.C = RULE_ALL | Accumulate all C-path distance #DISTANCE_TWEAK=1.0947854 | Tweaks C2C total distance to 190 miles #GRID=OSGB | England's OSGB grid system #TITLE=Coast to Coast Version 1.5 Wildtramper.com, Copyright (c), All rights reserved Practical Usage: The author's practical methodology to create a GPS waypoint file is best done by starting with a known good GPS track file. If this is not available, then GPS waypoints can usually be created using Google Maps and Google Earth, but as you might expect this method is both more tedious and might lead to less accurate waypoint locations. So starting with a GPS track file: 1) Search the web for GPS track files of the route you plan to walk. The website WikiLoc is a valuable source, but GPS track files might also be found just by doing an extensive search. 2) With the track displayed in Google Earth, select those track points which demark pertinent decision points, OR manually select the WGS84 coordinate as needed. WGS84 coordinates can be aquired in Google Maps by right clicking on the map at the point of interest and then selecting What?s here?, the WGS84 lat,lon coordinate is then displayed in the search bar. 3) Make a list of these decision points, adding an appropriate waypoint ID and description to each point. 4) The first time you run makegpx.exe, it will likely be done without elevations. Import the new *.gpx file into Google Earth to (a) verify decision points and directions and (b) extract elevations. The elevations are then inserted into the WayFile. 5) Repeat steps as necessary. The method when starting without a know good track file is generally more tedious. WGS84 waypoint locations can be extracted from Google Earth, but a map set that can be viewed in say MapSource may be easier. In any case, a list of decision points needs to be compiled to which directions and elevations can be added. Utility maketrk.exe: Utility maketrk.exe is a tool used to assist in the production of GPS waypoint files. As a real world example: Returning from a multiday walk, the saved track files in the GPS were organized in day-long files. Using UNIX utility grep, you can extract the lat/lon WGS84 coordinates from these files and then concatenate these lat/lon files into an ordered list for the entire walk. This lat/lon text file is run through maketrk to create a new track file, and is then viewed in Google Earth and it is possibly modified to expurgate the points which don't fit for whatever reason. The usage of maketrk.exe is: d:\>maketrk Usage: maketrk TrackFile Creates a TrackFile.gpx file from a text TrackFile which contains an ordered list of space/tab delimited latitude longitude [plus optional elevation]. The output *.gpx file has the same basename as the input TrackFile, but with the .gpx extension. Version 1.0 Wildtramper.com, Copyright (c), All rights reserved |