Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CDrawShapes.hpp
Go to the documentation of this file.
1#ifndef LIBS_SHAPES_CDRAWSHAPES_HPP_
2#define LIBS_SHAPES_CDRAWSHAPES_HPP_
3
4#include "math/structs.hpp"
7
8#include <cstdint>
9#include <string>
10#include <vector>
11
13{
14public:
15 enum class EValueAxisType
16 {
17 Date,
18 Hours,
19 Value
20 };
21
22 static void drawArcWithColor(double radiusMark, double angleInitial, double angleFinal, iv::types::color color,
23 IGraphics *graphics);
24 static void drawArcWithColor(double radiusMark, double angleInitial, double angleFinal, iv::types::color color,
25 IGraphics *graphics, float thickness);
26 static void drawCircleFilled(iv::types::color rgbCenter, iv::types::color rgbPerimeter, double radius,
27 IGraphics *graphics);
28 static void drawCircumferenceWithInterpolation(double radius, const CInterpolationColor &interpolationColors,
29 IGraphics *graphics);
30
31 static void drawButtonPushed(double width, double height, uint32_t rgbColorBackground, uint32_t rgbColorBorder,
32 uint32_t rgbColorShadow, IGraphics *graphics);
33
34 static void drawCirclePump(double x, double y, double size, iv::types::color color, CCircleGraphics *circle,
35 IGraphics *graphics);
36
37 static void drawCompressorSecondDesign(double size, iv::types::color colorControlState,
38 iv::types::color colorWorkingState, CCircleGraphics *circlePump,
39 IGraphics *graphics);
40
41 static void drawCross(double size, IGraphics *graphics);
42 static void drawCrossInPoint(double x, double y, double size, IGraphics *graphics);
43
44 static void drawInfo(const std::vector<std::string> &txtInfo, double x, double y, unsigned char justify,
45 IGraphics *graphics);
46
47 static void drawFrameGradiant(const std::shared_ptr<std::vector<iv::math::geometry::Point2d>> &pointsInteriors,
48 uint32_t rgbColorInterior,
49 const std::shared_ptr<std::vector<iv::math::geometry::Point2d>> &pointsExteriors,
50 uint32_t rgbColorExterior, IGraphics *graphics);
51
52 static void drawLegend(IGraphics *graphics, const std::vector<std::string> &names,
53 const std::vector<uint32_t> &colors,
54 std::optional<iv::types::color> colorShadow = std::nullopt,
55 std::optional<iv::types::color> colorLegend = std::nullopt);
56
57 static void drawMechanicPump(double size, iv::types::color colorLocalRemote, iv::types::color colorRunStop,
58 CCircleGraphics *circlePump, CCircleGraphics *circleMechanic1,
59 CCircleGraphics *circleMechanic2, IGraphics *graphics);
60
61 static void drawPistonPump(double size, iv::types::color colorLocalRemote, iv::types::color colorRunStop,
62 IGraphics *graphics);
63
64 static void drawPolyline(const std::shared_ptr<std::vector<iv::math::geometry::Point2d>> &points,
65 IGraphics *graphics);
66 static void drawPolyline(const std::shared_ptr<std::vector<iv::math::geometry::Point3d>> &points,
67 IGraphics *graphics);
68 static void drawPolylineFilled(const std::vector<iv::math::geometry::Point2d> &points, IGraphics *graphics);
69 static void drawPolylineFilled(const std::shared_ptr<std::vector<iv::math::geometry::Point2d>> &points,
70 IGraphics *graphics);
71 static void drawPolylineFilled(const std::vector<iv::math::geometry::Point3d> &points, IGraphics *graphics);
72
73 static void drawRectangleFilledCentredInOrigin(double width, double height, uint64_t rgbFilled,
74 IGraphics *graphics);
75 static void drawRectangleInCenter(double posX, double posY, double sizeX, double sizeY, IGraphics *graphics);
76
77 static void drawReferences(bool isDigital, double textHeight, const std::string &nameUnitX, bool withAxisX,
78 const std::string &nameUnitY, bool withAxisY, iv::types::color colorRGBAxisY,
79 double moveAxisY, double sizeLineRefX, double sizeLineRefY, double xMax, double yMax,
80 double multiplier, double xMin, double yMin, bool isGridVerticalActivated,
81 bool isGridHorizontalActivated, uint16_t numDecimalsX, uint16_t numDecimalsY,
82 double multipleX, double multipleY, CDrawShapes::EValueAxisType valueAxisX,
83 uint64_t moveTextX, double moveTextY, IGraphics *graphics, bool multipleCurves);
84
85 static void drawTorusWithColor(double radiusIn, iv::types::color colorIn, double radiusOut,
86 iv::types::color colorOut, double angleInitial, double angleFinal,
87 IGraphics *graphics);
88
89 static void drawTrianglesFan(const std::vector<iv::math::geometry::Point2d> &points, IGraphics *graphics);
90};
91
92#endif /* LIBS_SHAPES_CDRAWSHAPES_HPP_ */
Definition CCircleGraphics.hpp:8
Definition CDrawShapes.hpp:13
static void drawReferences(bool isDigital, double textHeight, const std::string &nameUnitX, bool withAxisX, const std::string &nameUnitY, bool withAxisY, iv::types::color colorRGBAxisY, double moveAxisY, double sizeLineRefX, double sizeLineRefY, double xMax, double yMax, double multiplier, double xMin, double yMin, bool isGridVerticalActivated, bool isGridHorizontalActivated, uint16_t numDecimalsX, uint16_t numDecimalsY, double multipleX, double multipleY, CDrawShapes::EValueAxisType valueAxisX, uint64_t moveTextX, double moveTextY, IGraphics *graphics, bool multipleCurves)
Definition CDrawShapes.cpp:760
static void drawButtonPushed(double width, double height, uint32_t rgbColorBackground, uint32_t rgbColorBorder, uint32_t rgbColorShadow, IGraphics *graphics)
Definition CDrawShapes.cpp:172
static void drawCompressorSecondDesign(double size, iv::types::color colorControlState, iv::types::color colorWorkingState, CCircleGraphics *circlePump, IGraphics *graphics)
Definition CDrawShapes.cpp:209
static void drawRectangleInCenter(double posX, double posY, double sizeX, double sizeY, IGraphics *graphics)
Definition CDrawShapes.cpp:537
static void drawLegend(IGraphics *graphics, const std::vector< std::string > &names, const std::vector< uint32_t > &colors, std::optional< iv::types::color > colorShadow=std::nullopt, std::optional< iv::types::color > colorLegend=std::nullopt)
Definition CDrawShapes.cpp:402
static void drawCrossInPoint(double x, double y, double size, IGraphics *graphics)
Definition CDrawShapes.cpp:238
static void drawRectangleFilledCentredInOrigin(double width, double height, uint64_t rgbFilled, IGraphics *graphics)
Definition CDrawShapes.cpp:531
static void drawPistonPump(double size, iv::types::color colorLocalRemote, iv::types::color colorRunStop, IGraphics *graphics)
Definition CDrawShapes.cpp:445
static void drawFrameGradiant(const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &pointsInteriors, uint32_t rgbColorInterior, const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &pointsExteriors, uint32_t rgbColorExterior, IGraphics *graphics)
Definition CDrawShapes.cpp:336
static void drawMechanicPump(double size, iv::types::color colorLocalRemote, iv::types::color colorRunStop, CCircleGraphics *circlePump, CCircleGraphics *circleMechanic1, CCircleGraphics *circleMechanic2, IGraphics *graphics)
Definition CDrawShapes.cpp:432
static void drawTrianglesFan(const std::vector< iv::math::geometry::Point2d > &points, IGraphics *graphics)
Definition CDrawShapes.cpp:847
static void drawCirclePump(double x, double y, double size, iv::types::color color, CCircleGraphics *circle, IGraphics *graphics)
Definition CDrawShapes.cpp:193
static void drawArcWithColor(double radiusMark, double angleInitial, double angleFinal, iv::types::color color, IGraphics *graphics)
Definition CDrawShapes.cpp:22
static void drawTorusWithColor(double radiusIn, iv::types::color colorIn, double radiusOut, iv::types::color colorOut, double angleInitial, double angleFinal, IGraphics *graphics)
Definition CDrawShapes.cpp:829
EValueAxisType
Definition CDrawShapes.hpp:16
static void drawInfo(const std::vector< std::string > &txtInfo, double x, double y, unsigned char justify, IGraphics *graphics)
Definition CDrawShapes.cpp:246
static void drawCircleFilled(iv::types::color rgbCenter, iv::types::color rgbPerimeter, double radius, IGraphics *graphics)
Definition CDrawShapes.cpp:97
static void drawCircumferenceWithInterpolation(double radius, const CInterpolationColor &interpolationColors, IGraphics *graphics)
Definition CDrawShapes.cpp:129
static void drawCross(double size, IGraphics *graphics)
Definition CDrawShapes.cpp:230
static void drawPolyline(const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points, IGraphics *graphics)
Definition CDrawShapes.cpp:468
static void drawPolylineFilled(const std::vector< iv::math::geometry::Point2d > &points, IGraphics *graphics)
Definition CDrawShapes.cpp:494
Definition CInterpolationColor.hpp:7
Definition IGraphics.hpp:20
uint32_t color
Definition types.hpp:12