Google
Web gpstrailmaps.com
Home Map3D Manual Other Software Web Log

GPS Trail Maps - Software

Please note that there is now a much better free program for terrain visualization in 3D. The Google Earth application is just amazing, includes search for places and business, and is also compatible with the GPS Exchange (.gpx) data files available on this site.

If you are looking for GPS Mapping Software for the Pocket PC, check out the new Backcountry Navigator program. (Backcountry Navigator is not affiliated with GPS Trail Maps.)

GPS Trail Browser

GPS Trail Browser is an experimental Windows program designed to help you download gpx files to and from this and other trail and travel websites and your GPS receiver. For a preview of GPS Trail Browser, visit the program home page at GPS Trail Browser Home Page

Wissenbach Map3D

Wissenbach Map3D is Free Software designed for use with Microsoft Windows operating systems.

To install the program download and run the setup file

SetupWM3D-2.44.exe (Left click on the link and Run, or Save (to disk) then run.)

The Setup File above will install the latest version of Wissenbach Map3D on your computer, after giving you the opportunity to uninstall any previous version of the program. The setup also includes a sample map of a hiking trail near Boise, Idaho.

Use the program's Help Menu and/or the on-line Manual if you need instructions on using the program.

This program is no longer developed and maintained.

See Release Notes for details of this and previous releases.

Screen Shots

The view above is the Yosemite Falls Trail as hiked by Fred Williams of www.offroute.com. (The gpx file, created with the use of Expert GPS was made available by Fred on his prototype web site for exchanging gpx data, www.gpxchange.com. I have used this data without his explicit permission, because the data was licensed under the terms of the Creative Commons attribution license!)

The view below is Bogus Basin Ski Area on Shafer Butte in the Boise National Forest. The Bogus Basin trails were drawn with either a Garmin eTrex Summit GPS receiver mounted on the handlebars of my Trek 8000 mountain bike or the same GPSR in my parka pocket, depending on the season and steepness of the terrain.

About this Program

You use this program to create, view and edit GPX (GPs eXchange) files. A GPX file contains trails, routes, and waypoints -- all of the objects produced by a non-mapping GPS unit such as the Garmin eTrex summit. A GPX file can be created by reading data from your GPS receiver with this program, or by drawing on this program over a background topographic map. This program will also write GPX tracks, waypoints, or routes to your Garmin receiver, to allow you to follow trails which others have previously logged with their GPS receivers.

The background maps for the program are the familiar USGS 7 1/2 minute topographic maps, converted by the United States Government with your tax money to Digital Raster Graphics (DRG) files. This program does not directly open DRG files but instead uses the DRG files as a background resource.

When you define a region of interest by opening a GPX file, by downloading data from the GPS receiver, or by using View->Enter Coordinates to manually specify a location, the program attempts to draw a background topographic map by looking on your computer for USGS DRG files. Any GPS data, either read from a GPX file or from your GPS receiver, is then overlayed on top of the background maps.

WM3D auto-downloads and displays topographic maps and aerial photos from TerraServer USA. Another program which operates in this manner is Expert GPS. (Expert GPS was the first program to automatically download Terraserver tiles in this manner, as far as I know.)

Wissenbach Map3D initially opens with a blank screen, because the geographic extent desired is unknown. To start, either connect a Garmin Receiver to the serial port and use GPS, Read From GPS, or View, Enter Coordinates. A good way to find starting coordinates for planning a hike or bike or ski trip is to use the USGS Geographic Names Information System search form United States and Territories.

If you are interested in terrain visualization but this program doesn't meet your expectations, see Terrain Visualization for programs with similar capabilities.

If you have an older (than eTrex) model Garmin or use a Magellan or Brunton or Lowrance GPSR and need topographic mapping capability, or you have trouble with this program or just want to try something different I can recommend the moderately priced Expert GPS from Topografix. which can read and write the GPX files produced by this program. (I received a free copy of ExpertGPS from Topografix for collaborating with the design of the GPX file format).

Sample GPX Maps

Visit my GPS Trail Maps web site for sample trail maps in gpx file format.

Obtaining USGS DRG Files

In some cases, data available on the Terraserver is not accurate or is improperly produced. For example, Yosemite valley topographics maps have this problem. In that case, the program can be configured to use USGS DRG files by checking File->DRG Map and setting datum and projection appropriately.

