Cruisers Forum
 


Reply
  This discussion is proudly sponsored by:
Please support our sponsors and let them know you heard about their products on Cruisers Forums. Advertise Here
 
Thread Tools Search this Thread Rate Thread Display Modes
Old 20-05-2013, 19:49   #61
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

Commented out with # the 3 lines of Cmake.txt for sending errors as bdcat suggested in Post 983.

This has fixed one problem in DEBUG mode. I am now getting data in the data types display when cursor is moved across map!

I also got an almost instant break error, here is the call stack, all in overlayfactory as Sean suggested:
Code:
>    climatology_pi.dll!ClimatologyOverlayFactory::CreateGLTexture(ClimatologyOverlay & O, int setting, PlugIn_ViewPort & vp)  Line 790 + 0x13 bytes    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlayMap(int setting, PlugIn_ViewPort & vp)  Line 1141    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlay(wxDC * dc, PlugIn_ViewPort & vp)  Line 1581    C++
     climatology_pi.dll!climatology_pi::RenderGLOverlay(wxGLContext * pcontext, PlugIn_ViewPort * vp)  Line 272    C++
     opencpn.exe!PlugInManager::RenderAllGLCanvasOverlayPlugIns(wxGLContext * pcontext, const ViewPort & vp)  Line 733 + 0x20 bytes    C++
     opencpn.exe!glChartCanvas::DrawGLOverLayObjects()  Line 675    C++
     opencpn.exe!glChartCanvas::render()  Line 1806    C++
     opencpn.exe!glChartCanvas::OnPaint(wxPaintEvent & event)  Line 630    C++
     wxbase28ud_vc_custom.dll!wxAppConsole::HandleEvent(wxEvtHandler * handler, void (wxEvent &)* func, wxEvent & event)  Line 323    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEventIfMatches(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event)  Line 1241    C++
     wxbase28ud_vc_custom.dll!wxEventHashTable::HandleEvent(wxEvent & event, wxEvtHandler * self)  Line 907 + 0x1c bytes    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEvent(wxEvent & event)  Line 1301 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::HandlePaint()  Line 4617 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned int wParam, long lParam)  Line 2747 + 0xb bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned int wParam, long lParam)  Line 2618 + 0x1c bytes    C++
     user32.dll!755b62fa()     
     [Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]    
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755c0d27()     
     user32.dll!755c0d4d()     
     opengl32.dll!19bf60fb()     
     user32.dll!755b62fa()     
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755b6de8()     
     user32.dll!755b6e44()     
     ntdll.dll!77a9010a()     
     user32.dll!755c131c()     
     user32.dll!755c1332()     
     user32.dll!755b788a()     
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::ProcessMessage(tagMSG * msg)  Line 80    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::Dispatch()  Line 294    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoopManual::Run()  Line 115 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::MainLoop()  Line 312 + 0x15 bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::OnRun()  Line 368    C++
     wxbase28ud_vc_custom.dll!wxEntryReal(int & argc, wchar_t * * argv)  Line 448 + 0x1b bytes    C++
     wxbase28ud_vc_custom.dll!wxEntry(int & argc, wchar_t * * argv)  Line 209 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxEntry(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, HINSTANCE__ * __formal, int nCmdShow)  Line 386 + 0xe bytes    C++
     opencpn.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow)  Line 747 + 0x1c bytes    C++
     opencpn.exe!__tmainCRTStartup()  Line 547 + 0x2c bytes    C
     opencpn.exe!WinMainCRTStartup()  Line 371    C
     kernel32.dll!76c333aa()     
     ntdll.dll!77ab9ef2()     
     ntdll.dll!77ab9ec5()
- Getting messages like this one when I continue. First message was similar.

Quote:
Run-Time Check Failure #3 - The variable 'g' is being used without being initialized.
Quote:
Run-Time Check Failure #3 - The variable 'r' is being used without being initialized.
>

