Cruisers Forum
 


Join CruisersForum Today

Reply
 
Thread Tools Rate Thread Display Modes
Old 15-02-2013, 10:47   #16
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 9,320
Re: grib enhancements

I have deleted the grib_pi directory in opencpn-git/plugins.
Now I''d like to issue a (similar to weatherfax_pi)

git clone git://github.com/seandepagnier/weatherfax_pi.git

to download the new grib_pi. I see it is a branch called "grib_enhancements". What git clone do I isssue? Does that mean I should NOT have deleted the grib_pi?

Thanks.
__________________

__________________
rgleason is offline   Reply With Quote
Old 15-02-2013, 11:02   #17
Registered User

Join Date: Feb 2010
Location: On the go. Not in Prague.
Posts: 4,016
Re: grib enhancements

This is a different beast, a clone of the whole opencpn source repository, not just the plugin itself...
go to your toplevel OpenCPN source directory and do
Code:
git remote add sean git://github.com/seandepagnier/OpenCPN.git
followed by
Code:
git fetch --all
Code:
git branch -a
will now show that you have more branches available
Code:
git checkout sean/grib_enhancements
will then switch you to the branch where the grib plugin is modified.
Once in this branch, try to build as normally
__________________

__________________
nohal is offline   Reply With Quote
Old 15-02-2013, 11:08   #18
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 9,320
Re: grib enhancements

Checked the name grib_pi.dll seems ok.

Pavel, in both cases 1224 and 1405 the associated library failed to load.
See attached log and setting files.

-Would like to know how to git clone grib_enhancements -Oh I see note above.
-Would like to know if there is a way of running debug on plugins?
Attached Files
File Type: doc Ocpn1405-Log.doc (61.4 KB, 32 views)
File Type: doc Ocpn1405-Settings.doc (13.1 KB, 24 views)
File Type: doc Ocpn1224-Log.doc (61.3 KB, 22 views)
File Type: doc Ocpn1224-Settings.doc (13.1 KB, 30 views)
__________________
rgleason is offline   Reply With Quote
Old 15-02-2013, 11:13   #19
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 9,320
Re: grib enhancements

Ok, regarding grib_enhancements --different beast, clone of whole opensource repository.

Perhaps I should keep the development directory that I have now "opencpn-git" that you and Jesper worked hard helping me get it set up, and just create a new directory called "opencpn-git-grib" and compile separately out of that?

PS: I un-deleted the grib_pi directory that I deleted earlier, for this reason, ...I thought it was a different beast.
__________________
rgleason is offline   Reply With Quote
Old 15-02-2013, 12:12   #20
Registered User

Join Date: Feb 2010
Location: On the go. Not in Prague.
Posts: 4,016
Re: grib enhancements

Debugging plugins is pretty easy, but you have to touch the code. I'm used to touch pluginmanager.cpp, line 169 and replace
Code:
m_plugin_location = plugin_dir;
with something like
Code:
m_plugin_location = _T("C:\\ocpnsrc\\build\\plugins\\grib_pi\\Debug\\");
Note the double backslashes in the path - they are necessary on windows.
Of course the other way without touching the code is to copy the debug plugin DLLs to the actual location where OpenCPN looks for them (you find it in the log while running the debug build), but you have to do it every time the code of the plugin changes and it's rebuilt, so it's actually more work...
Also don't forget to revert the change to pluginmanager.cpp when you want to do a normal build...
__________________
nohal is offline   Reply With Quote
Old 15-02-2013, 12:30   #21
Registered User

Join Date: Feb 2010
Location: On the go. Not in Prague.
Posts: 4,016
Re: grib enhancements

Quote:
Originally Posted by rgleason View Post
Ok, regarding grib_enhancements --different beast, clone of whole opensource repository.

Perhaps I should keep the development directory that I have now "opencpn-git" that you and Jesper worked hard helping me get it set up, and just create a new directory called "opencpn-git-grib" and compile separately out of that?

