|
OpenCPN Partial API docs
|
OpenGL chart rendering canvas. More...
#include <gl_chart_canvas.h>
Public Member Functions | |
| void | SetColorScheme (ColorScheme cs) |
| void | RenderTextures (ocpnDC &dc, float *coords, float *uvCoords, int nVertex, ViewPort *vp) |
| void | RenderColorRect (wxRect r, wxColor &color) |
| void | SendJSONConfigMessage () |
| glChartCanvas (wxWindow *parent, wxGLCanvas *share=NULL) | |
| void | Init () |
| void | SetContext (wxGLContext *pcontext) |
| int | GetCanvasIndex () |
| int | GetGLCanvasWidth () |
| int | GetGLCanvasHeight () |
| void | OnPaint (wxPaintEvent &event) |
| void | OnEraseBG (wxEraseEvent &evt) |
| void | Render () |
| void | OnActivate (wxActivateEvent &event) |
| void | OnSize (wxSizeEvent &event) |
| void | MouseEvent (wxMouseEvent &event) |
| void | FastPan (int dx, int dy) |
| void | FastZoom (float factor, float cp_x, float cp_y, float post_x, float post_y) |
| void | RenderCanvasBackingChart (ocpnDC &dc, OCPNRegion chart_get_region) |
| void | onZoomTimerEvent (wxTimerEvent &event) |
| wxString | GetRendererString () |
| wxString | GetVersionString () |
| wxString | GetGLSLVersionString () |
| void | EnablePaint (bool b_enable) |
| void | Invalidate () |
| void | RenderRasterChartRegionGL (ChartBase *chart, ViewPort &vp, LLRegion ®ion) |
| void | DrawGLOverLayObjects (void) |
| void | GridDraw () |
| void | FlushFBO (void) |
| void | DrawDynamicRoutesTracksAndWaypoints (ViewPort &vp) |
| void | DrawStaticRoutesTracksAndWaypoints (ViewPort &vp) |
| void | RenderAllChartOutlines (ocpnDC &dc, ViewPort &VP) |
| void | RenderChartOutline (ocpnDC &dc, int dbIndex, ViewPort &VP) |
| void | DrawEmboss (ocpnDC &dc, emboss_data *emboss) |
| void | ShipDraw (ocpnDC &dc) |
| void | SetupCompression () |
| bool | CanAcceleratePanning () |
| bool | UsingFBO () |
| bool | isInGesture () |
| void | ResetGridFont () |
| void | SetupOpenGL () |
Static Public Member Functions | |
| static bool | CanClipViewport (const ViewPort &vp) |
| static ViewPort | ClippedViewport (const ViewPort &vp, const LLRegion ®ion) |
| static bool | HasNormalizedViewPort (const ViewPort &vp) |
| static void | MultMatrixViewPort (ViewPort &vp, float lat=0, float lon=0) |
| static ViewPort | NormalizedViewPort (const ViewPort &vp, float lat=0, float lon=0) |
| static void | DrawRegion (ViewPort &vp, const LLRegion ®ion) |
| static void | SetClipRegion (ViewPort &vp, const LLRegion ®ion) |
| static void | SetClipRect (const ViewPort &vp, const wxRect &rect, bool g_clear=false) |
| static void | DisableClipRegion () |
| static void | RenderSingleTexture (ocpnDC &dc, float *coords, float *uvCoords, ViewPort *vp, float dx, float dy, float angle) |
Public Attributes | |
| time_t | m_last_render_time |
| int | viewport [4] |
| double | mvmatrix [16] |
| double | projmatrix [16] |
| ChartCanvas * | m_pParentCanvas |
| ocpnDC | m_gldc |
| wxStopWatch | m_glstopwatch |
Static Public Attributes | |
| static bool | s_b_useScissorTest |
| static bool | s_b_useStencil |
| static bool | s_b_useStencilAP |
| static bool | s_b_useFBO |
| static std::unordered_map< wxPenStyle, std::array< wxDash, 2 > > | dash_map |
Protected Member Functions | |
| void | RenderS57TextOverlay (ViewPort &VPoint) |
| void | RenderMBTilesOverlay (ViewPort &VPoint) |
| void | RenderSingleMBTileOverlay (int dbIndex, bool bOVerlay, ViewPort &VPoint, OCPNRegion &screen_region, LLRegion &screenLLRegion) |
| void | RenderScene (bool bRenderCharts=true, bool bRenderOverlays=true) |
| void | RenderGLAlertMessage () |
| void | RenderQuiltViewGL (ViewPort &vp, const OCPNRegion &rect_region) |
| void | RenderQuiltViewGLText (ViewPort &vp, const OCPNRegion &rect_region) |
| void | BuildFBO () |
| bool | buildFBOSize (int fboSize) |
| void | configureShaders (ViewPort &vp) |
| void | RenderCharts (ocpnDC &dc, const OCPNRegion &rect_region) |
| void | RenderNoDTA (ViewPort &vp, const LLRegion ®ion, int transparency=255) |
| void | RenderWorldChart (ocpnDC &dc, ViewPort &vp, wxRect &rect, bool &world_view) |
| void | DrawFloatingOverlayObjects (ocpnDC &dc) |
| void | DrawGroundedOverlayObjects (ocpnDC &dc, ViewPort &vp) |
| void | DrawChartBar (ocpnDC &dc) |
| void | DrawQuiting () |
| void | DrawCloseMessage (wxString msg) |
| void | DrawGLTidesInBBox (ocpnDC &dc, LLBBox &BBox) |
| void | DrawGLCurrentsInBBox (ocpnDC &dc, LLBBox &BBox) |
| void | ZoomProject (float offset_x, float offset_y, float swidth, float sheight) |
| wxBitmap & | GetTouchBackingBitmap (ViewPort &vp) |
| void | CreateBackingTexture () |
| void | RendertoTexture (GLint tex) |
OpenGL chart rendering canvas.
Implements OpenGL-based rendering of charts and overlays. Handles initialization of OpenGL context, rendering loop, and interface with chart objects for drawing.
Definition at line 105 of file gl_chart_canvas.h.
| glChartCanvas::glChartCanvas | ( | wxWindow * | parent, |
| wxGLCanvas * | share = NULL |
||
| ) |
Definition at line 317 of file gl_chart_canvas.cpp.
| glChartCanvas::~glChartCanvas | ( | ) |
Definition at line 482 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 929 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 609 of file gl_chart_canvas.cpp.
|
inline |
Definition at line 199 of file gl_chart_canvas.h.
|
static |
Definition at line 1474 of file gl_chart_canvas.cpp.
Definition at line 1480 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 5713 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 6029 of file gl_chart_canvas.cpp.
|
static |
Definition at line 2995 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 2674 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 2721 of file gl_chart_canvas.cpp.
| void glChartCanvas::DrawDynamicRoutesTracksAndWaypoints | ( | ViewPort & | vp | ) |
Definition at line 1544 of file gl_chart_canvas.cpp.
| void glChartCanvas::DrawEmboss | ( | ocpnDC & | dc, |
| emboss_data * | emboss | ||
| ) |
Definition at line 2095 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 2630 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 3745 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 3613 of file gl_chart_canvas.cpp.
Definition at line 3605 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 2684 of file gl_chart_canvas.cpp.
|
static |
Definition at line 2833 of file gl_chart_canvas.cpp.
| void glChartCanvas::DrawStaticRoutesTracksAndWaypoints | ( | ViewPort & | vp | ) |
Definition at line 1509 of file gl_chart_canvas.cpp.
|
inline |
Definition at line 179 of file gl_chart_canvas.h.
| void glChartCanvas::FastPan | ( | int | dx, |
| int | dy | ||
| ) |
Definition at line 4807 of file gl_chart_canvas.cpp.
| void glChartCanvas::FastZoom | ( | float | factor, |
| float | cp_x, | ||
| float | cp_y, | ||
| float | post_x, | ||
| float | post_y | ||
| ) |
Definition at line 5004 of file gl_chart_canvas.cpp.
| void glChartCanvas::FlushFBO | ( | void | ) |
Definition at line 488 of file gl_chart_canvas.cpp.
|
inline |
Definition at line 142 of file gl_chart_canvas.h.
|
inline |
Definition at line 145 of file gl_chart_canvas.h.
|
inline |
Definition at line 144 of file gl_chart_canvas.h.
|
inline |
Definition at line 178 of file gl_chart_canvas.h.
|
inline |
Definition at line 176 of file gl_chart_canvas.h.
|
protected |
Definition at line 6007 of file gl_chart_canvas.cpp.
|
inline |
Definition at line 177 of file gl_chart_canvas.h.
| void glChartCanvas::GridDraw | ( | ) |
Definition at line 1837 of file gl_chart_canvas.cpp.
|
static |
Definition at line 1392 of file gl_chart_canvas.cpp.
| void glChartCanvas::Init | ( | ) |
Definition at line 335 of file gl_chart_canvas.cpp.
| void glChartCanvas::Invalidate | ( | ) |
Definition at line 3001 of file gl_chart_canvas.cpp.
|
inline |
Definition at line 202 of file gl_chart_canvas.h.
| void glChartCanvas::MouseEvent | ( | wxMouseEvent & | event | ) |
Definition at line 543 of file gl_chart_canvas.cpp.
|
static |
Definition at line 1412 of file gl_chart_canvas.cpp.
|
static |
Definition at line 1449 of file gl_chart_canvas.cpp.
| void glChartCanvas::OnActivate | ( | wxActivateEvent & | event | ) |
Definition at line 492 of file gl_chart_canvas.cpp.
| void glChartCanvas::OnPaint | ( | wxPaintEvent & | event | ) |
Definition at line 1340 of file gl_chart_canvas.cpp.
| void glChartCanvas::OnSize | ( | wxSizeEvent & | event | ) |
Definition at line 496 of file gl_chart_canvas.cpp.
| void glChartCanvas::onZoomTimerEvent | ( | wxTimerEvent & | event | ) |
Definition at line 4959 of file gl_chart_canvas.cpp.
| void glChartCanvas::Render | ( | ) |
Definition at line 3793 of file gl_chart_canvas.cpp.
Definition at line 1616 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 3434 of file gl_chart_canvas.cpp.
| void glChartCanvas::RenderColorRect | ( | wxRect | r, |
| wxColor & | color | ||
| ) |
Definition at line 5904 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 3759 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 4658 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 3528 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 3130 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 3373 of file gl_chart_canvas.cpp.
| void glChartCanvas::RenderRasterChartRegionGL | ( | ChartBase * | chart, |
| ViewPort & | vp, | ||
| LLRegion & | region | ||
| ) |
Definition at line 3006 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 4572 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 5939 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 4601 of file gl_chart_canvas.cpp.
|
static |
Definition at line 5832 of file gl_chart_canvas.cpp.
| void glChartCanvas::RenderTextures | ( | ocpnDC & | dc, |
| float * | coords, | ||
| float * | uvCoords, | ||
| int | nVertex, | ||
| ViewPort * | vp | ||
| ) |
Definition at line 5803 of file gl_chart_canvas.cpp.
|
protected |
Definition at line 3549 of file gl_chart_canvas.cpp.
|
inline |
Definition at line 203 of file gl_chart_canvas.h.
| void glChartCanvas::SendJSONConfigMessage | ( | ) |
Definition at line 1246 of file gl_chart_canvas.cpp.
|
static |
Definition at line 2978 of file gl_chart_canvas.cpp.
|
static |
Definition at line 2918 of file gl_chart_canvas.cpp.
| void glChartCanvas::SetColorScheme | ( | ColorScheme | cs | ) |
Definition at line 3749 of file gl_chart_canvas.cpp.
|
inline |
Definition at line 141 of file gl_chart_canvas.h.
| void glChartCanvas::SetupCompression | ( | ) |
Definition at line 1260 of file gl_chart_canvas.cpp.
| void glChartCanvas::SetupOpenGL | ( | ) |
Definition at line 984 of file gl_chart_canvas.cpp.
| void glChartCanvas::ShipDraw | ( | ocpnDC & | dc | ) |
Definition at line 2172 of file gl_chart_canvas.cpp.
|
inline |
Definition at line 200 of file gl_chart_canvas.h.
|
protected |
Definition at line 4812 of file gl_chart_canvas.cpp.
|
static |
Definition at line 327 of file gl_chart_canvas.h.
|
protected |
Definition at line 275 of file gl_chart_canvas.h.
|
protected |
Definition at line 274 of file gl_chart_canvas.h.
|
protected |
Definition at line 270 of file gl_chart_canvas.h.
|
protected |
Definition at line 276 of file gl_chart_canvas.h.
|
protected |
Definition at line 307 of file gl_chart_canvas.h.
|
protected |
Definition at line 322 of file gl_chart_canvas.h.
|
protected |
Definition at line 318 of file gl_chart_canvas.h.
|
protected |
Definition at line 317 of file gl_chart_canvas.h.
|
protected |
Definition at line 316 of file gl_chart_canvas.h.
|
protected |
Definition at line 323 of file gl_chart_canvas.h.
|
protected |
Definition at line 261 of file gl_chart_canvas.h.
|
protected |
Definition at line 347 of file gl_chart_canvas.h.
|
protected |
Definition at line 268 of file gl_chart_canvas.h.
|
protected |
Definition at line 281 of file gl_chart_canvas.h.
|
protected |
Definition at line 280 of file gl_chart_canvas.h.
|
protected |
Definition at line 282 of file gl_chart_canvas.h.
|
protected |
Definition at line 283 of file gl_chart_canvas.h.
|
protected |
Definition at line 267 of file gl_chart_canvas.h.
|
protected |
Definition at line 327 of file gl_chart_canvas.h.
|
protected |
Definition at line 313 of file gl_chart_canvas.h.
|
protected |
Definition at line 313 of file gl_chart_canvas.h.
|
protected |
Definition at line 333 of file gl_chart_canvas.h.
|
protected |
Definition at line 337 of file gl_chart_canvas.h.
|
protected |
Definition at line 336 of file gl_chart_canvas.h.
|
protected |
Definition at line 338 of file gl_chart_canvas.h.
|
protected |
Definition at line 265 of file gl_chart_canvas.h.
|
protected |
Definition at line 277 of file gl_chart_canvas.h.
|
protected |
Definition at line 312 of file gl_chart_canvas.h.
|
protected |
Definition at line 312 of file gl_chart_canvas.h.
|
protected |
Definition at line 291 of file gl_chart_canvas.h.
|
protected |
Definition at line 292 of file gl_chart_canvas.h.
|
protected |
Definition at line 294 of file gl_chart_canvas.h.
|
protected |
Definition at line 293 of file gl_chart_canvas.h.
|
protected |
Definition at line 344 of file gl_chart_canvas.h.
|
protected |
Definition at line 308 of file gl_chart_canvas.h.
|
protected |
Definition at line 320 of file gl_chart_canvas.h.
|
protected |
Definition at line 321 of file gl_chart_canvas.h.
|
protected |
Definition at line 341 of file gl_chart_canvas.h.
|
protected |
Definition at line 340 of file gl_chart_canvas.h.
| ocpnDC glChartCanvas::m_gldc |
Definition at line 211 of file gl_chart_canvas.h.
|
protected |
Definition at line 264 of file gl_chart_canvas.h.
| wxStopWatch glChartCanvas::m_glstopwatch |
Definition at line 213 of file gl_chart_canvas.h.
|
protected |
Definition at line 328 of file gl_chart_canvas.h.
|
protected |
Definition at line 351 of file gl_chart_canvas.h.
|
protected |
Definition at line 351 of file gl_chart_canvas.h.
|
protected |
Definition at line 271 of file gl_chart_canvas.h.
| time_t glChartCanvas::m_last_render_time |
Definition at line 204 of file gl_chart_canvas.h.
|
protected |
Definition at line 296 of file gl_chart_canvas.h.
|
protected |
Definition at line 297 of file gl_chart_canvas.h.
|
protected |
Definition at line 299 of file gl_chart_canvas.h.
|
protected |
Definition at line 298 of file gl_chart_canvas.h.
|
protected |
Definition at line 314 of file gl_chart_canvas.h.
|
protected |
Definition at line 330 of file gl_chart_canvas.h.
|
protected |
Definition at line 303 of file gl_chart_canvas.h.
|
protected |
Definition at line 303 of file gl_chart_canvas.h.
|
protected |
Definition at line 303 of file gl_chart_canvas.h.
|
protected |
Definition at line 301 of file gl_chart_canvas.h.
|
protected |
Definition at line 301 of file gl_chart_canvas.h.
|
protected |
Definition at line 257 of file gl_chart_canvas.h.
|
protected |
Definition at line 289 of file gl_chart_canvas.h.
|
protected |
Definition at line 325 of file gl_chart_canvas.h.
|
protected |
Definition at line 325 of file gl_chart_canvas.h.
|
protected |
Definition at line 324 of file gl_chart_canvas.h.
| ChartCanvas* glChartCanvas::m_pParentCanvas |
Definition at line 210 of file gl_chart_canvas.h.
|
protected |
Definition at line 278 of file gl_chart_canvas.h.
|
protected |
Definition at line 263 of file gl_chart_canvas.h.
|
protected |
Definition at line 302 of file gl_chart_canvas.h.
|
protected |
Definition at line 302 of file gl_chart_canvas.h.
|
protected |
Definition at line 302 of file gl_chart_canvas.h.
|
protected |
Definition at line 302 of file gl_chart_canvas.h.
|
protected |
Definition at line 301 of file gl_chart_canvas.h.
|
protected |
Definition at line 345 of file gl_chart_canvas.h.
|
protected |
Definition at line 301 of file gl_chart_canvas.h.
|
protected |
Definition at line 351 of file gl_chart_canvas.h.
|
protected |
Definition at line 351 of file gl_chart_canvas.h.
|
protected |
Definition at line 352 of file gl_chart_canvas.h.
|
protected |
Definition at line 332 of file gl_chart_canvas.h.
|
protected |
Definition at line 335 of file gl_chart_canvas.h.
|
protected |
Definition at line 334 of file gl_chart_canvas.h.
|
protected |
Definition at line 343 of file gl_chart_canvas.h.
|
protected |
Definition at line 349 of file gl_chart_canvas.h.
|
protected |
Definition at line 350 of file gl_chart_canvas.h.
|
protected |
Definition at line 264 of file gl_chart_canvas.h.
|
protected |
Definition at line 353 of file gl_chart_canvas.h.
|
protected |
Definition at line 304 of file gl_chart_canvas.h.
|
protected |
Definition at line 306 of file gl_chart_canvas.h.
|
protected |
Definition at line 306 of file gl_chart_canvas.h.
|
protected |
Definition at line 305 of file gl_chart_canvas.h.
|
protected |
Definition at line 259 of file gl_chart_canvas.h.
| double glChartCanvas::mvmatrix[16] |
Definition at line 207 of file gl_chart_canvas.h.
|
protected |
Definition at line 286 of file gl_chart_canvas.h.
|
protected |
Definition at line 287 of file gl_chart_canvas.h.
|
protected |
Definition at line 285 of file gl_chart_canvas.h.
|
protected |
Definition at line 287 of file gl_chart_canvas.h.
| double glChartCanvas::projmatrix[16] |
Definition at line 207 of file gl_chart_canvas.h.
|
static |
Definition at line 131 of file gl_chart_canvas.h.
|
static |
Definition at line 128 of file gl_chart_canvas.h.
|
static |
Definition at line 129 of file gl_chart_canvas.h.
|
static |
Definition at line 130 of file gl_chart_canvas.h.
| int glChartCanvas::viewport[4] |
Definition at line 206 of file gl_chart_canvas.h.
|
protected |
Definition at line 310 of file gl_chart_canvas.h.