Code:
climatology_pi.dll!ClimatologyOverlayFactory::CreateGLTexture(ClimatologyOverlay & O, int setting, PlugIn_ViewPort & vp)  Line 790 + 0x13 bytes    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlayMap(int setting, PlugIn_ViewPort & vp)  Line 1141    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlay(wxDC * dc, PlugIn_ViewPort & vp)  Line 1581    C++
     climatology_pi.dll!climatology_pi::RenderGLOverlay(wxGLContext * pcontext, PlugIn_ViewPort * vp)  Line 272    C++
     opencpn.exe!PlugInManager::RenderAllGLCanvasOverlayPlugIns(wxGLContext * pcontext, const ViewPort & vp)  Line 733 + 0x20 bytes    C++
     opencpn.exe!glChartCanvas::DrawGLOverLayObjects()  Line 675    C++
     opencpn.exe!glChartCanvas::render()  Line 1806    C++
     opencpn.exe!glChartCanvas::OnPaint(wxPaintEvent & event)  Line 630    C++
     wxbase28ud_vc_custom.dll!wxAppConsole::HandleEvent(wxEvtHandler * handler, void (wxEvent &)* func, wxEvent & event)  Line 323    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEventIfMatches(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event)  Line 1241    C++
     wxbase28ud_vc_custom.dll!wxEventHashTable::HandleEvent(wxEvent & event, wxEvtHandler * self)  Line 907 + 0x1c bytes    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEvent(wxEvent & event)  Line 1301 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::HandlePaint()  Line 4617 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned int wParam, long lParam)  Line 2747 + 0xb bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned int wParam, long lParam)  Line 2618 + 0x1c bytes    C++
     user32.dll!755b62fa()     
     [Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]    
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755c0d27()     
     user32.dll!755c0d4d()     
     opengl32.dll!19bf60fb()     
     user32.dll!755b62fa()     
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755b6de8()     
     user32.dll!755b6e44()     
     ntdll.dll!77a9010a()     
     user32.dll!755c131c()     
     user32.dll!755c1332()     
     user32.dll!755b788a()     
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::ProcessMessage(tagMSG * msg)  Line 80    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::Dispatch()  Line 294    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoopManual::Run()  Line 115 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::MainLoop()  Line 312 + 0x15 bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::OnRun()  Line 368    C++
     wxbase28ud_vc_custom.dll!wxEntryReal(int & argc, wchar_t * * argv)  Line 448 + 0x1b bytes    C++
     wxbase28ud_vc_custom.dll!wxEntry(int & argc, wchar_t * * argv)  Line 209 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxEntry(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, HINSTANCE__ * __formal, int nCmdShow)  Line 386 + 0xe bytes    C++
     opencpn.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow)  Line 747 + 0x1c bytes    C++
     opencpn.exe!__tmainCRTStartup()  Line 547 + 0x2c bytes    C
     opencpn.exe!WinMainCRTStartup()  Line 371    C
     kernel32.dll!76c333aa()     
     ntdll.dll!77ab9ef2()     
     ntdll.dll!77ab9ec5()
rgleason is offline   Reply With Quote
Old 20-05-2013, 20:00   #62
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

Check checkbox for Pressure, instant break.

Code:
climatology_pi.dll!ClimatologyOverlayFactory::CreateGLTexture(ClimatologyOverlay & O, int setting, PlugIn_ViewPort & vp)  Line 790 + 0x13 bytes    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlayMap(int setting, PlugIn_ViewPort & vp)  Line 1141    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlay(wxDC * dc, PlugIn_ViewPort & vp)  Line 1581    C++
     climatology_pi.dll!climatology_pi::RenderGLOverlay(wxGLContext * pcontext, PlugIn_ViewPort * vp)  Line 272    C++
     opencpn.exe!PlugInManager::RenderAllGLCanvasOverlayPlugIns(wxGLContext * pcontext, const ViewPort & vp)  Line 733 + 0x20 bytes    C++
     opencpn.exe!glChartCanvas::DrawGLOverLayObjects()  Line 675    C++
     opencpn.exe!glChartCanvas::render()  Line 1806    C++
     opencpn.exe!glChartCanvas::OnPaint(wxPaintEvent & event)  Line 630    C++
     wxbase28ud_vc_custom.dll!wxAppConsole::HandleEvent(wxEvtHandler * handler, void (wxEvent &)* func, wxEvent & event)  Line 323    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEventIfMatches(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event)  Line 1241    C++
     wxbase28ud_vc_custom.dll!wxEventHashTable::HandleEvent(wxEvent & event, wxEvtHandler * self)  Line 907 + 0x1c bytes    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEvent(wxEvent & event)  Line 1301 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::HandlePaint()  Line 4617 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned int wParam, long lParam)  Line 2747 + 0xb bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned int wParam, long lParam)  Line 2618 + 0x1c bytes    C++
     user32.dll!755b62fa()     
     [Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]    
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755c0d27()     
     user32.dll!755c0d4d()     
     opengl32.dll!18ea60fb()     
     user32.dll!755b62fa()     
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755b6de8()     
     user32.dll!755b6e44()     
     ntdll.dll!77a9010a()     
     user32.dll!755c131c()     
     user32.dll!755c1332()     
     user32.dll!755b788a()     
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::ProcessMessage(tagMSG * msg)  Line 80    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::Dispatch()  Line 294    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoopManual::Run()  Line 115 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::MainLoop()  Line 312 + 0x15 bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::OnRun()  Line 368    C++
     wxbase28ud_vc_custom.dll!wxEntryReal(int & argc, wchar_t * * argv)  Line 448 + 0x1b bytes    C++
     wxbase28ud_vc_custom.dll!wxEntry(int & argc, wchar_t * * argv)  Line 209 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxEntry(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, HINSTANCE__ * __formal, int nCmdShow)  Line 386 + 0xe bytes    C++
     opencpn.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow)  Line 747 + 0x1c bytes    C++
     opencpn.exe!__tmainCRTStartup()  Line 547 + 0x2c bytes    C
     opencpn.exe!WinMainCRTStartup()  Line 371    C
     kernel32.dll!76c333aa()     
     ntdll.dll!77ab9ef2()     
     ntdll.dll!77ab9ec5()