PS: I un-deleted the grib_pi directory that I deleted earlier, for this reason, ...I thought it was a different beast.
You don't have to worry about having many remotes Just get used to switching between the branches and you will feel happy. My source tree for example looks like this right now...
Code:
nohal@knut ~/source/opencpn/src $ git remote -v
bdbcat    git://github.com/bdbcat/OpenCPN.git (fetch)
bdbcat    git://github.com/bdbcat/OpenCPN.git (push)
github    git@github.com:nohal/OpenCPN.git (fetch)
github    git@github.com:nohal/OpenCPN.git (push)
jesper    https://github.com/JesperWe/OpenCPN.git (fetch)
jesper    https://github.com/JesperWe/OpenCPN.git (push)
jonpan    git://github.com/jonpan/OpenCPN.git (fetch)
jonpan    git://github.com/jonpan/OpenCPN.git (push)
opencpngithub    git@github.com:OpenCPN/OpenCPN.git (fetch)
opencpngithub    git@github.com:OpenCPN/OpenCPN.git (push)
origin    git://opencpn.git.sourceforge.net/gitroot/opencpn/opencpn (fetch)
origin    git://opencpn.git.sourceforge.net/gitroot/opencpn/opencpn (push)
registry    git://github.com/registry/OpenCPN.git (fetch)
registry    git://github.com/registry/OpenCPN.git (push)
rolker    git://github.com/rolker/OpenCPN.git (fetch)
rolker    git://github.com/rolker/OpenCPN.git (push)
sean    git://github.com/seandepagnier/OpenCPN.git (fetch)
sean    git://github.com/seandepagnier/OpenCPN.git (push)
sethdart    https://github.com/SethDart/OpenCPN.git (fetch)
sethdart    https://github.com/SethDart/OpenCPN.git (push)

nohal@knut ~/source/opencpn/src $ git branch -a
* (no branch)
  Toolbox_WIP
  datastream
  from_ownship
  gpsbabel
  inst_lang
  jonpan_cleanup
  mapnik
  master
  nmeasources
  pjotr
  plugin_msg
  routeprint
  small_patches
  stable
  stablefixes
  swampex
  wpt_viz
  xpmhotspot
  remotes/bdbcat/datastream
  remotes/bdbcat/master
  remotes/bdbcat/opengl
  remotes/bdbcat/stable
  remotes/bdbcat/world
  remotes/github/build_platform
  remotes/github/cppcheck
  remotes/github/cppcheck1511
  remotes/github/currents_scale
  remotes/github/datastream
  remotes/github/default_icon
  remotes/github/dimmer
  remotes/github/ext_symbology
  remotes/github/from_ownship
  remotes/github/gpsbabel
  remotes/github/inst_lang
  remotes/github/jonpan_cleanup
  remotes/github/mapnik
  remotes/github/master
  remotes/github/new_plib
  remotes/github/nmeasources
  remotes/github/pjotr
  remotes/github/plugin_msg
  remotes/github/poiman
  remotes/github/routeprint
  remotes/github/small_patches
  remotes/github/stablefixes
  remotes/github/swampex
  remotes/github/user_tc
  remotes/github/xpmhotspot
  remotes/jesper/3.0_RC
  remotes/jesper/AUIConsole
  remotes/jesper/ActiveRoute
  remotes/jesper/Chartsymbols
  remotes/jesper/Dashboard
  remotes/jesper/Dashboard_WIP
  remotes/jesper/Dave
  remotes/jesper/DynamicTracking
  remotes/jesper/GUI
  remotes/jesper/GUI3
  remotes/jesper/GreatCircle
  remotes/jesper/KMLOverlay
  remotes/jesper/KMLSupport
  remotes/jesper/Logbook
  remotes/jesper/Options
  remotes/jesper/Rollovers
  remotes/jesper/UI-More
  remotes/jesper/VDR
  remotes/jesper/WorldChart
  remotes/jesper/beta30_stable
  remotes/jesper/beta31_stable
  remotes/jesper/cvs
  remotes/jesper/lightsectors
  remotes/jesper/macosx
  remotes/jesper/master
  remotes/jesper/stable
  remotes/jonpan/CommsPlugin2
  remotes/jonpan/beta30_stable
  remotes/jonpan/beta31_stable
  remotes/jonpan/master
  remotes/jonpan/stable
  remotes/opencpngithub/Dashboard_WIP
  remotes/opencpngithub/KMLOverlay
  remotes/opencpngithub/Logbook
  remotes/opencpngithub/VDR
  remotes/opencpngithub/beta30_stable
  remotes/opencpngithub/beta31_stable
  remotes/opencpngithub/master
  remotes/opencpngithub/stable
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
  remotes/registry/beta30_stable
  remotes/registry/beta31_stable
  remotes/registry/harbour_approach
  remotes/registry/master
  remotes/registry/routeplanning
  remotes/registry/routeplanning_for_review
  remotes/registry/stable
  remotes/rolker/ais_an_query
  remotes/rolker/ais_an_query_submit
  remotes/rolker/ais_an_query_submit_single
  remotes/rolker/ais_tcp
  remotes/rolker/beta30_stable
  remotes/rolker/beta31_stable
  remotes/rolker/datastream
  remotes/rolker/datastream_crash_on_exit_fix
  remotes/rolker/datastream_socket_nmea_improvement
  remotes/rolker/datastream_udp_work
  remotes/rolker/master
  remotes/rolker/stable
  remotes/sean/beta30_stable
  remotes/sean/beta31_stable
  remotes/sean/grib_enhancements
  remotes/sean/master
  remotes/sean/stable
  remotes/sethdart/KMLOverlay_MN
  remotes/sethdart/Options
  remotes/sethdart/Toolbox_WIP
