OpenCPN Partial API docs
|
OpenGL chart rendering canvas. More...
#include <glChartCanvas.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 |
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 143 of file glChartCanvas.h.
glChartCanvas::glChartCanvas | ( | wxWindow * | parent, |
wxGLCanvas * | share = NULL |
||
) |
Definition at line 392 of file glChartCanvas.cpp.
glChartCanvas::~glChartCanvas | ( | ) |
Definition at line 554 of file glChartCanvas.cpp.
|
protected |
Definition at line 1012 of file glChartCanvas.cpp.
|
protected |
Definition at line 683 of file glChartCanvas.cpp.
|
inline |
Definition at line 237 of file glChartCanvas.h.
|
static |
Definition at line 1560 of file glChartCanvas.cpp.
Definition at line 1566 of file glChartCanvas.cpp.
|
protected |
Definition at line 5671 of file glChartCanvas.cpp.
|
protected |
Definition at line 5979 of file glChartCanvas.cpp.
|
static |
Definition at line 3087 of file glChartCanvas.cpp.
|
protected |
Definition at line 2765 of file glChartCanvas.cpp.
|
protected |
Definition at line 2812 of file glChartCanvas.cpp.
void glChartCanvas::DrawDynamicRoutesTracksAndWaypoints | ( | ViewPort & | vp | ) |
Definition at line 1637 of file glChartCanvas.cpp.
void glChartCanvas::DrawEmboss | ( | ocpnDC & | dc, |
emboss_data * | emboss | ||
) |
Definition at line 2194 of file glChartCanvas.cpp.
|
protected |
Definition at line 2721 of file glChartCanvas.cpp.
|
protected |
Definition at line 3833 of file glChartCanvas.cpp.
|
protected |
Definition at line 3701 of file glChartCanvas.cpp.
Definition at line 3693 of file glChartCanvas.cpp.
|
protected |
Definition at line 2775 of file glChartCanvas.cpp.
|
static |
Definition at line 2924 of file glChartCanvas.cpp.
void glChartCanvas::DrawStaticRoutesTracksAndWaypoints | ( | ViewPort & | vp | ) |
Definition at line 1595 of file glChartCanvas.cpp.
|
inline |
Definition at line 217 of file glChartCanvas.h.
void glChartCanvas::FastPan | ( | int | dx, |
int | dy | ||
) |
Definition at line 4871 of file glChartCanvas.cpp.
void glChartCanvas::FastZoom | ( | float | factor, |
float | cp_x, | ||
float | cp_y, | ||
float | post_x, | ||
float | post_y | ||
) |
Definition at line 5068 of file glChartCanvas.cpp.
void glChartCanvas::FlushFBO | ( | void | ) |
Definition at line 560 of file glChartCanvas.cpp.
|
inline |
Definition at line 180 of file glChartCanvas.h.
|
inline |
Definition at line 183 of file glChartCanvas.h.
|
inline |
Definition at line 182 of file glChartCanvas.h.
|
inline |
Definition at line 216 of file glChartCanvas.h.
|
inline |
Definition at line 214 of file glChartCanvas.h.
|
protected |
Definition at line 5957 of file glChartCanvas.cpp.
|
inline |
Definition at line 215 of file glChartCanvas.h.
void glChartCanvas::GridDraw | ( | ) |
Definition at line 1936 of file glChartCanvas.cpp.
|
static |
Definition at line 1478 of file glChartCanvas.cpp.
void glChartCanvas::Init | ( | ) |
Definition at line 410 of file glChartCanvas.cpp.
void glChartCanvas::Invalidate | ( | ) |
Definition at line 3093 of file glChartCanvas.cpp.
|
inline |
Definition at line 240 of file glChartCanvas.h.
void glChartCanvas::MouseEvent | ( | wxMouseEvent & | event | ) |
Definition at line 617 of file glChartCanvas.cpp.
|
static |
Definition at line 1498 of file glChartCanvas.cpp.
|
static |
Definition at line 1535 of file glChartCanvas.cpp.
void glChartCanvas::OnActivate | ( | wxActivateEvent & | event | ) |
Definition at line 564 of file glChartCanvas.cpp.
void glChartCanvas::OnPaint | ( | wxPaintEvent & | event | ) |
Definition at line 1425 of file glChartCanvas.cpp.
void glChartCanvas::OnSize | ( | wxSizeEvent & | event | ) |
Definition at line 568 of file glChartCanvas.cpp.
void glChartCanvas::onZoomTimerEvent | ( | wxTimerEvent & | event | ) |
Definition at line 5023 of file glChartCanvas.cpp.
void glChartCanvas::Render | ( | ) |
Definition at line 3881 of file glChartCanvas.cpp.
Definition at line 1715 of file glChartCanvas.cpp.
|
protected |
Definition at line 3523 of file glChartCanvas.cpp.
void glChartCanvas::RenderColorRect | ( | wxRect | r, |
wxColor & | color | ||
) |
Definition at line 5862 of file glChartCanvas.cpp.
|
protected |
Definition at line 3847 of file glChartCanvas.cpp.
|
protected |
Definition at line 4722 of file glChartCanvas.cpp.
|
protected |
Definition at line 3616 of file glChartCanvas.cpp.
|
protected |
Definition at line 3222 of file glChartCanvas.cpp.
|
protected |
Definition at line 3462 of file glChartCanvas.cpp.
void glChartCanvas::RenderRasterChartRegionGL | ( | ChartBase * | chart, |
ViewPort & | vp, | ||
LLRegion & | region | ||
) |
Definition at line 3098 of file glChartCanvas.cpp.
|
protected |
Definition at line 4636 of file glChartCanvas.cpp.
|
protected |
Definition at line 5897 of file glChartCanvas.cpp.
|
protected |
Definition at line 4665 of file glChartCanvas.cpp.
|
static |
Definition at line 5790 of file glChartCanvas.cpp.
void glChartCanvas::RenderTextures | ( | ocpnDC & | dc, |
float * | coords, | ||
float * | uvCoords, | ||
int | nVertex, | ||
ViewPort * | vp | ||
) |
Definition at line 5761 of file glChartCanvas.cpp.
|
protected |
Definition at line 3637 of file glChartCanvas.cpp.
|
inline |
Definition at line 241 of file glChartCanvas.h.
void glChartCanvas::SendJSONConfigMessage | ( | ) |
Definition at line 1331 of file glChartCanvas.cpp.
|
static |
Definition at line 3070 of file glChartCanvas.cpp.
|
static |
Definition at line 3010 of file glChartCanvas.cpp.
void glChartCanvas::SetColorScheme | ( | ColorScheme | cs | ) |
Definition at line 3837 of file glChartCanvas.cpp.
|
inline |
Definition at line 179 of file glChartCanvas.h.
void glChartCanvas::SetupCompression | ( | ) |
Definition at line 1345 of file glChartCanvas.cpp.
void glChartCanvas::SetupOpenGL | ( | ) |
Definition at line 1067 of file glChartCanvas.cpp.
void glChartCanvas::ShipDraw | ( | ocpnDC & | dc | ) |
Definition at line 2271 of file glChartCanvas.cpp.
|
inline |
Definition at line 238 of file glChartCanvas.h.
|
protected |
Definition at line 4876 of file glChartCanvas.cpp.
|
static |
Definition at line 402 of file glChartCanvas.h.
|
protected |
Definition at line 311 of file glChartCanvas.h.
|
protected |
Definition at line 310 of file glChartCanvas.h.
|
protected |
Definition at line 306 of file glChartCanvas.h.
|
protected |
Definition at line 312 of file glChartCanvas.h.
|
protected |
Definition at line 343 of file glChartCanvas.h.
|
protected |
Definition at line 357 of file glChartCanvas.h.
|
protected |
Definition at line 353 of file glChartCanvas.h.
|
protected |
Definition at line 352 of file glChartCanvas.h.
|
protected |
Definition at line 351 of file glChartCanvas.h.
|
protected |
Definition at line 358 of file glChartCanvas.h.
|
protected |
Definition at line 297 of file glChartCanvas.h.
|
protected |
Definition at line 381 of file glChartCanvas.h.
|
protected |
Definition at line 304 of file glChartCanvas.h.
|
protected |
Definition at line 317 of file glChartCanvas.h.
|
protected |
Definition at line 316 of file glChartCanvas.h.
|
protected |
Definition at line 318 of file glChartCanvas.h.
|
protected |
Definition at line 319 of file glChartCanvas.h.
|
protected |
Definition at line 303 of file glChartCanvas.h.
|
protected |
Definition at line 362 of file glChartCanvas.h.
|
protected |
Definition at line 348 of file glChartCanvas.h.
|
protected |
Definition at line 348 of file glChartCanvas.h.
|
protected |
Definition at line 368 of file glChartCanvas.h.
|
protected |
Definition at line 372 of file glChartCanvas.h.
|
protected |
Definition at line 371 of file glChartCanvas.h.
|
protected |
Definition at line 373 of file glChartCanvas.h.
|
protected |
Definition at line 301 of file glChartCanvas.h.
|
protected |
Definition at line 313 of file glChartCanvas.h.
|
protected |
Definition at line 347 of file glChartCanvas.h.
|
protected |
Definition at line 347 of file glChartCanvas.h.
|
protected |
Definition at line 327 of file glChartCanvas.h.
|
protected |
Definition at line 328 of file glChartCanvas.h.
|
protected |
Definition at line 330 of file glChartCanvas.h.
|
protected |
Definition at line 329 of file glChartCanvas.h.
|
protected |
Definition at line 379 of file glChartCanvas.h.
|
protected |
Definition at line 355 of file glChartCanvas.h.
|
protected |
Definition at line 356 of file glChartCanvas.h.
|
protected |
Definition at line 376 of file glChartCanvas.h.
|
protected |
Definition at line 375 of file glChartCanvas.h.
ocpnDC glChartCanvas::m_gldc |
Definition at line 249 of file glChartCanvas.h.
|
protected |
Definition at line 300 of file glChartCanvas.h.
|
protected |
Definition at line 363 of file glChartCanvas.h.
|
protected |
Definition at line 385 of file glChartCanvas.h.
|
protected |
Definition at line 385 of file glChartCanvas.h.
|
protected |
Definition at line 307 of file glChartCanvas.h.
time_t glChartCanvas::m_last_render_time |
Definition at line 242 of file glChartCanvas.h.
|
protected |
Definition at line 332 of file glChartCanvas.h.
|
protected |
Definition at line 333 of file glChartCanvas.h.
|
protected |
Definition at line 335 of file glChartCanvas.h.
|
protected |
Definition at line 334 of file glChartCanvas.h.
|
protected |
Definition at line 349 of file glChartCanvas.h.
|
protected |
Definition at line 365 of file glChartCanvas.h.
|
protected |
Definition at line 339 of file glChartCanvas.h.
|
protected |
Definition at line 339 of file glChartCanvas.h.
|
protected |
Definition at line 339 of file glChartCanvas.h.
|
protected |
Definition at line 337 of file glChartCanvas.h.
|
protected |
Definition at line 337 of file glChartCanvas.h.
|
protected |
Definition at line 293 of file glChartCanvas.h.
|
protected |
Definition at line 325 of file glChartCanvas.h.
|
protected |
Definition at line 360 of file glChartCanvas.h.
|
protected |
Definition at line 360 of file glChartCanvas.h.
|
protected |
Definition at line 359 of file glChartCanvas.h.
ChartCanvas* glChartCanvas::m_pParentCanvas |
Definition at line 248 of file glChartCanvas.h.
|
protected |
Definition at line 314 of file glChartCanvas.h.
|
protected |
Definition at line 299 of file glChartCanvas.h.
|
protected |
Definition at line 338 of file glChartCanvas.h.
|
protected |
Definition at line 338 of file glChartCanvas.h.
|
protected |
Definition at line 338 of file glChartCanvas.h.
|
protected |
Definition at line 338 of file glChartCanvas.h.
|
protected |
Definition at line 337 of file glChartCanvas.h.
|
protected |
Definition at line 337 of file glChartCanvas.h.
|
protected |
Definition at line 385 of file glChartCanvas.h.
|
protected |
Definition at line 385 of file glChartCanvas.h.
|
protected |
Definition at line 386 of file glChartCanvas.h.
|
protected |
Definition at line 367 of file glChartCanvas.h.
|
protected |
Definition at line 370 of file glChartCanvas.h.
|
protected |
Definition at line 369 of file glChartCanvas.h.
|
protected |
Definition at line 378 of file glChartCanvas.h.
|
protected |
Definition at line 383 of file glChartCanvas.h.
|
protected |
Definition at line 384 of file glChartCanvas.h.
|
protected |
Definition at line 300 of file glChartCanvas.h.
|
protected |
Definition at line 387 of file glChartCanvas.h.
|
protected |
Definition at line 340 of file glChartCanvas.h.
|
protected |
Definition at line 342 of file glChartCanvas.h.
|
protected |
Definition at line 342 of file glChartCanvas.h.
|
protected |
Definition at line 341 of file glChartCanvas.h.
|
protected |
Definition at line 295 of file glChartCanvas.h.
double glChartCanvas::mvmatrix[16] |
Definition at line 245 of file glChartCanvas.h.
|
protected |
Definition at line 322 of file glChartCanvas.h.
|
protected |
Definition at line 323 of file glChartCanvas.h.
|
protected |
Definition at line 321 of file glChartCanvas.h.
|
protected |
Definition at line 323 of file glChartCanvas.h.
double glChartCanvas::projmatrix[16] |
Definition at line 245 of file glChartCanvas.h.
|
static |
Definition at line 169 of file glChartCanvas.h.
|
static |
Definition at line 166 of file glChartCanvas.h.
|
static |
Definition at line 167 of file glChartCanvas.h.
|
static |
Definition at line 168 of file glChartCanvas.h.
int glChartCanvas::viewport[4] |
Definition at line 244 of file glChartCanvas.h.
|
protected |
Definition at line 345 of file glChartCanvas.h.