Happens even when Isobar is not checked!
Code:
>    climatology_pi.dll!ClimatologyOverlayFactory::CreateGLTexture(ClimatologyOverlay & O, int setting, PlugIn_ViewPort & vp)  Line 790 + 0x13 bytes    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlayMap(int setting, PlugIn_ViewPort & vp)  Line 1141    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlay(wxDC * dc, PlugIn_ViewPort & vp)  Line 1581    C++
     climatology_pi.dll!climatology_pi::RenderGLOverlay(wxGLContext * pcontext, PlugIn_ViewPort * vp)  Line 272    C++
     opencpn.exe!PlugInManager::RenderAllGLCanvasOverlayPlugIns(wxGLContext * pcontext, const ViewPort & vp)  Line 733 + 0x20 bytes    C++
     opencpn.exe!glChartCanvas::DrawGLOverLayObjects()  Line 675    C++
     opencpn.exe!glChartCanvas::render()  Line 1806    C++
     opencpn.exe!glChartCanvas::OnPaint(wxPaintEvent & event)  Line 630    C++
     wxbase28ud_vc_custom.dll!wxAppConsole::HandleEvent(wxEvtHandler * handler, void (wxEvent &)* func, wxEvent & event)  Line 323    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEventIfMatches(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event)  Line 1241    C++
     wxbase28ud_vc_custom.dll!wxEventHashTable::HandleEvent(wxEvent & event, wxEvtHandler * self)  Line 907 + 0x1c bytes    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEvent(wxEvent & event)  Line 1301 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::HandlePaint()  Line 4617 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned int wParam, long lParam)  Line 2747 + 0xb bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned int wParam, long lParam)  Line 2618 + 0x1c bytes    C++
     user32.dll!755b62fa()     
     [Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]    
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755c0d27()     
     user32.dll!755c0d4d()     
     opengl32.dll!193560fb()     
     user32.dll!755b62fa()     
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755b6de8()     
     user32.dll!755b6e44()     
     ntdll.dll!77a9010a()     
     user32.dll!755c131c()     
     user32.dll!755c1332()     
     user32.dll!755b788a()     
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::ProcessMessage(tagMSG * msg)  Line 80    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::Dispatch()  Line 294    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoopManual::Run()  Line 115 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::MainLoop()  Line 312 + 0x15 bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::OnRun()  Line 368    C++
     wxbase28ud_vc_custom.dll!wxEntryReal(int & argc, wchar_t * * argv)  Line 448 + 0x1b bytes    C++
     wxbase28ud_vc_custom.dll!wxEntry(int & argc, wchar_t * * argv)  Line 209 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxEntry(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, HINSTANCE__ * __formal, int nCmdShow)  Line 386 + 0xe bytes    C++
     opencpn.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow)  Line 747 + 0x1c bytes    C++
     opencpn.exe!__tmainCRTStartup()  Line 547 + 0x2c bytes    C
     opencpn.exe!WinMainCRTStartup()  Line 371    C
     kernel32.dll!76c333aa()     
     ntdll.dll!77ab9ef2()     
     ntdll.dll!77ab9ec5()
