Download Latest Version JMPL(Prod) and Demo Program.zip (1.9 MB)
Email in envelope

Get an email when there's a new version of Java map Projection Library (JMPL)

Home
Name Modified Size InfoDownloads / Week
JMPL(Prod) and Demo Program.zip 2013-03-10 1.9 MB
JMPL (Dev) and Test Program.zip 2013-03-10 1.8 MB
README.txt 2013-03-10 5.0 kB
Totals: 3 Items   3.7 MB 0
Java Map Projection Library(JMPL) - Production and Development

PLEASE NOTE: the original "JMPL (Dev) and Test Program.zip" and "JMPL(Prod)
and Demo Program.zip" were produced with JBuilder 2006 using Java JDK 5.

The current versions were produced by importing the original code into
IntelliJ IDEA 12 and using Java JDK 6.  The source code and documentation
in the two versions are identical.

The purpose of this library is to support making maps when using the
Java programming language.  It may also be of some use in understanding 
the general nature of map projection libraries regardless of the 
programming language one may be using.  This package is composed of two 
major components.  The first, by Jerry huxtable, is the actual map 
projection methods.  These methods are a Java port of a major portion of
the UNIX/C Proj4 Library.  The C routines were converted by Jerry 
Huxtable using a combination of the text editor in the MAC Xcode IDE 
(Integrated Development Environment), scripts to perform search and 
replace operations, and extensive manual operations.  To be consistent 
with the general Java language environment, during the porting process 
the projection routines were converted into an Object Oriented 
Programming (OOP) configuration.

The second component, by Fred Pospeschil, includes a 42 page manual and 
a test program which exercises the map projection routines.  This 
program was written using the JBuilder Integrated Development 
Environment (IDE) 2006 and has a separate documentation manual.  To 
simplify the understanding of the test program OOP was used only when 
required.  The rest of the code is written in a more traditional 
procedural manner.  The only  objective of the program is to provide a 
platform for testing the routines in the library, not to provide an 
example of how to write an OOP based map generation program.

The JMPL Production version of the library contains seventy projections.
Twenty of these have inverse projections.  Only projections which have
passed extensive testing are included in this production version.  The
development version contains all ported projections.

Because the JMPL Development version is a work-in-progress you will 
find that this document contains a good number of notes and other 
information which relate to problems and things which still need to be 
done.  In many cases they also record changes to the source code.   The 
Java source code also contains comments on changes which were made 
during the testing of the routines.  The purpose of leaving these notes 
and comments in the code and documentation is to make it easier for 
subsequent work to more rapidly focus in on what needs to be done.  The 
target audience for this phase of the work is programmers, regardless of
language, who are interested in the continued development and testing of
map projections.  

While Mr. Huxtable's code is covered by the Apache License, Version 2.0,
this document and all changes to the code made by the author are placed 
in the public domain for unrestricted use.  Citations and credits will 
be appreciated.

-----------------------
The doc directory contains all of the documentation for this library.  
The files are as follows:

Java Map Projection Library.pdf & .doc  This is the manual for the map 
projection library.

Java Map Projection Library Test Program.pdf & .doc.  This file contains
the instructions for running the test program.

The Adobe versions of the Java source code for the program are 
ProjectionTest.pdf & .doc and ProjectionFrame.pdf & .doc.  The Java 
versions of these files are in the src\projtest directory.

-----------------------
The MapData directory contains the cartographic data used by the program
to draw the maps.  These are binary files.

-----------------------
The src\ directory contains the following sub-directories:

fwpUtil\ contains the logger.java and LOGGER.doc files.  Logger is used 
by the test program.  You may use this utility as you see fit.  This 
directory also contains the MapMath.java file which contains a variety 
of map related routines which are not used by the projection routines 
and , thus, were removed from the ProjMath.java file which is in the  
JMPL directory.  Explore them as you see fit.

JMPL\ contains all of the library files.

projTest\ contains the ProjectionTest.java and ProjectionFrame.java 
files which are the two files which make up the test program.

===============================================================

To run the program simply double click the JMPL.jar file.  Each time
the program is run it creates, or writes over, a log.txt file.  This is 
the file into which the program writes all of its test results data.  
This file can easily get rather large - 100K bytes to over 20M bytes. 
The log.txt file will always be written into the directory in which the 
ProjTest.jar file is located.  The program never writes to any other 
directory.

Source: README.txt, updated 2013-03-10