blankblank blank


Archive for April, 2010 Page 2 of 2



Free Tools For Custom Garmin Vector Maps IX: GlobGPS Helper

An earlier post in this series covered GlobGPS, a simple (and simple-to-use) Garmin vector map editor. GlobGPS has a built-in raster image calibrator, but the only calibration units accepted are latitude/longitude; if you have a map in UTM or some other projection, this can create calibration inaccuracies. For that matter, if you have a raster image that’s already georeferenced, e,g, GeoTiff, MRSID or BSB, it seems like a waste to have to re-georeference it again.

I’ve written a small program called GlobGPS Helper that will:

  • Open a raster image with embedded georeferencing data; supported formats are GeoTiff, ERDAS Imagine, MRSID and BSB.
  • Re-project the raster image to geographic/WGS84 (Plate Carree).
  • Save the image in the JPG format that GlobGPS requires.
  • Save a .cal file that GlobGPS can use to load and automatically geo-calibrate the file.
  • Give you the option to save the re-projected raster image in GeoTiff format.

Simple interface; just click the “Load Image …: button to select the desired georeferenced raster image, and the rest of the process is automatic:

GlobGPSHelper

In this example, I’ve loaded a BSB navigation chart (loading the file 13235_1.kap). GlobGPS Helper uses the GDAL library to re-project the image into Plate Carree projection, WGS84, saves the image in jpg format (filename shown above to the right of the “Raster Image Output” label), and also saves the .cal calibration file that GlobGPS uses to load the jpg image and calibrate it:

GlobGPSscreen

In housekeeping files, GlobGPS Helper automatically deletes the re-projected GeoTiff file generated from the original raster image; check the box to the left of “Don’t delete Plate Carree GeoTiff” if you’d prefer to save it (it would be called 13235_1_geo.tif in this example). All the rest of the data shown is for information purposes only. The Help button takes you to this post page; Exit does what you would expect. There’s some error-checking, but it may not be foolproof; if you hit a problem, let me know.

Download the GlobGPS Helper application here; unzip the entire folder to your location of choice, and run the executable from that folder.  As usual, verify the data before using it in your GPS, and use it at your own risk.




Free Tools For Custom Garmin Vector Maps VIII: Topo Process Tools

Over the past few years, Dan Blomberg has come up with a step-by-step process to generate high-resolution vector topographic maps (equivalent to 1:24K) for Garmin GPS units. There’s a multi-part tutorial describing the process on his GPS File Depot website, along with free downloadable maps created using this process by him and others. To simplify and automate some of the steps, he’s created a basic front-end called Topo Process. Feature list (from the website):

    • Transportation – Download and process the 2008 Census data automatically (2008 data downloaded added in v1.0.15)
    • Contours – uses FWTools to process the contours; also uses PostGIS; this is free and easy (GeoTiff Files Required)
    • GNIS – points of interest; just like the program gnis_process; works until the usgs changes the file names
    • water data – automatic parsing of the water data, read the directions in gray for how the folder needs to be organized
    • Forest Service – VERY VERY BETA; I wouldn’t use it (i do but in debug mode)
    • to .img – just point it to the folder with the .mp files and it’ll convert them all to .img

You’ll need to use the tutorial instructions to install all the required software packages (e.g. PostGIS, FWTools, cgpsmapper) before using the tool.

topoprocess

Currently written in VB6; Dan’s working on a version to be done in Java. I really need to move on from VB6 as well :).




Free Tools For Custom Garmin Vector Maps VII: MP/IMG File Analyzers And Modifiers

A random grab bag of utilities to analyze and modify Garmin Polish Map (.mp) text files.

GPS Map Manager: AKA ManejadorDeMapa; interface is in Spanish. A utility designed to analyze .mp files for issues, and fix them (from the website):

  • Eliminate invalid characters in Points of Interests (POIs) names
  • Fix letters and words in POI names
  • Find and fix duplicated POIs
  • Find and fix errors in POIs: unknown types, without coordinates at Level 0, etc.
  • Find and fix Roads without standard Route Parameters
  • Find and fix errors in Roads: with 1 or 0 coordinates, without coordinates at Level 0, etc.

imgdecode: Documentation on the binary Garmin .img map format, what you get when you compile a .mp file; includes some sample code for parsing the files.

LevelEditor: Available in the Files section of the Yahoo Map Authors forum. Appears to take an .mp file and let you modify the zoom level at which user-selectable feature classes become visible; no help file, so I can’t say for sure:

mpLevelEditor

I can say that it sometimes will choke on a very large file.

mutaMap: Available in the Files section of the Yahoo Map Authors forum. From the enclosed readme.txt file:

MutaMap is an utility to convert from the ZipCodes, cities, regions and country index from Mapedit to the proper cgpsmapper format (CountryName=, RegionName=, CityName=, Zip=)