Break after checking Sea Temp

Code:
>    climatology_pi.dll!ClimatologyOverlayFactory::CreateGLTexture(ClimatologyOverlay & O, int setting, PlugIn_ViewPort & vp)  Line 790 + 0x13 bytes    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlayMap(int setting, PlugIn_ViewPort & vp)  Line 1141    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlay(wxDC * dc, PlugIn_ViewPort & vp)  Line 1581    C++
     climatology_pi.dll!climatology_pi::RenderGLOverlay(wxGLContext * pcontext, PlugIn_ViewPort * vp)  Line 272    C++
     opencpn.exe!PlugInManager::RenderAllGLCanvasOverlayPlugIns(wxGLContext * pcontext, const ViewPort & vp)  Line 733 + 0x20 bytes    C++
     opencpn.exe!glChartCanvas::DrawGLOverLayObjects()  Line 675    C++
     opencpn.exe!glChartCanvas::render()  Line 1806    C++
     opencpn.exe!glChartCanvas::OnPaint(wxPaintEvent & event)  Line 630    C++
     wxbase28ud_vc_custom.dll!wxAppConsole::HandleEvent(wxEvtHandler * handler, void (wxEvent &)* func, wxEvent & event)  Line 323    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEventIfMatches(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event)  Line 1241    C++
     wxbase28ud_vc_custom.dll!wxEventHashTable::HandleEvent(wxEvent & event, wxEvtHandler * self)  Line 907 + 0x1c bytes    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEvent(wxEvent & event)  Line 1301 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::HandlePaint()  Line 4617 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned int wParam, long lParam)  Line 2747 + 0xb bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned int wParam, long lParam)  Line 2618 + 0x1c bytes    C++
     user32.dll!755b62fa()     
     [Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]    
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755c0d27()     
     user32.dll!755c0d4d()     
     opengl32.dll!19aa60fb()     
     user32.dll!755b62fa()     
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755b6de8()     
     user32.dll!755b6e44()     
     ntdll.dll!77a9010a()     
     user32.dll!755c131c()     
     user32.dll!755c1332()     
     user32.dll!755b788a()     
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::ProcessMessage(tagMSG * msg)  Line 80    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::Dispatch()  Line 294    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoopManual::Run()  Line 115 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::MainLoop()  Line 312 + 0x15 bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::OnRun()  Line 368    C++
     wxbase28ud_vc_custom.dll!wxEntryReal(int & argc, wchar_t * * argv)  Line 448 + 0x1b bytes    C++
     wxbase28ud_vc_custom.dll!wxEntry(int & argc, wchar_t * * argv)  Line 209 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxEntry(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, HINSTANCE__ * __formal, int nCmdShow)  Line 386 + 0xe bytes    C++
     opencpn.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow)  Line 747 + 0x1c bytes    C++
     opencpn.exe!__tmainCRTStartup()  Line 547 + 0x2c bytes    C
     opencpn.exe!WinMainCRTStartup()  Line 371    C
     kernel32.dll!76c333aa()     
     ntdll.dll!77ab9ef2()     
     ntdll.dll!77ab9ec5()

Break after checking Cloud coverr