__________________
nohal is offline   Reply With Quote
Old 15-02-2013, 14:04   #22
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 9,320
Re: grib enhancements

Very enlightening Pavel, thank you.
I am going to work my way through these pearls of wisdom, step by step,
and augment a little for the Development Environment thread. Then perhaps I'll add it to the Wiki when I know better what I am doing.

Thank you..
__________________
rgleason is offline   Reply With Quote
Old 15-02-2013, 14:41   #23
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 9,320
Re: grib enhancements

Pavel, did all the git commands for grib_enhancement above.

"...will then switch you to the branch where the grib plugin is modified.
Once in this branch, try to build as normally"

Okay first I will Build using MS VC++2010 Express and see if it works.
Then I'd like to try to modify the pluginmanager line 169.
-Which pluginmanager.cpp should be modified?
Opencpn-git/src directory OR
Opencpn-git/Opencpn ?
__________________
rgleason is offline   Reply With Quote
Old 15-02-2013, 15:11   #24
Registered User

Join Date: Feb 2010
Location: On the go. Not in Prague.
Posts: 4,016
Re: grib enhancements

Opencpn-git/src is the one that contains the source.
Opencpn-gi/Opencpn is something that shouldn't exist at all...
Usual content of the Opencpn source checked out from git (+ build directory created by hand)
Code:
build
buildosx
buildwin
CMakeLists.txt
data
FindGLEW.cmake
Findgps.cmake
FindPortaudio.cmake
FindTinyXML.cmake
include
INSTALL
NSIS.template.in
opencpn.spec.in
plugins
po
README
src
VERSION.cmake
version.h.in
wxWidgets
Pavel
__________________
nohal is offline   Reply With Quote
Old 15-02-2013, 16:09   #25
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 9,320
Re: grib enhancements

Following Pavel's excellent instructions above re git grib_enhancement (a branch git adding sean/..). Then using MS VC++ 2010 Express, built for Release, opencpn, and separately built for Release, weatherfax_pi and grib_pi. They all built fine with 0 failures.

Then from the build I copied opencpn.exe from its Release subdir to OpenCpn3.1.1405 directory, and weatherfax_pi and grib_pi from their Release subdirectories into the plugins dir.

Opencpn3.1.1405 started, enabled Grib_pi in settings and then clicked on Grib Icon,
set the Grib directory, selected a big Noaa file 23mb, a ridiculous 15 day one of a large area across the entire N. Atlantic and ran it in Play mode with loop checked.

It ran fine (this file was just wind and pressure) with pressure checked and isobars turned on. I did this in both OpenGL checked and unchecked using Intel Integrated Graphics rather than Nvidia graphics card (set in the display for Opencpn). I believe it would run even faster with Nvidia.

The only differences noted between OpenGL and not were:
1. OpenGl faster, looped to beginning under play, and non Isobar anomoylies.
2. Non- Opengl had Isobar anomalies (horizonatal lines and stuff).
3. Non- Opengl did not LOOP even though it was checked.

This is a much improved feature set. It worked with VLM 5 day worldwide gribs and NOAA 15 day gribs with Wind and Pressure.

There are just a few things I noted. I was fooling around with the spacing and size of arrows and such and could not seem to understand what they controlled, or they did not change what I expected very much. It may be me getting used to the interface.

Also it would be nice to be able to control thickness of arrows, color or arrows, length of barbs, thickness and color of isobars, style of pressure labels (current ones are not blended in with the isobars enough) size, color and background etc.
These are visual improvements.

It would also be nice to have the arrows change color with the changes in wind speed for example.

qtVLm has a highly developed downloader for gribs that is very nice to use. Something like that would be very nice. I think Sean and Pavel know qtVlm and have used the grib tools in that program.