If in Opciones, “Reemplazar objetos sin CityIdx” is selected and the following fields are empty, MutaMap will add the parameters CountryName=, RegionName=, CityName=, Zip=, empty with no value (except in the ones where a valid cityidx value is asigned) to all the objects inside the .mp file, the exception will be when it find a City=Y where CityName= will be ommited.
If in MutaMap you put values to the fields, all the objects inside the .mp without a cityidx value will be asigned to the ones you entered of country, region, city, zip, if you only fill one field that value will be given to all the objects without a cityidx and the others will stay empty
If we leave the checkbox “Reemplazar objetos sin CityIdx” unchecked, the empty fields (CountryName=, RegionName=, etc) will not be added to the MP file, only the ones with a cityidx value.

All the CityIdx=x parameters inside the .mp will be replaced by the values in the tables [country],[regions] and [cities][ZipCodes], but with the propper cgpsmapper format (CountryName=, RegionName=, CityName=, Zip=)

Never used it, not even sure if it’s necessary any more (last update was in 2005).

MutaMap

ImgTool: A handy-looking tool that lets you load a binary Garmin .img file and …

  • Make it transparent (or non-transparent)
  • Change the draw priority
  • Change the MapSet name
  • Change the TYP file ID
  • Change the map name and description

In French, but I found most commands understandable as-is (and you’ve got Google Translate to help you out if you have a problem).

imgtool




Free Tools For Custom Garmin Vector Maps VI: Map IDs, Splitters And Combiners

Some tools for handling Garmin .img and .mp files.

GMapTool: I’ve posted before about using GMapTool to break up a combined .img binary Garmin map file into its original segments, and also how it can identify the full names and geographical extents of Garmin map tiles. But you can also use it to join multiple .img map files into a single file, modify basic parameters in the binary file without decompiling it, strip out unwanted data (like routing and elevation data), and much more.

pGPSmap: From the website description …

  • Splits large map into a set of smaller maps
  • Merges holes in regions with regions’ bounds
  • Splits large regions
  • Splits large polylines

Haven’t used it, and as the website points out, only the first function isn’t performed directly by the cgpsmapper compiler. This was also written 6 years ago, when there might have been a substantial drawing speed increase by cutting a large map into smaller ones; not clear that it’s that useful any more.

MapExtract: Does the following (from the website description)

  • Decrypt simple crypted maps (if needed)
  • Convert img map file to polish format
  • Extract selected map window from large maps
  • Include or remove selected points, polylines and polygons
  • Extract or remove selected map levels
  • Convert any map object type to another
  • Change the map name and map ID
  • Convert map from polish to img format
  • Map preview – before and after any conversion
  • Send map to Garmin GPS (or set of multiple maps)
  • Tool to create intersection point of all streets from level0
  • Tool to split large maps automatically
  • Change map ID of IMG files

This is also an older utility (last version released 5 years ago), and there are other ways to perform most of these tasks.




Free Tools For Custom Garmin Vector Maps V: Other Format Converters

A few utilities that convert from raster formats into Garmin vector formats, plus several reverse format converters.

dem2topo: Covered in an earlier post. Takes digital elevation raster files (DEMs) in GeoTiff and a few other formats, and converts them to vector contour lines in shapefile, DXF, and the Garmin Polish Map format (.mp); the latter includes type assignments to the contour lines (major, intermediate, minor). You can choose units and contour line spacings. Great program; I’ve used it a few times.

XYZ2PMF: Command-line program that converts simple ASCII XYZ height files to contour lines. Pretty much requires that you have the expensive (but excellent) GlobalMapper data viewer/converter program. Might have some special feature that fits your needs, but dem2topo is much easier to use.

BMap2MP: Comprehensively covered in an earlier post. Vectorizes a raster image, and converts it to the Garmin Polish Map format (.mp) along with custom data to assign colors to vectorized areas. Works surprisingly well, but not necessarily easy to use; command line only with lots of options. Be sure to read the associated text files for info on how to use it. My Moagu program has a front-end to BMap2MP that makes it somewhat easier to use.

Now, converters that go in the opposite direction:

mp2kml: The oddball program; converts a Garmin Polish Map (.mp) file into the Google Earth KML format. This could be useful for double-checking the accuracy of the .mp file. Perl script, so you’ll need to have Perl installed on your system (ActivePerl is free). Not a Perl user, haven’t tried it. Not updated since 2006, so probably not under active development any more.

ptxt2shp: Converts a Polish Map file into shapefiles, split up by point, line and polygon.

MP2GPXTracks, MP2GPXWaypoints – Java programs that extract tracks and waypoints from an .mp file and convert them to GPX format. The Free GPS utilities website also has a bunch of handy drag-and-drop icon interfaces for GPSBabel, for batch conversion of various GPS  waypoint/track/route formats. HT to Martin.




Free Tools For Custom Garmin Vector Maps IV: Vector Data Format Converters

Some links to programs that convert vector data in other formats to the Garmin Polish Map (.mp) format; the data can then be imported into map editors like GPSMapEdit and MapMan for use either by themselves, or as part of more complex maps.

ezimg: Supposedly converts GPX and KML files to .mp format, and comes with an older version of the cgpsmapper compiler to directly generate .img binary Garmin map files. I say supposedly because I get an error message on my system, and no valid .mp or .img file is created. Others seem to have gotten it to work; may be a Windows 7 issue.