For Idaho, you can find DRG files using the link
Inside Idaho Find Data by Spatial Organization USGS Quad 7.5 Minute
from the
Inside Idaho GIS Website
which has replaced the old GeoLibrary web site. From the download page, you can search for quadrangles by quadrangle name or by selecting on a zoomable map. To use these files with Wissenbach Map3D, download UTM files, unzip and rename to the original USGS name such as O43116G1.tif. The download page shows the LatLong and Cell code, such as G1, to use for each file. The prefix capital letter O indicates that this is a 7 1/2 minute DRG.

Beginning with version 2.8, Wissenbach Map3D supports the California DRG files available at The California Spatial Information Library. Use the untrimmed version of the DRG files with this program. The WinZip program will extract the tar.gz files found at this site.

ChartTiff corporation sells ftp downloads of individual DRG files. Visit ChartTiff Geo's -- Quad Search for Geo and DRGs for their search page. Purchase the lower-priced collared DRG version. You'll also find DEM elevation if you are using the 3D version of the program.

You can also find DRG files for many states at links listed by the USGS at Free Drgs. (The Washington and Oregon DRGs available at the Regional Ecosystem office shown on this site have been resampled and trimmed and work well only at high zoom levels in Wissenbach Map3D--the files no longer follow the original DRG standard.)

For DRG files on a county-by-county basis, (no longer free) visit GIS Data Depot. At last reading DEM files were still free on this site, because of an agreement with the USGS.

Help for Map3D Features

Previous instructions for locating digital elevation models no longer apply, because the program as of version 2.43 downloads digitial elevation data from the NASA Shuttle Topography Mission. For more information on this data, see Shuttle Radar Topography Mission .

First Step - Create the Scene

To get a 3D view, first open up an existing GPX file or use View Enter Coordinates. Then Click 3DMap on the Menu Bar. The extent of the 3D map is set by the extent of 2D view. Trails are snapped to ground level in the initial 3D view, but can be unconstrained to view a balloon or hang-glider flight path by unchecking the Ground Trails checkbox in the 3D Scene Properties dialog. The 3D terrain will be overlayed with the current basemap, which is what you see in the 2D view. For best realism, switch to JPEG Aerial photos on the 2D view before displaying the 3D view. Adjust the sun angle and azimuth to match the shadows which you see on the 2D aerial photograph.

If your computer thrashes when displaying the 3D view, you probably don't have enough memory or are trying to display a scene for too wide of an area. The initial scene properties dialog attempts to set up terrain parameters for reasonable memory usage, so don't override the values for terrain resolution unless you have lots of memory. At 30-meter resolution, and 4 meters per pixel resolution, a 10x10 square mile area can take over 512MB of computer memory!!!

Navigating in the Virtual World

Course navigation is done simply by moving to a viewpoint. Use one of the cardinal points from the Viewpoint menu to start viewing your scene from the North, Norheast, East, Southeast, etc. The the center of your scene will become the center of your screen.

Fine navigation in Wissenbach Map3D is similar to a computer game. Press and hold the E key to move forward while using the mouse to turn left or right or gain or lose altitude. Press and hold the D key to move backward. Shift-E and Shift-D move faster. Press and hold the F key to crab to the right, or the S key to crab to the left. Press and hold the R key to slide up (gain elevation), or the V key to slide down (lose elevation). Use T and B keys to look down or look up. Use the arrow keys to pan and tilt.

Program Implementation and Technical Disclosure