Next to do:
1. Download NOAA gribs with all data available and test.
2. Remove setting for Intel Integrated graphics so it uses Nvidia graphics card.
3. Try to modify pluginmanager.cpp so it can debug the new grib_enhancements.
Thus learning new program debug tools.

Examples below Opengl checked and unchecked (unchecked has horiz isobar lines).

Congratulations on some great improvements. Thank you!

Dell XPS15 Laptop with Nvidia Geforce GT 540M with Win 7
Attached Thumbnails
Click image for larger version

Name:	Grib_Enhancement-with-OpenGL-checked-Intel-Integrated-Graphics.jpg
Views:	118
Size:	455.8 KB
ID:	54882   Click image for larger version

Name:	Grib_Enhancement-with-OpenGL-NOT-checked-Intel-Integrated-Graphics.jpg
Views:	117
Size:	452.0 KB
ID:	54883  

__________________
rgleason is offline   Reply With Quote
Old 15-02-2013, 18:13   #26
Registered User
 
boat_alexandra's Avatar

Join Date: Aug 2009
Location: Masachusetts
Boat: bristol 27
Posts: 2,803
Re: grib enhancements

Quote:
Originally Posted by rgleason View Post
Following Pavel's excellent instructions above re git grib_enhancement (a branch git adding sean/..). Then using MS VC++ 2010 Express, built for Release, opencpn, and separately built for Release, weatherfax_pi and grib_pi. They all built fine with 0 failures.

Then from the build I copied opencpn.exe from its Release subdir to OpenCpn3.1.1405 directory, and weatherfax_pi and grib_pi from their Release subdirectories into the plugins dir.

Opencpn3.1.1405 started, enabled Grib_pi in settings and then clicked on Grib Icon,
set the Grib directory, selected a big Noaa file 23mb, a ridiculous 15 day one of a large area across the entire N. Atlantic and ran it in Play mode with loop checked.

It ran fine (this file was just wind and pressure) with pressure checked and isobars turned on. I did this in both OpenGL checked and unchecked using Intel Integrated Graphics rather than Nvidia graphics card (set in the display for Opencpn). I believe it would run even faster with Nvidia.

The only differences noted between OpenGL and not were:
1. OpenGl faster, looped to beginning under play, and non Isobar anomoylies.
2. Non- Opengl had Isobar anomalies (horizonatal lines and stuff).
3. Non- Opengl did not LOOP even though it was checked.
2. Does this occur with the older grib plugin before my changes? I think it does and I fixed it for opengl only. I'll look into it for non-opengl.

3. I dont understand that on since the looping has nothing to do with opengl.
Quote:
This is a much improved feature set. It worked with VLM 5 day worldwide gribs and NOAA 15 day gribs with Wind and Pressure.

There are just a few things I noted. I was fooling around with the spacing and size of arrows and such and could not seem to understand what they controlled, or they did not change what I expected very much. It may be me getting used to the interface.
Size does nothing yet, it is not implemented. Spacing is bad and needs rework

Quote:
Also it would be nice to be able to control thickness of arrows, color or arrows, length of barbs, thickness and color of isobars, style of pressure labels (current ones are not blended in with the isobars enough) size, color and background etc.
These are visual improvements.

It would also be nice to have the arrows change color with the changes in wind speed for example.

qtVLm has a highly developed downloader for gribs that is very nice to use. Something like that would be very nice. I think Sean and Pavel know qtVlm and have used the grib tools in that program.
Yes, all of these need to be options.

Can you conceive of a more intuitive interface which would accomplish this goal as well as future goals?
Quote:
Next to do:
1. Download NOAA gribs with all data available and test.
2. Remove setting for Intel Integrated graphics so it uses Nvidia graphics card.
3. Try to modify pluginmanager.cpp so it can debug the new grib_enhancements.
Thus learning new program debug tools.

Examples below Opengl checked and unchecked (unchecked has horiz isobar lines).

Congratulations on some great improvements. Thank you!

Dell XPS15 Laptop with Nvidia Geforce GT 540M with Win 7
Wow, you must have a pretty fast computer to be able to generate the isobars for wind for such a large area like that and be able to play it. There are many possible optimizations for isobar generation not implemented.
__________________
boat_alexandra is offline   Reply With Quote
Old 16-02-2013, 05:52   #27
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 9,320
Re: grib enhancements

The only differences noted between OpenGL and not were:
1. OpenGl faster, looped to beginning under play and kept running, and no Isobar anomoylies.
2. Non- Opengl had Isobar anomalies (horizonatal lines and stuff).
3. Non- Opengl did not LOOP even though it was checked. -Tried this twice.