Code:
>    climatology_pi.dll!ClimatologyOverlayFactory::CreateGLTexture(ClimatologyOverlay & O, int setting, PlugIn_ViewPort & vp)  Line 790 + 0x13 bytes    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlayMap(int setting, PlugIn_ViewPort & vp)  Line 1141    C++
     climatology_pi.dll!ClimatologyOverlayFactory::RenderOverlay(wxDC * dc, PlugIn_ViewPort & vp)  Line 1581    C++
     climatology_pi.dll!climatology_pi::RenderGLOverlay(wxGLContext * pcontext, PlugIn_ViewPort * vp)  Line 272    C++
     opencpn.exe!PlugInManager::RenderAllGLCanvasOverlayPlugIns(wxGLContext * pcontext, const ViewPort & vp)  Line 733 + 0x20 bytes    C++
     opencpn.exe!glChartCanvas::DrawGLOverLayObjects()  Line 675    C++
     opencpn.exe!glChartCanvas::render()  Line 1806    C++
     opencpn.exe!glChartCanvas::OnPaint(wxPaintEvent & event)  Line 630    C++
     wxbase28ud_vc_custom.dll!wxAppConsole::HandleEvent(wxEvtHandler * handler, void (wxEvent &)* func, wxEvent & event)  Line 323    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEventIfMatches(const wxEventTableEntryBase & entry, wxEvtHandler * handler, wxEvent & event)  Line 1241    C++
     wxbase28ud_vc_custom.dll!wxEventHashTable::HandleEvent(wxEvent & event, wxEvtHandler * self)  Line 907 + 0x1c bytes    C++
     wxbase28ud_vc_custom.dll!wxEvtHandler::ProcessEvent(wxEvent & event)  Line 1301 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::HandlePaint()  Line 4617 + 0x1c bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWindow::MSWWindowProc(unsigned int message, unsigned int wParam, long lParam)  Line 2747 + 0xb bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxWndProc(HWND__ * hWnd, unsigned int message, unsigned int wParam, long lParam)  Line 2618 + 0x1c bytes    C++
     user32.dll!755b62fa()     
     [Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]    
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755c0d27()     
     user32.dll!755c0d4d()     
     opengl32.dll!18e960fb()     
     user32.dll!755b62fa()     
     user32.dll!755b6d3a()     
     user32.dll!755b6ce9()     
     user32.dll!755b6de8()     
     user32.dll!755b6e44()     
     ntdll.dll!77a9010a()     
     user32.dll!755c131c()     
     user32.dll!755c1332()     
     user32.dll!755b788a()     
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::ProcessMessage(tagMSG * msg)  Line 80    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoop::Dispatch()  Line 294    C++
     wxmsw28ud_core_vc_custom.dll!wxEventLoopManual::Run()  Line 115 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::MainLoop()  Line 312 + 0x15 bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxAppBase::OnRun()  Line 368    C++
     wxbase28ud_vc_custom.dll!wxEntryReal(int & argc, wchar_t * * argv)  Line 448 + 0x1b bytes    C++
     wxbase28ud_vc_custom.dll!wxEntry(int & argc, wchar_t * * argv)  Line 209 + 0xd bytes    C++
     wxmsw28ud_core_vc_custom.dll!wxEntry(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, HINSTANCE__ * __formal, int nCmdShow)  Line 386 + 0xe bytes    C++
     opencpn.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow)  Line 747 + 0x1c bytes    C++
     opencpn.exe!__tmainCRTStartup()  Line 547 + 0x2c bytes    C
     opencpn.exe!WinMainCRTStartup()  Line 371    C
     kernel32.dll!76c333aa()     
     ntdll.dll!77ab9ef2()     
     ntdll.dll!77ab9ec5()
rgleason is offline   Reply With Quote
Old 20-05-2013, 20:12   #63
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

The checkboxes for Wind and Currents does not cause a break unless Isobar is checked in config.
The checkboxes for Pressure, Sea Temp and Cloud cover cause a break whether or not Iso is checked.

The cyclones do not work at all. They do not fail or break on checking the box.
rgleason is offline   Reply With Quote
Old 20-05-2013, 20:23   #64
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

Tried the Release version, similar problems. Hangups not as immediate.
rgleason is offline   Reply With Quote
Old 21-05-2013, 02:01   #65
Registered User

Join Date: May 2013
Location: Croatia
Posts: 6
Re: Climatology

Hi members,
I really like your idea about overlaying additional useful data on the opencpn!
As I am physical oceanographer running atmo/ocean models in real time *WRF high resolution, ROMS nested etc* and serving them via opendap TDS server it could be possible to reduce size of the data needed for download.
As you can access TDS servers and just grab
1) variables that you need (i.e. only wind, current, mslp)
2) get data only for certain region (subset)
3) get data only for certain dates (subset)
All data are already netCDF so that should not be the problem as I can see you have developed netcdf part of the lib.
If I can be of any assistance I would be glad to help, I am running opendap TDS server and can give you info if need.
For test I could run it for my domain that I have under control and easily we can apply it worldwide.

Cheers,
Ivica
ivica is offline   Reply With Quote
Old 21-05-2013, 04:14   #66
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

Ivica,

How fortunate you are on this forum. Sean, the idea man who programmed the plugin (may be sailing now, but will be back to the forum eventually) will be very interested. I downloaded most of the 180 gb of 6hr wind data and currents and ran cmake files to compress and average so I can appreciate your ideas.