This program reads the tif files and geotif tags using the program librarys libtiff Tiff Software and libgeotiff GeoTiff . (The required legal copyright information for the above program libraries are found under the map program's Help About menu selection.)

Only the Garmin transfer protocol is supported, because Garmin was kind enough to place the protocol specification on the Web. (That's why I bought the Garmin eTrex in the first place!) You can find that specification at Garmin: Communication Protocol Interface Specification .

Here is the source code and Software Development Kit for Wissenbach Map. This is an installer with the Microsoft Visual Studio 6.0 project, plus libtiff, libgeotiff, libungif, zlib, libpng, and, libjpeg, and proj4

WissenbachMap3DSDK-2.44.exe

(Source code is also viewable on the web at MFCWindows )

GPSCom.h and GPSCom.cpp are the interface to the Garmin protocol.

TopoMaps.h and TopoMaps.cpp are the interface to the tiff library. The interesting stuff is the conversion of coordinates to map names and the code to stitch the maps together.

You'll find a bit of tricky code in Trails.h and Trails.cpp to cull the number of points and to determine where to insert and delete points.

Primitive XML parsing functions are in XmlReader.cpp and XmlReader.h. Helper functions for reading and writing the standard datetime format in UTM (but displaying in your local time) are in DateTime.h and DateTime.cpp.

A key part of this program is the projection from Latitude and Longitude to UTM coordinates, because the UTM coordinates can be directly mapped to square pixels. This projection is now done by the proj4 library available at PROJ.4 Cartographic Projections Library, in order to accomodate the California Albers projection as well as UTM. This usage of the proj4 library opens the possibility of using many different types of digital map files.

Previous to version 2.8, I used the UTM to Lat/Long and reverse conversions from the GPSY (Macintosh GPS) Latitude/Longitude to UTM Conversions page. (The code is published there without copyright and with an accompanying letter from the author, Chuck Gantz, suggesting that Karen Nakamura publish the source code.) I have modified that code only slightly and in an insignificant way.

All other code contained in the program except for the now-redundant Latitude/Longitude conversions mentioned above, and libtiff, libpng, libjpeg, libgeotiff, libungif, and proj4 is original and was written and copywrited (with the terms of the GNU Public License) by Dave Wissenbach.

The big question when parsing XML is SAX or DOM. I say none of the above, and have embedded parsing in the program, using a pull model where each element roughly corresponds to an object which parses itself.

I found most of the information needed to code this program by following the links at
GPS Information, Software, and Hardware Reviews

File Format

The .gpx suffix denotes the GPs eXchange XML format. Wissenbach Map extends the format with an allowed private extension to support the separation of data into plan and log layers. For details of the format, and a list of programs which support the format, visit GPX: the GPS eXchange Format.

For the ongoing discussion on the gpx file format, see the Yahoo group
GPS XML Format Discussion Group.

Wissenbach Map converts the sym element of the GPX format to and from Garmin symbol code according to the table Garmin Symbol Conversion. This mapping of Garmin Symbol codes to <sym> element was derived a from a combination of reference to the Garmin protocol specification and interoperability testing with the excellent ExpertGPS program, which also supports the gpx format.

Linux Version

At one time I was working on a Qt/Linux version of the program with the idea of creating a topographic map program for the Sharp Zaurus, which was a linux/based PDA.

Unfortunately, Sharp abandoned the U.S. market for the Zauri, so I suspended work on this project. I brought the program (on SUSE Linux 9.1) up to the point of reading and writing from the GPS, and displaying topographic maps in PNG format (.tfw world files for each PNG file are also required.) Anyways, if you are looking for Linux GPS source code, the source code for this abandoned, unpublished but working Linux version is available at
QtLinux Directory

(I may revisit the Linux version at a later date, because Trolltech (the maker of Qt) has announced plans to update their Open Source version of the Qt toolkit for Windows when releasing version 4.0)

Release Notes

WM3D is no longer maintained. There will be no further releases, at least not by the current author

Version 2.44 June 6, 2005. Improved speed of terrain model creation. Reduced initial terrain detail for better performance on low-cost computers.

Version 2.43 June 2, 2005. SetupWM3D-2.43.exe Added auto download of elevation data from the NASA server. For more information on this data, see Shuttle Radar Topography Mission . (The idea for this feature came from my browsing the TopoFusion feature list.) Topofusion is a shareware program with capabilities similar to WM3D but with better speed and refinement.

Version 2.42 March 20, 2005. SetupWM3D-2.42.exe Added default margins to printer output so that printed output to Adobe PDF format can be reprined with most printers without clipping off the edge of the map. Fixed problem with GIF map tiles with file handles not being released. This problem caused the program to loop on terraserver access when printing large detailed maps.

Version 2.41 March 2, 2005. SetupWM3D-2.41.exe Added support for older (than eTrex) Garmin Receivers such as the GPS12. Generally, these older model receivers support one track log only, so support for older receivers is limited to receiving a track log, waypoints, and routes from the gps, and sending routes and waypoints only. (If you have an older GPS which supports only one track, WM3D will pop up a dialog which warns you that tracks were not downloaded. So, if you don't see the popup, you're OK.)

To convert a track to a route in WM3D, use the trail/route information dialog. Change the number of points to 30 or 50, depending on your GPS, and check the route checkbox near the top of the dialog. Then click OK to dismiss the dialog. The track is now a route and can now be sent to an older-model GPS.

Version 2.40 January 21, 2005. SetupWM3D-2.40.exe Line widths are now interpreted as mm instead of points in accordance with the evolution of the gpx_style standard. Line widths in tracks and routes may have to be altered.

Track points without elevation or timestamps were not always read correctly with WM3D versions 2.31 through 2.39, which means that you could have lost data if that data was written with a program that uses a compact XML syntax for empty trackpoints (as does ExpertGPS). This problem has been fixed but if you are using older versions of this this program, especially when using data originally created by another program, be sure to update. Visually check your trail data before saving a file with this program!

Version 2.39 December 4, 2004. SetupWM3D-2.29.exe implements a user suggestion to use video-game style navigation. The viewpoint follows the mouse left or right motions, and slides up or down. E) moves forward, D) moves backwards, F) slides right, S) slides left, R) slides up, V) slides down, T) tilts up, B) tilts down. Similar function on the right hand for lefties. The shift key makes all of this happen faster. Also, in the 2D view, added a popup menu for track editing. Right clip on the mouse to bring up the track editing menu. (My current focus on the program development is improving usability -- I have several suggestions from users still pending implementation.)

