rgleason / route_pi

Route Plotting plugin for OpenCPN. Plots Great Circle routes, Limited Circle Routes and Rhumb lines.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Route Plot Plugin for OpenCPN by Walbert Schulpen (SaltyPaws)
=============================================================

The purpose of Route additional Great Circle, Limited Circle and Rhumb line plotting capability to OpenCPN. 

While the easiest way to get from A to B is by plotting a constant heading course (Rhumb Line), the shortest possible way is by sailing a constant arc (Great Circle). This is due to the curvature of the earth, and the way this is applied in Mercator projections. This Great Circle could take you into the high or low latitudes, which most sailors prefer to avoid due to icebergs and/or severe weather. When using the Limited circle option you can enter the most southern/northern latitude you are comfortable navigating, and the limited circle route will keep you on that latitude.

The easiest way to import way points is with the right click menu anywhere on the map ("Start/Finish Route Here").

The Decimal degree is the most flexible input window, and will accept all common formats (dms, d m.mm and d .dddddd) as long as the coordinates are formatted properly. (e.g 10.999 or 10 59.99N or 10 59 59N. Use the paste button to paste coordinate pairs (separated by <tab> or comma). When importing decimal degree way point pairs the coordinates can be separated by just a space. If you want to paste the individual coordinates, just paste them directly in the appropriate window.

Please report suggestions for improvements or bugs in this location:
http://github.com/SaltyPaws/route_pi/issues


Changelog
=========
Changes to 1.2:
- Update to new build system
- Remove error message on cancelled save (FS#1069)
- Fix doubled ".gpx" file extension (FS#1070).
- Fix typos (FS#1071)
- Fix bug where GCL did not produce GPX if limit was not met FS#2020
- GCL distance is now respected in all segments (FS#1068)
- When entering waypoint in degree, minute and second format fractions can now be used (FS#1075)
- Pasting of coordinate pairs now implemented FS#1131-1
- Use the same naming convention for waypoints of limited-circle routes as for great-circle and rhumb-line routes FS#1131-2
- Waypoint distance has been added to start, finish and intermediate points
- When finish or intermediate point is within 25% of last waypoint distance, the previous point is omitted to prevent very close spaced waypoints FS#1131-3(first)
- Direct export of route to OpenCPN 
- degree minute second, when this tab is open and when calculate or export is pressed, execute convert function first. Change to decimal tab.
- Input in coordinates is now much more flexible.
- Added right click options Start and finish route here
- enable copy paste all coordinate formats (D MM.MM and DMS) from OpenCPN, message with how conversion was done.
- Vincente function replaced with the one from OpenCPN for consistency and to remove apace licence mention.
- Added ddd mmm.mmm entry tab (Github Issue #11), and About with some short instructions.



Editing
=========
Layout of the forms is edited with wxFormbuilder (file Route_pi.fbp). Be sure to run degreefix.sh after, so prevent a windows compilation error.
(Ubuntu/Linux) if the repository version is not recent enough, use this to intall the latest version of wxFormbuilder:
	sudo add-apt-repository -y ppa:wxformbuilder/release
	sudo apt-get update
	sudo apt-get install wxformbuilder
After making an edit with the formbuilder, use the degree_fix.sh bash file to ensure windows compilation goes without a hitch.


Editing of the source can be done with Code::Blocks IDE (file Route_pi.cbp)



Compiling
=========
This plugin can now be compiled as stand alone from a build folder in route_pi:
* cd ..
* cd build
* cmake ../
* make
* sudo make install
* sudo make package (In order to make a .deb package. You may need to install rpm: sudo apt-get install rpm)
 
If opencpn is not installed as a package, and you get the error dependency not met, install the OpenCPN repository:
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:opencpn/opencpn
sudo apt-get update
sudo apt-get install opencpn


For reference, the old method (still works) is shown below.


You have to be able to compile OpenCPN itself - Get the info at http://opencpn.org/ocpn/developers_manual

* go to the plugin subdirectory in your OpenCPN source tree
* git clone https://github.com/SaltyPaws/route_pi.git

Build as normally:

* cd ..
* cd build
* cmake ../
* make
* sudo make install

Testing
=======
The following tests should be performed after a code change, to check the correct responses:

In Decimal degree window:
Paste 40°42'46.021"N in Start/Finish of Route Lattitude response should be 40.7127836
Paste 74°0'21.388"W in Start/Finish of Route Longitude response should be -74.00594111111111
Copy lat/lon and use "paste" button for each of the opencpn coordinate display modes (decimal degree, degree, decimal minute and degree minute second)
Coordinate shoud be converted correctly


In °'" window:
Enter 40°42'46"N in Start&Finish of Route Lattitude
Enter 74°0'21"W in Start&Finish of Route Longitude 
Press "convert to degree" button
Response should be 40.7128 and -74.0058 in both latitude and longitude boxes.





License
=======
The plugin is licensed under the terms of GPL v2 or, at your will, later.

About

Route Plotting plugin for OpenCPN. Plots Great Circle routes, Limited Circle Routes and Rhumb lines.


Languages

Language:C++ 92.4%Language:CMake 4.1%Language:C 2.9%Language:Perl 0.5%Language:Shell 0.2%Language:Batchfile 0.0%