1#ifndef LIBS_GRAPHICS_CGEOCANVAS_HPP_
2#define LIBS_GRAPHICS_CGEOCANVAS_HPP_
28 void addDynamicView(
IRcpDraw **rcpDraw,
double xMinPerc,
double yMinPerc,
double xMaxPerc,
double yMaxPerc,
31 bool getPixelToWorld(
double xLocalInCenterPixel,
double yLocalInCenterPixel,
double sizeXPixel,
double sizeYPixel,
32 double *xWorld,
double *yWorld)
const;
35 void runDraw(
IGraphics *graphics,
double xMinComp,
double yMinComp,
double xMaxComp,
double yMaxComp);
43 double *xCenterPixel,
double *yCenterPixel,
double *fx,
double *fy,
double *xCenterWorld,
44 double *yCenterWorld);
80 auto epsilon =
static_cast<float>(0.000001);
97 const std::vector<IRcpDraw *> &rcpsDraw,
IGraphics *graphics,
double xMinComp,
98 double yMinComp,
double xMaxComp,
double yMaxComp,
CLimits *limits);
100 bool isProportional,
double xMinPixel,
double yMinPixel,
double xMaxPixel,
101 double yMaxPixel,
double *xOriginPixel,
double *yOriginPixel,
double *fX,
102 double *fY,
double *xOriginWorld,
double *yOriginWorld);
Definition CGeoCanvas.hpp:13
bool operator==(const CGeoCanvas &b) const
Definition CGeoCanvas.hpp:22
void setOriginZero()
Definition CGeoCanvas.cpp:504
bool hasDataTransformation(double xMinPixel, double yMinPixel, double xMaxPixel, double yMaxPixel, double *xCenterPixel, double *yCenterPixel, double *fx, double *fy, double *xCenterWorld, double *yCenterWorld)
Definition CGeoCanvas.cpp:509
void addDraw(IRcpDraw **rcpDraw)
Definition CGeoCanvas.cpp:346
static void prvRunDraw(CGeoCanvas::EPrvOriginType typeOrigin, double xMinComp, double yMinComp, double xMaxComp, double yMaxComp, IGraphics *graphics, CGeoCanvas::SPrvCanvasView *view)
Definition CGeoCanvas.cpp:241
~CGeoCanvas()
Definition CGeoCanvas.cpp:337
static void prvDrawScene(bool isProportional, double margin, CGeoCanvas::EPrvOriginType typeOrigin, const std::vector< IRcpDraw * > &rcpsDraw, IGraphics *graphics, double xMinComp, double yMinComp, double xMaxComp, double yMaxComp, CLimits *limits)
Definition CGeoCanvas.cpp:214
void removeObjects(IGraphics *graphics)
Definition CGeoCanvas.cpp:439
CGeoCanvas()
Definition CGeoCanvas.cpp:328
CGeoCanvas & operator=(CGeoCanvas &&other)=default
SPrvCanvasView m_mainView
Definition CGeoCanvas.hpp:106
void addDynamicView(IRcpDraw **rcpDraw, double xMinPerc, double yMinPerc, double xMaxPerc, double yMaxPerc, bool isProportional)
Definition CGeoCanvas.cpp:355
bool getPixelToWorld(double xLocalInCenterPixel, double yLocalInCenterPixel, double sizeXPixel, double sizeYPixel, double *xWorld, double *yWorld) const
Definition CGeoCanvas.cpp:390
CGeoCanvas & operator=(const CGeoCanvas &other)=delete
CGeoCanvas(CGeoCanvas &&other)=default
CMatrix4x4 matrixTransformation(double xMinPixel, double yMinPixel, double xMaxPixel, double yMaxPixel)
Definition CGeoCanvas.cpp:411
std::vector< SPrvDynamicView > m_dynamicViews
Definition CGeoCanvas.hpp:107
CGeoCanvas::EPrvOriginType m_typeOrigin
Definition CGeoCanvas.hpp:105
void setNonProportional()
Definition CGeoCanvas.cpp:499
CGeoCanvas(const CGeoCanvas &other)=delete
EPrvOriginType
Definition CGeoCanvas.hpp:48
void calculateLimits()
Definition CGeoCanvas.cpp:380
static void prvRemoveObjects(CGeoCanvas::SPrvCanvasView *view, IGraphics *graphics)
Definition CGeoCanvas.cpp:256
void setMargin(double percentByOne)
Definition CGeoCanvas.cpp:494
void update()
Definition CGeoCanvas.cpp:476
static bool prvHasDataTransformation(const CLimits *limits, CGeoCanvas::EPrvOriginType typeOrigin, double margin, bool isProportional, double xMinPixel, double yMinPixel, double xMaxPixel, double yMaxPixel, double *xOriginPixel, double *yOriginPixel, double *fX, double *fY, double *xOriginWorld, double *yOriginWorld)
Definition CGeoCanvas.cpp:111
void runDraw(IGraphics *graphics, double xMinComp, double yMinComp, double xMaxComp, double yMaxComp)
Definition CGeoCanvas.cpp:449
Definition CMatrix4x4.hpp:23
Definition IGraphics.hpp:20
Definition IRcpDraw.hpp:9
Definition CGeoCanvas.hpp:54
bool m_isProportional
Definition CGeoCanvas.hpp:65
bool operator==(const SPrvCanvasView &b) const
Definition CGeoCanvas.cpp:35
CLimits * m_limitsOpt
Definition CGeoCanvas.hpp:66
static void prvSetDefaultValues(SPrvCanvasView &canvasViewData)
Definition CGeoCanvas.cpp:43
~SPrvCanvasView()
Definition CGeoCanvas.cpp:17
void prvDelete()
Definition CGeoCanvas.cpp:61
double m_margin
Definition CGeoCanvas.hpp:67
SPrvCanvasView(const SPrvCanvasView &other)=delete
SPrvCanvasView & operator=(const SPrvCanvasView &other)=delete
void prvMoveValues(SPrvCanvasView &canvasViewData)
Definition CGeoCanvas.cpp:51
std::vector< IRcpDraw * > m_rcpsDraw
Definition CGeoCanvas.hpp:68
SPrvCanvasView()
Definition CGeoCanvas.cpp:12
Definition CGeoCanvas.hpp:77
bool operator==(const SPrvDynamicView &b) const
Definition CGeoCanvas.hpp:78
double m_yMaxPerc
Definition CGeoCanvas.hpp:91
double m_xMaxPerc
Definition CGeoCanvas.hpp:90
double m_yMinPerc
Definition CGeoCanvas.hpp:89
double m_xMinPerc
Definition CGeoCanvas.hpp:88
SPrvCanvasView m_view
Definition CGeoCanvas.hpp:87