A Java desktop application that visualizes GPS trip data from a CSV file on an interactive map. It animates the trip's path, showing the route taken over time with a custom icon.
- Interactive Map Display: Uses
JMapViewer
to render an interactive map from OpenStreetMap. - Trip Animation: Animates the entire trip path, drawing the route and moving a custom marker (a raccoon!) along the coordinates.
- Customizable Animation Speed: Users can select the total animation duration (15, 30, 60, or 90 seconds) from a dropdown menu.
- Stop Detection: Includes an option to either show the complete journey or a filtered version that excludes detected stops, providing a view of only the moving segments of the trip.
- Swing GUI: A simple and clean user interface built with Java Swing for controlling the animation.
- Language: Java
- GUI: Java Swing
- Mapping Library: JMapViewer
- Data: GPS coordinates and timestamps from a
.csv
file.
This project is built with standard Java and can be compiled and run from the command line.
- Java Development Kit (JDK) 8 or higher.
-
Navigate to the project's root directory.
-
Compile the source files into the
bin
directory:javac -d bin -cp "lib/JMapViewer.jar" src/*.java
-
From the project's root directory, run the
Driver
class:java -cp "bin;lib/JMapViewer.jar" Driver
-
The application window will appear. Use the controls to select an animation time, choose whether to include stops, and press "Play" to start the visualization.
.
├── lib/ # Contains the JMapViewer library
├── src/ # Java source code
│ ├── Driver.java # Main application class with GUI setup
│ ├── TripPoint.java # Handles data parsing and stop detection
│ └── IconMarker.java # Custom map marker for the animation
├── bin/ # Compiled .class files
├── triplog.csv # Sample GPS data file
└── raccoon.png # Image for the animation marker