Hi,
Here is a patch + source files for the route manager dialog to test. Get the .zip.doc file and rename it, removing the .doc extension.
The dialog will likely become a part of a future openCPN version.
Status: All features works (at least here), though there are still glitches.
Zoom to works well with vector charts, not so well with raster. For example skew is not considered, and a new map is not selected if you zoom to a route outside your current map, and the zoom function does not select a better map if one is avalable. I do not know how to fix this currently, maybe it will go away when quilting is implemented?
Hiding routes does not hide the route points for selection. This requires changing the way selection is made, so I need to discuss that with other developers. See comment in routemanagerdialog.cpp.
You can press CTRL to make a route exclusively visible when clicking the visibility column, Zoomto and Activate buttons, this is not visible in the GUI.
There is no indication of the active route in the dialog.
I may have forgotten something...
Activating and zooming to routes will automatically ensure that they are visible.
Activating a route will automatically zoom to it, if follow mode is off.
Zooming to a route is not possible if follow mode is on, visualized by the button being disabled in that case.
Some features are still missing, possible actions as "copy route", and a tooltip to display a bit more information about a route when moused over. I will work on the latter next.
The ZoomtoRoute function could possibly be moved to the chartcanvas file, and added to the route context menu, do you think it would be nice to have it accessable from there?
To view the dialog after building, press F9 or rightclick your chart and select "Route Manager..." from the context menu.
The patch is mostly about Makefile.in, you may skip patching that file and run autoreconf to have it built according to your system. I wonder if it is clever to have that file in cvs?
The patch file is made from the opencpn directory, so just place it there and run 'patch < routemanagerdialog.patch' from within that directory.
For windows users, you need to add routemanagerdialog.cpp to your building system (proj file?). Please let me know if I need to care for this.
The header file (routemanagerdialog.h) goes into opencpn/include, and the source file (routemanager.cpp) goes into opencpn/src.
After patching and adding the files, rerun the configure script (autoconf users) or whatever else you do, and rebuild.
What to test
Please test if all functions of the dialog is working as you expect, and report any crashes, misfunctions and other thoughts you may have here.
If you are a developer, you are wellcome to review the code and report your thoughts and comments.
Good find! No matter what you think of there is someone whos been there done that. I trust members will have a look and agree its a good feature to have.
The geolocation uses geogarage.js (52kb) to do the transparency display stuff . The blurb on developers site say project is based on open source so it may be able to be used but will obviously need transcribing js > c++ . I had a brief look at the code. It is commented and seems to be reasonably easy to follow- at least for those more experienced than me. I also tried to dig into the Gimp implementation for transparency but its a bit over my head. I think its contained in the gdk part but gimp is a huge mass of code.
Quote:
Originally Posted by Psyches
otya, Jonas,
For an example of both layering possibilities and current issues with other implementations of quilting, see this geolocation.
Mark
The geolocation uses geogarage.js (52kb) to do the transparency display stuff . The blurb on developers site say project is based on open source so it may be able to be used but will obviously need transcribing js > c++ . I had a brief look at the code. It is commented and seems to be reasonably easy to follow- at least for those more experienced than me. I also tried to dig into the Gimp implementation for transparency but its a bit over my head. I think its contained in the gdk part but gimp is a huge mass of code.
Painting transperant objects/layers should not pose any problem when painting on an application window Layering is not very difficult either, it is mostly a question of deciding how to design it, and how to utilize and expose it.
Small problem with $ patch < routemanagerdialog.patch
Quote:
can't find file to patch at input line 17876
Perhaps you should have used the -p or --strip option?
The text leading up to this was:
--------------------------
|Index: include/chcanv.h
|================================================= ==================
|RCS file: /cvsroot/opencpn/opencpn/include/chcanv.h,v
|retrieving revision 1.39
|diff -u -b -r1.39 chcanv.h
|--- include/chcanv.h 2 Jan 2010 02:16:25 -0000 1.39
|+++ include/chcanv.h 2 Feb 2010 21:25:42 -0000
--------------------------
I worked around that by adding the files manually, but then I get the following during make:
Quote:
mv -f .deps/routeman.Tpo .deps/routeman.Po
make: *** No rule to make target `src/routemanagerdialog.cpp', needed by `routemanagerdialog.o'. Stop.
For windows users, you need to add routemanagerdialog.cpp to your building system (proj file?). Please let me know if I need to care for this.
Would be great if you can do so!
I'd like to test (and maybe help) it and give you some feedback. But it's the first time for me having to compile things myself.
I've downloaded and installed Microsoft Visual C++ 2008 Express Edition running on Windows 7 Ultimate 32Bit.
So maybe a short description (or a link) of 'How to ...' will be enough to achieve the goal.
Would be great if you can do so!
I'd like to test (and maybe help) it and give you some feedback. But it's the first time for me having to compile things myself.
Hi Gunther,
unfortunately I do not know how opencpn is built in windows. I believe people use custom files to do that, maybe another windows user could help here?
I see a CMake file in opencpn, but i havent heard about it being used - maybe that would be nice, since cmake is cross platform?
Yes, that would be very nice indeed.
I never made this before and it seems a little bit 'complicated' , but I'm sure to get it to work with a little help.
So I wait and see if someone can help me.
Because I'm quite sure that your Route manager is a step forward for OCPN.
I had similar experience as idpnd with patch but sorted that out. There where no issues when compiling.
I have done some testing. Works great when only using CM93. But as you say, raster charts are a bit problematic.
I had full coverage of small scale charts loaded for the route areas, but generally only the background vector chart (black/blue) was shown when zooming to route. It was impossible to change charts, the chart bar was blocked, as was manual zooming with the mouse.
Another small thing. I imported existing routes from the hard-disk, these had no names so it was difficult to differentiate between them. Why not print the file name of the imported gpx-file if a route name is missing?
All in all, ...congratulations to this nice feature, you have already come a long way with this feature. I'm looking forward to see more of your ideas, turn into code
Re: my yesterday's problem: of course, my mistake in hand-crafting AIS messages. They were too short... Unfortunately, real Type 21 messages are hard to find. Some working samples (shown on the picture):