One consideration was to have the monthly data occupy less than 10-12 mb to allow pre-download, for easy reference and use while on the seas. Also we would like to improve routing by capturing the multidimensional aspect of the wind data, with some form of variability factor. Your ideas and thoughts would be welcome. We'd like to know how to do #1, #2 and #3!

We would also be interested in making an active download against the database, which perhaps has the 6hr wind and current data for specific routing and time windows, if possible (much like Grib data is done). Perhaps you could advise.

Sean is considering extending the plugin to include Humidity, Temperature and Fog frequency and other useful data. Do you know where we can find such data? Humidity, Temperature and Fog? We were considering calculating Fog frequency from other data and are trying to determine the formula required.
rgleason is offline   Reply With Quote
Old 21-05-2013, 04:23   #67
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

Another set of factors that Sean has identified as a part of Climatology, is various indices like Gulf Stream, El Ninio, Cyclones, etc.
rgleason is offline   Reply With Quote
Old 21-05-2013, 04:36   #68
Registered User

Join Date: May 2013
Location: Croatia
Posts: 6
Re: Climatology

I am more into real time data, so to know what to expect in a few days ahead.
But climatology is valid approach as well, for regions that are predictable and not changing a lot within time of climatological time span.
Opendap technology is well established and used in the scientific oceano community for many years, as we have TB of data from our models (3D in space + time at resolutions ~km for many time steps) it is meant to reduce download time if needing only subset of data.
If you google with say NOAA opendap weather you'll get idea.
On linux (possibly win) you can easily get subset of netCDF files directly loaded into memory for requested variables and index. YOU CAN USE IT FOR ANY netCDF FILE (hence even climatology) if served via opendap.
In my case of the Adriatic Sea I can slice it easily for example:
http://home.irb.hr:40088/thredds/dod...130521.nc.html
it is WRF file holding all info from the model, but if I need only say U10 wind and for 1 time step and predefine region I can just submit that into query
http://home.irb.hr:40088/thredds/dod...[90:1:104]

to get ascii, but can get it directly loaded via lib into memory.
In that sense if you get model lon , lat variables then define your domain of interest say btw lon1,lat1 and lon2,lat2 you can get indexes that you need to get (subset) and than just grab them, not whole model result. I can write you example in python how to load just subset of data that could be implemented within plugin.
For sources of fog, and other mete info have no clue, I would start with NOAA weather GFS model (global, free) ...

Cheers,
Ivica
ivica is offline   Reply With Quote
Old 21-05-2013, 04:41   #69
Registered User

Join Date: May 2013
Location: Croatia
Posts: 6
Re: Climatology

I have posted reply but do not know when will be approved by admin
steps are easy, I can make example in python so you can try it on.
Cheers,
Ivica
ivica is offline   Reply With Quote
Old 21-05-2013, 04:43   #70
Registered User

Join Date: May 2013
Location: Croatia
Posts: 6
Re: Climatology

here it is as quick reply:

I am more into real time data, so to know what to expect in a few days ahead.
But climatology is valid approach as well, for regions that are predictable and not changing a lot within time of climatological time span.
Opendap technology is well established and used in the scientific oceano community for many years, as we have TB of data from our models (3D in space + time at resolutions ~km for many time steps) it is meant to reduce download time if needing only subset of data.
If you google with say NOAA opendap weather you'll get idea.
On linux (possibly win) you can easily get subset of netCDF files directly loaded into memory for requested variables and index. YOU CAN USE IT FOR ANY netCDF FILE (hence even climatology) if served via opendap.
In my case of the Adriatic Sea I can slice it easily for example:
http://home.irb.hr:40088/thredds/dod...130521.nc.html
it is WRF file holding all info from the model, but if I need only say U10 wind and for 1 time step and predefine region I can just submit that into query
http://home.irb.hr:40088/thredds/dod...[90:1:104]

to get ascii, but can get it directly loaded via lib into memory.
In that sense if you get model lon , lat variables then define your domain of interest say btw lon1,lat1 and lon2,lat2 you can get indexes that you need to get (subset) and than just grab them, not whole model result. I can write you example in python how to load just subset of data that could be implemented within plugin.
For sources of fog, and other mete info have no clue, I would start with NOAA weather GFS model (global, free) ...

Cheers,
Ivica
ivica is offline   Reply With Quote
Old 21-05-2013, 04:48   #71
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