ocad2mp / ocad2img: Posted about this already, briefly. OCAD is a vector map drawing program, popular in Europe. ocad2mp converts an ocad file to Garmin .mp format, along with special formatting data to duplicate the exact look of the map on a Garmin GPS. ocad2img is a Perl front-end to ocad2mp that also sends the .mp file directly to the cgpsmapper compiler to create a binary .img map file. See this website for a comprehensive step-by-step description of the process.

OZItrk2MP: Converts an OziExplorer .PLT file to a .mp file. Available in the “Files” section of the Yahoo Map Authors group (registration required for access).

Perl scripts: Along with a bunch of other GPS and Garmin info at this site, there are a couple of Perl scripts that will convert GPX waypoint files and GPX track files into transparent .mp/.img files. Haven’t tried ‘em, don’t have any experience with Perl, and don’t really have any inclination to learn it, but be my guest. Requires that cgpsmapper be installed on your system.




Free Tools For Custom Garmin Vector Maps III – Other .mp And General Vector Map Editors

GPSMapEdit and its clone GPSMapEdit++ are the most fully-featured free Garmin map editors currently available, but there are a few other options available as well.

MapMan (aka Map Manipulator) – A decent feature set, and a good number of input formats:

  • Shapefile
  • GPX
  • MP and img
  • JPEG images; the program lets you calibrate these with a large number of acceptable datums and coordinate systems, and use them as a background for tracing vector features:

Continue reading ‘Free Tools For Custom Garmin Vector Maps III – Other .mp And General Vector Map Editors’




Free Tools For Custom Garmin Vector Maps II – GPSMapEdit And GPSMapEdit++

Second in the series.

GPSMapEdit – This program is the most commonly referenced and recommended editor for creating mp map files that can be compiled into Garmin-ready .img files. And with good reason – it’s easily the most comprehensive and full-featured Garmin map editor around, even in the limited-feature evaluation version. You can load or import vector data in a wide variety of common vector formats like:

  • GPs eXchange (.gpx)
  • Shapefile (.shp)
  • Garmin MapSource formats (.mps, .gdb)
  • Magellan MapSend files (.trk, .wpt)
  • Polish map files (.mp)
  • Garmin .img map files (program can also export these to .mp format)
  • OziExplorer vector formats (also can load .map image files for use as a drawing background)
  • PCX5 (.rte, .trk, .wpt)

… Plus a whole bunch of other oddball formats (Holux, Navitel, Alan). Map display in approximately the same view you get in either Garmin’s MapSource or BaseCamp application:

gspmapedit

All the standard editing features you’d expect in a vector-based map editor:

  • Create/delete points, lines and polygons
  • Set map object types
  • Snapping, splitting, rotating, measuring, slicing, merging, rotating, removing duplicates
  • … and so on

GPSMapEdit also allows full setting of all parameters required by the cgpsmapper compiler, and interfaces directly with the compiler, so you don’t have to mess with any command line commands or controls. Just create the map, save it in .mp format, then export it in .img format; GPSMapEdit does the rest, including displaying processing status, and error message feedback if something goes wrong:

cgpsexport

However, one of the biggest drawbacks to GPSMapEdit is the lack of a manual or proper help file. The website offers a list of links to various websites that describe how use the program; in particular, I highly commend both the MalsingWiki mapping reference and the cgpsmapper manual.  Even with all these help resources, though, be prepared to struggle and experiment in order to figure out how to do everything you want to do.

Registration of the program adds the following features:

  • Visualization of satellite images from Google Maps.
  • Semi-automatic vectorizer tool.
  • Find by address (the menu item ‘Tools | Find by Address…’).
  • Loading of huge raster maps (format OziExplorer MAP) – over 20-30 megapixels.
  • Loading ECW and JPEG 2000 raster maps.
  • Import from MapInfo MIF/MID.
  • Export to MapInfo MIF/MID.
  • Import POI from external table file with address data, the formats are: CSV, MS Excel XLS, MS Access MDB, dBase DBF, Paradox DB, Visual FoxPro.
  • Splitting map to smaller files (the menu item ‘Tools | Split Map to Files…’).
  • Saving to CRD format (ALAN Map 500 and Holux).

GPSMapEdit++ – GPSMapEdit was originally freeware, but went to shareware as of version 1.0. If you look hard enough, you can probably find a copy of the last freeware version out there somewhere on the Internet. But GPSMapEdit++ is a free, open-source extension of the GPSMapEdit source code, and is probably a better choice than the much older GPSMapEdit freeware release. The feature set of GPSMapEdit++ is bit more limited than the GPSMapEdit evaluation version, much less the full registered version, but you really have to hunt to spot the differences. Most of the functionality that you would want to create and edit a map is in place in both versions. And the interface of GPSMapEdit++ is essentially identical to that of GPSMapEdit, allowing you to use any of the help references. Below is a screenshot of GPSMapEdit++ with the same data as loaded above in GPSMapEdit; you’ll be hard-pressed to spot any differences:

gpsmapeditpp