This means that cylinder-projection charts (eg. Mercator) can be used. It is not required that each rectangle are scanned in the same resolution, that each rectangle are scanned from charts of the same scale, or that each rectangle covers the same area.
For example in the demo, the rectangles are 10'x10'.
Charts can be GIF's or JPEG.s. Each rectangle is stored in a file named after the South-West corner of the rectangle, the area it covers and a number, DPD (Dots Per Degree) that describes the quality of the scanned rectangle. I.e.: "55g50N12g40E_10x20q4000.jpg" is a 4000DPD JPEG chart that covers the rectangle 55°50'N 12°40E' to 56°00'N 13°00E'.
The DPD is used when there are multiple charts for the same area. Different charts are used depending on the scale--When zooming out charts with lower DPD are used. I.e. on a 1:70000 chart 1 degree latitude is 1.8 meter or 70 inches. If the chart is scanned at 72 Dot Per Inch, the quality is 62*72 = 5040 DPD. The DPD measure does not have to be very accurate it is just a way to help EPS decide which chart to use.
All chart rectangles must be placed in a directory, default 'EPSDIR/charts'.
If EPS is to be used across a network, EPSDIR/charts must contain a file 'index.html' that contains the names of the chart-files. One name per line.
The "Save options" item in the "Save" menu saves these options:
How to use the EPS system
When the application is started, a window appears. The window can be resized.
On the left is the chart. To the left and below the chart are two scrollbars. At the top 8 are buttons that triggers actions. To the right a number of panels are located. The input field at the top is used for all inputs except position. Positions are entered through the position fields below the input field.
Below the position fields the way-point list is located. A way-point can be activated by clicking on it. Below the way-point list, a list of routes is located. When a route is selected by clicking on it, a list of the way-points in the route appears in the "way-point in route" list. At the bottom the output Area is located.
When clicking with the left mouse-button on the charts, the position is displayed, and the chart cursor is set to this position. The chart cursor is displayed as:
When the bubble of a scrollbar is located at one of the ends, it can be moved to the center of the scrollbar (without scrolling the chart) by clicking on the small triangles at the ends of the scrollbar. In this way it is possible to scroll infinitely.
The zoom-bar allows zooming in and out.
Way-points are shown on the chart as dots with a name. The color of the dots are set in the "Set" menu. Default is red.
Routes are shown as lines. At the center of each leg of a route, the length of the leg is shown. At each way-point in a route the distance covered since start is shown. The color of the lines are set in the "Set" menu. Default is blue.
The track is shown as green lines. the EPS arbitrarily selects certain points shown as squares, between which the average speed is shown. The color of the track are set in the "Set" menu. Default is green.
Chart rectangles are loaded as they become visible (by zooming or scrolling). Therefore the system will be a little slow initially. But charts are cached, so once the charts are loaded, it should work smoothly.
If a route file is read that contains a way-point that is not in the way-point list, it is added to the way-point list.
Garlink/WinGPS routes and way-point files should also work. This is the format exported and imported by WinGPS (.SWP and .RWP files). Track files cannot be read or written. But if someone send me a track file, I will implement it.
I will add support for other formats if I get a request with a specification of the format and a sample file.
The initial files are useful if you use eg. the same waypoint file most of the time.
Default are the demo files ("w0.wpt", "r0.rt", and "t0.trk"). To get rid of the demo files choose "All" in the "Delete" menu and then "Options" in the "Save" menu.
The marked waypoint is shown with a "*".
Communicating with GPS unit
Set the port by typing the port name in the input field and select "Port Name"
in the "Set" Menu. On Windows platforms ports are named "COM1", "COM2" etc. On
Linux, ports are named "/dev/ttyS0", "/dev/ttyS1", etc.
On Windows platforms the Java Communications API must be installed for communication with GPS-unit.
On Linux RXTX must be installed. RXTX can be used with its own API or using the Solaris/Sparc CommAPI. EPS is compiled with JavaComm support, so if you want to use the precompiled EPS with RXTX you need to install the Solaris CommAPI.
You can also compile EPS with the basic RXTX. Then you just have to
uncomment the line "import gnu.io.*;" and remove the line "import
javax.comm.*;" in the files "JavaXIO.java" and "Commselect.java".
The "Track" item in the "Save"-menu can be used to save positions collected from NMEA output.
The GPS unit must be connected, turned on and set to output NMEA (the "Interface" menu
on Garmin units).
The GPS unit must be connected, turned on and set to output RTCM input (the "Interface" menu
on Garmin units, use RTCM/NMEA if you also want NMEA output).
The speed must be 4800 baud. RTCM/NMEA is always 4800 baud.
See dgps-ip for more info
The GPS unit must be connected, turned on and set to GRMN/GRMN in the "Interface" menu
on the GPS unit.
Way-point SVANEM is Svanemøllen harbour. This is where my boat is.
The way-points, routes, and track-files, "w0.wpt", "r0.rt", and "t0.trk", are loaded at start-up.
A part of the track file is constructed.
The "eps_all.zip" distribution (zip) contains source code, classes
and demo charts. It is approx. 700KByte. It the same as above, just packed as a zip-file.
The "EPS.jar" distributions contains contains source code, classes
and demo charts. It is possible to test a jar distribution by executing: "java -jar EPS.jar -j".
If executed as "java -jar EPS.jar" EPS will look for charts etc in the current directory.
EPS.jar can be unpacket by "jar xf EPS.jar". Then execute is as "java EPS".
If EPS is started from a local file-system (with "Open File" or with a
"file:/..." URL) EPS will ask for permission to the file-system. If this is
granted, EPS can save Waypoints, Routes, and Tracks to disk.
If EPS is started over a network, Waypoints, Routes, and Tracks cannot be saved.
Netscape cannot communicate with GPS-units.
EPS can be compiled with javac (JDK 1.1 or JDK 1.2).
Delete all .class files and do "javac EPS.java".
I did compile it with MS Visual J++ once.
If EPS is to be used from Netscape the file EPS_Netscape.java must be compiled
with the Netscape classes (java40.jar). I.E add java40.jar to CLASSPATH and
compile EPS_Netscape.java. If Netscape is not used for EPS, it is not
necessary to compile EPS_Netscape.java.
I compile EPS line this (from the Makefile):
NMEA
EPS can read NMEA output from the GPS unit. Select "Display NMEA output" in the file Menu.
EPS records positions and show the track. EPS ensures that the current position is always displayed on the screen, but it is possible to zoom and scroll while displaying NMEA output.
Dgps IP
Set server host and port in "set" menu. Start "DGPS IP" in the File menu.
Garmin Protocol
If the GPS unit supports the Garmin protocol, EPS can up- and download waypoints,
tracks, and routes. Use the "File"-menu.
The demo chart
Handmade by me. I don't want to get in trouble with the copyright holders, so
you won't get the real thing.
It is a nautic chart (1:70000) of the northern part of Øresund between Denmark
and Sweden. The island Ven is where Thycho Brahe had his observatory,
"Uranienburg".
TO DO
Known Problems
Communication with GPS unit does not work in Netscape on Win32. The
reason is that I can not get "Java Communications API" to work with
Netscape. If anyone succeeds, please tell me.
Downloading and installing
Download from
The EPS SourceForge page
The "eps_all.tgz"> distributions (tar,gz) contains source code, classes
and demo charts. It is approx. 700KByte. It is a gzip'ed tar file. Can be unpacked with winzip.
Running EPS
JDK: run as "java EPS"
EPS needs at least version 1.1.5 of JDK.
Netscape: load "netscape.html".
This can be used to run EPS across a network.
EPS needs at least Netscape 4.5.
Other Browsers (MS Internet Explorer 4.0): load "browser.html".
You will not be able to write to disk or communicate with GPS.
Compiling EPS
EPS is compiled. But you can edit the source code and recompile it yourself.
export CLASSPATH=.:${HOME}/java/commapi/comm.jar; javac EPS.java EPS_Browser.java
export CLASSPATH=.:${HOME}/java/java40.jar; javac EPS_Netscape.java
The last line is only necessary if EPS must run on Netscape and have access to
the file system.
Platforms
Software tested on Linux/JDK, NT/JDK, Personaljava, Netscape 4.5.
Tested with a Garmin GPS 38.
Sharp Zaurus
Eps will run on Sharp Zaurus, a PDA with 240x320 Screensize, running Linux/Qt and Jeode Java-Runtime.
We provide a Installation Package (ipk) in the Downloadarea on sourceforge.net for this PDA wich can be installed with Advanced Package Manager, available like many other interesting apps on killefiz.de/zaurus
Please note: After installing the ipk you have to make /home/QtPalmtop/bin/runeps executable with chmod 777 at the commandline, therefore you will need a terminal installed on your Zaurus.
Comm-API
If you like to use your gps with your Sharp Zaurus (I tested it with a Garmin GPS12), you have to download java-comm-library available at java.sun.com installed in /home/QtPalmtop/java/comm.jar.
EPS is known working fine with Sharp Rom Version 2.38 and 3.10.
Garmin communication code is based on Gpstrans by Carsten Tschach
(tschach@zedat.fu-berlin.de)
Niels Elgaard Larsen
email: elgaard@diku.dk