Commonly Asked Questions

  1. How do I install JJFMapper
  2. What map projections does JJFMapper support
  3. What file formats does JJFMapper support
  4. What system is used for the version numbers
  5. What version should I use
  6. Can JJFMapper convert between different datums
  7. What does JJFMapper require
  8. Who should use JJFMapper
  9. Does JJFMapper work on Macintosh
How do I install JJFMapper
Download the latest release archive from the SourceForge project page, or do a cvs-checkout. JJFMapper is a PHP script and therefore does not need to be compiled. Do not install JJFMapper in your web share. JJFMapper is designed to be included by other PHP scripts, and so installing the program in your public webspace is unnecessary, and could be a security risk. If you are installing it to a personal website on a remote webhost, you could put it in your home directory, rather than your public_html directory. If you are installing JJFMapper on your own computer you might choose a location like /usr/local/jjfmapper (Linux) or c:\jjfmapper (Windows). You will want to obtain ESRI Shapefiles of the features you want to map, and put them into the 'geography' directory under the jjfmapper root. If you want to store your geographic data in another location, you can reconfigure the default by editing config.php in the JJFMapper root. If you want to use the caching feature of JJFMapper, you need to set the permissions of the 'cache' directory so that your web server has read and write access to it. Under Linux you would change to the jjfmapper root directory and do 'chmod 777 cache'.
What map projections does JJFMapper support
For now only one. A projection similar to Mercatur. In consideration of speed, the projection class applies a uniform distortion to all longitude coordinates. The factor of distortion is the cosine of the latitude in the middle of the map. This means that there will be comparatively less distortion when mapping a small area of the earth than when mapping a large one.
What file formats does JJFMapper support
ESRI Shapefile
Shapefile is not complete but it is getting close. JJFMapper currently supports shapefiles that use the polygon shape type and the point shape type.
JJFMapper supports GPX format.
Coordinate List
Coordinate List is a file format that I made up. It is a text file in which each line contains a set of latitude/longitude coordinates. The coordinates are parsed by the class Coordial (in coordial.php) which allows for very flexible formatting. These files are extremely easy to generate on the fly in a script, and so are well suited for working with a dataset of geographic waypoints.
What system is used for the version numbers
The version of JJFMapper is a simple integer. The current system of assigning version numbers is that I increment the version and create a distribution archive when I decide that the project has reached a milestone.
What version should I use
Please use the current CVS version of JJFMapper, rather than the current release version (13). I hope to have a release archive of version 14 soon.
Can JJFMapper convert between different datums
No. I decided that the cost in performance under PHP outweighed the benefit of pixel-perfect plotting.
What does JJFMapper require
JJFMapper was made to be compatible with PHP 4.2.3 and up. Note that the PHP developers strongly recommend that everyone run at least version 4.3.10 because of critical security fixes.
You must have the GD Module for PHP. JJFMapper will work with version 1 or 2 of this module, though some features are only available with GD2. (And some require GD2.01.)
Who should use JJFMapper
Making maps is, by definition, a very resource intensive task. JJFMapper is written in PHP, a scripting language designed for ease of use in handling (primarily) html documents, rather than speed for tasks like graphics manipulation and processing of binary data. JJFMapper is designed for people who need simple maps in a PHP environment. If you need complicated maps and/or can install and run cgi-binary programs on your webserver, a program like Mapserver from the University of Minnesota may better meet your needs.
Does JJFMapper work on Macintosh
Yes, but slower than on PC. JJFMapper uses PHP's unpack function to parse the binary data in shapefiles. Unpack is not capable of changing the byte-endianness of floating point numbers. Therefore JJFMapper has to use a clumbsy workaround when it is run on big-endian machines. The best solution for people who want to use JJFMapper on a big-endian machine is to structure the site so that the maps can be pregenerated and cached to disk.