Version 2.38 November 29, 2004. SetupWM3D-2.38.exeUser requested features. The scene properties are now persistent across multiple 3D views and are saved and restored when a gpx file is saved. Added Viewpoint menu to 3D view to create stock viewpoints at cardinal points, North, Northeast, East, etc, instead of just the default starting viewpoint at the south. Also, to improve usability, added color swatches and windows set color on the 3D view.

Version 2.37 November 26, 2004. SetupWM3D-2.37.exe Added the ability to specify display text and text color for waypoints. (The settings only affect the 3D view.) This feature was used to color waypoints according to terrain difficulty on the Bogus Basin Ski Resort sample map.

Version 2.36 November 18, 2004. SetupWM3D-2.36.exe Digital elevation data is now removed from RAM when a new GPX file is opened, or when the File->Setup DRG, DEM directories dialog OK is selected. Fixed an imaging defect which caused irritating straight lines in some 3D views. Added failsafe operation when DEM's not available, so that the 3D view is presented with flat (think North Dakota) land form.

Version 2.35 November 15, 2004. SetupWM3D-2.35.exe Added text to 3D view to better denote trails and waypoint locations. Added resourceLinks to map3d gpx extension to allow publishing gpx files and autolinking to dem files on this or your site. Download and examine CelebrationPark.gpx for an example of the usage of the links, which must be manually inserted by the publisher of a gpx file with a text editor such as WordPad. (The resourceLinks are at the end of the file in the extensions section.) Version 2.35 also produces strictly valid gpx 1.1 output, to ensure compatibility with Garmin Map Source 6.5.0 beta, which now adds support for gpx but is very strict about the construction of the gpx file.) You can correct existing gpx files which do not validate by opening in WM3D 2.35 or higher. Click OK on the Map Description, then File Save or close. Presto! a valid gpx1.1 file.

Version 2.34 November 6, 2004. SetupWM3D-2.35.exeDefault setting for DEM download is now blank, meaning do not attempt download. (Only a few files for Idaho are available for download.) Added Change DEM Datum button to the File -> DEM, DRG Directories dialog to allow the Digital Elevation Datum to be set to the Old Hawaiian Mean datam just in case you happen to be hiking on Diamond Head in Honolulu.

Version 2.33 November 1, 2004. Added support for Garmin USB interface, such as the eTrex Vista C(olor). Also added experimental download feature for DEM files.

Version 2.32 October 22, 2004. Fixed collateral damage introduced in version 2.31 which lost waypoints when the waypoints read from gps were saved and then reread into program. Routepoints were also added as waypoints. Now routepoints are not added a second time as waypoints. Fixed assorted bugs, and inadvertently sprinkled in new bugs.