2. Does this occur with the older grib plugin before my changes? I think it does and I fixed it for opengl only. I'll look into it for non-opengl.
-Sorry don't know. Looked for earlier grib_pi on Opencpn download. Not there.


3. I dont understand that on since the looping has nothing to do with opengl.
-Maybe running under debug will show why? What reports do you need?


...pretty fast computer to be able to generate the isobars for wind

i7-2720QM @ 2.20 ghz Laptop. - Need for Architectural CAD and rendering. It does use power so not ideal for Navigation in that respect. Your optimizations will be very welcome I am sure. I have my eye on RaspPi development, but my guess is that while that is powerful enough for many basics operations, these functions will need to be on a faster but thrifty machine.
__________________
rgleason is offline   Reply With Quote
Old 16-02-2013, 08:39   #28
Registered User
 
LeaseOnLife's Avatar

Join Date: Apr 2008
Location: out cruising again
Boat: Sailboat
Posts: 1,046
Re: grib enhancements

Quote:
Originally Posted by boat_alexandra View Post
....Could someone please direct me to a source of grib files which have sea temperature currents, and swell or wave (preferably with direction)? More fields are better, we really need to be able to do everything zygrib can.


Attached grib is for Cape Hatteras, it should have values for
  • Sfc Wind
  • Waves
  • WaveDir
  • PERSW
  • DIRSW
  • PERSW
  • DIRPW
  • WVPER
If you would like to request similar gribs yourself:
send an email to query@saildocs.com, subject doesn't matter, can be emtpy, in the email body type (all in one line, I think the "send" can be omitted):
Code:
send WW3:37N,33N,079W,072W|1,1.27|0,3..168|WIND,HTSGW,WVDIR,WVPER,DIRPW,PERPW,DIRSW,PERSW
Dirk
Attached Files
File Type: doc WW320130216153202116.grb.doc (60.0 KB, 36 views)
__________________
LeaseOnLife is online now   Reply With Quote
Old 16-02-2013, 08:54   #29
Registered User
 
LeaseOnLife's Avatar

Join Date: Apr 2008
Location: out cruising again
Boat: Sailboat
Posts: 1,046
Re: grib enhancements

Quote:
Originally Posted by boat_alexandra View Post
....Could someone please direct me to a source of grib files which have sea temperature currents, and swell or wave (preferably with direction)? More fields are better, we really need to be able to do everything zygrib can.
This attached grib has Water-temp, Current and Salinity from the RTOFS model.
Request code to saildocs was:
Code:
RTOFS:39N,33N,080W,071W|0.1,0.12|0,24..72|CUR,WTMP,DSL_M,SALTY
Attached Files
File Type: doc rtofs-gs20130216154402147.grb.doc (67.7 KB, 36 views)
__________________
LeaseOnLife is online now   Reply With Quote
Old 16-02-2013, 09:07   #30
Registered User
 
LeaseOnLife's Avatar

Join Date: Apr 2008
Location: out cruising again
Boat: Sailboat
Posts: 1,046
Re: grib enhancements

Quote:
Originally Posted by boat_alexandra View Post
....Could someone please direct me to a source of grib files which have sea temperature currents, and swell or wave (preferably with direction)? More fields are better, we really need to be able to do everything zygrib can.
Please don't forget about RAIN, a pet-peeve of mine, a long standing feature request for OpenCPN.

Attached grib has wind, pressure and rain for the great lakes area:
Attached Thumbnails
Click image for larger version

Name:	grib-with-rain-great-lakes.png
Views:	107
Size:	185.4 KB
ID:	54932  
Attached Files
File Type: doc GFS20130216155802170.grb.doc (107.5 KB, 32 views)
__________________

__________________
LeaseOnLife is online now   Reply With Quote
Reply

Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Pilot Grib Files - Similar to Pilot Charts rgleason OpenCPN 22 05-05-2015 04:15
grib weather plugin not visible geo38 OpenCPN 6 02-08-2012 16:45
GRIB Weather Mark Ward OpenCPN 26 12-02-2012 22:33
GRIB Icon bzs OpenCPN 16 04-09-2011 07:43



Copyright 2002- Social Knowledge, LLC All Rights Reserved.

All times are GMT -7. The time now is 07:51.


Google+
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Social Knowledge Networks
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.

ShowCase vBulletin Plugins by Drive Thru Online, Inc.