Summary of the MSVC Debug breaks:
First a message:
Quote:
"Run-Time Check Failure #3 - The variable 'g' [Value Varies] is being used without being initialized."
Call Stack:
Quote:
ClimatologyOverlayFactory::CreateGLTexture(Climato logyOverlay & O, int setting, PlugIn_ViewPort & vp) Line 790
ClimatoloOverlayFactory::RenderOverlayMap(int setting, PlugIn_ViewPort & vp) Line 1141
ClimatologyOverlayFactory::RenderOverlay(wxDC * dc, PlugIn_ViewPort & vp) Line 1581
climatology_pi::RenderGLOverlay(wxGLContext * pcontext, PlugIn_ViewPort * vp) Line 272
This applies for almost every data type checkbox.
rgleason is offline   Reply With Quote
Old 21-05-2013, 04:55   #72
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

First line
Quote:
for(int y = 0; y < height; y++) {
/* put in mercator coordinates */
double lat = M_PI*(2.0*y/height-1);
lat = 2*rad2deg(atan(exp(lat))) - 90;
double lon = x/s;

double v = getCurValue(MAG, setting, lat, lon);
unsigned char r, g, b, a;
if(isnan(v))
a = 0; /* transparent */
else {
wxColour c = GetGraphicColor(setting, v);
r = c.Red();
g = c.Green();
b = c.Blue();
a = 220;
}

int doff = 4*(y*width + x);
data[doff + 0] = 255-r; <---Line 790
data[doff + 1] = 255-g;
data[doff + 2] = 255-b;
data[doff + 3] = a;
}
}
delete progressdialog;
rgleason is offline   Reply With Quote
Old 21-05-2013, 04:59   #73
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

Second line error
Quote:
void ClimatologyOverlayFactory::RenderOverlayMap( int setting, PlugIn_ViewPort &vp)
{
if(!m_Settings.Settings[setting].m_bOverlayMap)
return;

ClimatologyOverlay &O = m_pOverlay[m_CurrentMonth][setting];
if( !m_pdc )
{
if( !O.m_iTexture )
CreateGLTexture( O, setting, vp);

DrawGLTexture( O, vp ); <---Line 1141
}
else
{
#if 0
rgleason is offline   Reply With Quote
Old 21-05-2013, 05:05   #74
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

Third Line:

Quote:
bool ClimatologyOverlayFactory::RenderOverlay( wxDC *dc, PlugIn_ViewPort &vp )
{
m_pdc = dc;

for(int overlay = 1; overlay >= 0; overlay--)
for(int i=0; i<ClimatologyOverlaySettings::SETTINGS_COUNT; i++) {
if((i == ClimatologyOverlaySettings::WIND && !m_dlg.m_cbWind->GetValue()) ||
(i == ClimatologyOverlaySettings::CURRENT && !m_dlg.m_cbCurrent->GetValue()) ||
(i == ClimatologyOverlaySettings::SLP && !m_dlg.m_cbPressure->GetValue()) ||
(i == ClimatologyOverlaySettings::SST && !m_dlg.m_cbSeaTemperature->GetValue()) ||
(i == ClimatologyOverlaySettings::CLOUD && !m_dlg.m_cbCloudCover->GetValue()))
continue;

if(overlay) /* render overlays first */
RenderOverlayMap( i, vp );
else { <-- Line 1581
RenderIsoBars(i, vp);
RenderNumbers(i, vp);
RenderDirectionArrows(i, vp);
}
}

if(m_dlg.m_cbWind->GetValue())
RenderWindAtlas(vp);

if(m_dlg.m_cbCyclones->GetValue())
RenderCyclones(vp);

return true;
}
rgleason is offline   Reply With Quote
Old 21-05-2013, 05:09   #75
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,631
Images: 2
Re: Climatology

Fourth Line:

Quote:
bool climatology_pi::RenderGLOverlay(wxGLContext *pcontext, PlugIn_ViewPort *vp)
{
if(!m_pClimatologyDialog || !m_pClimatologyDialog->IsShown() ||
!m_pOverlayFactory)
return false;

m_pOverlayFactory->RenderOverlay ( NULL, *vp );
return true; <--Line 272
}
rgleason is offline   Reply With Quote
Reply

Tags
paracelle


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


Advertise Here


All times are GMT -7. The time now is 23:38.


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

ShowCase vBulletin Plugins by Drive Thru Online, Inc.