Version 2.31 October 20, 2004. Extensive rewrite to handle tracks and routes with the same internal data structures, and to allow tracks to include descriptive data within trackpoints. (Tracks can now be converted to routes, and routes can now be edited.) Photographs and text descriptions can no be added to trackpoints.

Version 2.30, July 31, 2004. GPX metadata now defaults to registry settings for new files. Added option to update default document settings such as author, author email, copyright, and license on map description dialog. Fixed but which was always inserting a stylesheet processing instruction for GPXContents.xsl.

Version 2.29, July 29, 2004. Corrected problem with printing when terraserver serves GIF tiles (GIF file handles weren't properly being released)

Version 2.27, July 10, 2004.

Version 2.26, March 23, 2004

Version 2.25

Version 2.24 corrects a problem reading DEM files for 3D operation. Too much of the header was being skipped causing the DEM read to fail, resulting in a blue screen, (not the Blue Screen of Death) instead of the expected 3D display. (Curiously I hadn't run into this bug myself, but I still wonder how it ever worked?)

Version 2.23 fixes the multi page print dialog which mysteriously ceased to work after MicroSoft Visual Studio changed some signal names without my persmission for unknown reasons.

Version 2.22

Version 2.21

Version 2.20

Version 2.19

Version 2.18

Version 2.17

Version 2.16

Version 2.15

Version 2.14

Version 2.13. Made datum and projection setting persistent. Added support for terraserver photos and topo maps. Added Ground to DEM elevation feature on Trail Information Dialog.

Version 2.11. Removed Camera mode fly from 3D view menu. Added check boxes for Save Tracklog Elevations and Save Tracklog Timestamps to allow stripping elevation and timestamp data to conserve web space. By default, these boxes are checked, so that timestamps and elevations are saved. If UseDEM on DRG DEM Setup dialog is checked, drawing trails and waypoints adds elevation from DEM. (Elevation functions now work on drawn trails and waypoints.) Separated Draw Trail Button into Draw Trail and Extend Trail buttons for more intuitive behaviour. Added Drag To Pan functionality. Added Zoom to Region functionality. Fixed monster memory leak instroduced in version 2.6, when the MapTile class was abstracted to allow either PNG or DRG tiles to be used.

Version 2.10 adds File Export SVG Aerial Photo and File Export SVG Topo Map menu items. (The resulting SVG file can be embedded in an html file with dimensions set according to the meters per pixel desired when viewing in the browser in order to support panning in the browser). Version 2.10 also corrects a bug where time information was not properly stored and retrieved, changes the averaging for speed at a given track point to 20 seconds, and adds a text table for GPS track point sizes to the GPS configure menu.

Version 2.9 allows the UTM Grid to be drawn on California Albers Maps. The grid is tilted because the central meridian of the California Albers Maps is not the same as the central meridian of the UTM zones 11 or 12. Version 2.9 also adds a Mercator projection, for downloading data from a GPS which covers a wide geographical area. The program will switch from the UTM projection to the Mercator projection whenever the data on the screen crosses more than one UTM zone, and will switch back once the extent of the data is within a single zone. This version also corrects a problem with invalid altitudes on eTrex models without barometric altimeters when a 2D only fix is obtained.

Version 2.8 adds support for the California Albers projection. Version 2.8 also fixes bugs introduced in the 3D view by versions 2.63 and 2.7 caused by the addition of the NAD1983 datum selection. The 3D view will malfunction in the Albers coordinate system. As a work-around, until I fix this, set the view for your topographic maps to the terrain which you want to display in the 3D view, then switch back to the NAD1927 coordinate system. Although the 2D view will be blank, except for your trail data, the 3D view will now be properly constructed from the DEM data. I know that this works because I've downloaded data for Yosemite valley and walked around in that virtual world.

Version 2.7 adds SVG output. The trail information menu now has type and style elements. To output SVG, use File Save As and use a .svg suffix. The program outputs SVGStyle.txt and SVGSymbols.txt as boilerplate. SVGSymbols cannot be extended (yet) to include new symbols, but the existing symbols can be changed. SVGStyle can be extended to include new classes. For example, the class Jeep-Trail will define a default style for all trails of type Jeep Trail, which you can modify by editing SVGStyle.txt in the install directory. (When SVG is output the space is Jeep Trail is replaced by the hyphen to conform to CSS syntax). To change the specific color for a given trailin the svg output, use the style property of the trail.

For an example of SVG produced by this program, see
BogusBasinSVG.html

Version 2.6.3 adds datum NAD1983. Version 2.6.2 reads routes from the gpx file.

Version 2.6.1 refines printing by working around a Windows/Driver interaction problem which prevented waypoint icons being drawn. Grid lines and minor tick lengths are now scaled correctly according to printer resolution, so the grid is now visible when printing on my HP Photosmart 2350 printer. (Print the grid when anticipating cross-country travel, by checking View->Draw Grid.). Also changed default scale for multi-page print setup to 28800 to 1. This scale fits one DRG pixel per one printer 300dpi pixel. (On the photosmart printer, Everyday and Fast Draft print at an application-level resolution of 300 dpi.)

Version 2.6 adds the ability to read basemap files in PNG format. This feature allows for roughtly 3 times as many maps to be stored on a CD. (180 instead of 64). This savings in data space isn't free, though--the PNG files take more time to load and view. Version 2.6 also corrects a stitching defect which selected a small amount of collar data where right-tilted maps sat on top of each other, and corrects a goof from version 2.5 which rendered missing map data in black instead of white. It's always something. Users of this program have probably figured out that there's no formal test procedure for the next release!

Version 2.5 restores reading Palette from TIF file instead of using hard-coded values. This feature was broken when the 3D view was added. Version 2.5 adds the new feature of displaying false color contours generated from a DEM file in the starting 2D view rather than DRG files if the View->False Color Contour menu item is checked.

Version 2.4 includes 3D features. Support for the 2D version of the program is dropped. Version 2.4 properly releases Icon handles when reading a file containing a large number of waypoints.

Version 2.3 added 3D views of routes and waypoints.

Version 2.2 added the 3D view.

Version 2.1.1 release notes. Oregon collarless DRG files obtained from Regional Ecosystem Office don't contain coordinate system tag. Modified program to assume NAD1927 coordinate system if tag is missing. Then Oregon files of the form e845122.tif can be renamed to O45122E8.tif and appear to function correctly with this program. Caveat emptor. If the datum isn't really NAD1927 displayed GPS tracks will be hundreds of feet off. I haven't tested this because I haven't been in the Portland area with my GPS receiver. Also, they call these 10-meter DRG's, and I believe it. Although the file sizes are huge, they don't seem to be as good as the usual 250 dpi 2.4 meter DRGs. You'll have to stay zoomed way in to read these maps.

Version 2.1 release notes. Check map projection to make sure that map is in the supported NAD1927 coordinate system with UTM Grid, to avoid a crash when using free, but unsupported, California data from UCD which has been transformed to the Albers projection. Read Palette from TIFF file instead of hard-coding palette entries per older DRG standart. This allows new California DRGs purchased from ChartTiff to display in normal colors rather then the psychedelic presentation previously rendered.

Version 2.0.3 release notes: Correctly handle unnamed waypoints in GPX files. Program no longer exits ungracefully (crashes) after writing a route to the GPS Receiver.

Version 2.0.2 adds toolbar buttons for routes and corrects a crash when a route is deleted. Version 2.0.2 displays track and waypoint names and adds toolbar buttons.

Version 1.9 added a select track point function, and reverse track functions, and adds help functions for multi-page print and about this map menu entries.

Version 1.8 added additional descriptive data to tracks and waypoints, and adds mileage and speed fields to the track point information display.

Version 1.7 added support for the release version 1.0 of the gps xml format, corrects the function which simplifies the track to fit in a saved track log, and adds a configurable download track size to support the yellow eTrex.

Version 1.6 added support for multi-page printing, to create a mosaic, or wallpaper map, and also added support for descriptive data about the map. Version 1.5 changed the waypoint symbol names to match the Topografix ExpertGPS/EasyGPS symbols for better interoperability (See the code listing at the end of this document for the updated symbol list.)

Terms of Use   Privacy Policy