ImageD  v2_7_5 (24.06.22)
ImageD is an image processing software designed for rapid prototyping and implementing algorithms and solutions for science, research and teaching.
d_viewer_plot_3d.h
Go to the documentation of this file.
1 /************************************
2  * added: 27.07.2021 *
3  * author: David Eilenstein *
4  * contact: D.Eilenstein@gsi.de *
5  * project: ImageD *
6  * facility: GSI Darmstadt, Ger *
7  ************************************/
8 
9 #ifndef D_VIEWER_PLOT_3D_H
10 #define D_VIEWER_PLOT_3D_H
11 
12 //own
13 #include <d_enum.h>
14 #include <d_error_handler.h>
15 #include <d_visdat_obj.h>
16 #include <d_visdat_proc.h>
17 #include <d_stat.h>
18 
19 //general
20 #include <iostream>
21 #include <vector>
22 
23 //Qt
24 #include <QWidget>
25 #include <QObject>
26 #include <QString>
27 #include <QDebug>
28 #include <QMessageBox>
29 #include <QFileDialog>
30 #include <QFileInfo>
31 #include <QDir>
32 #include <QElapsedTimer>
33 #include <QScrollBar>
34 #include <QGridLayout>
35 #include <QWidget>
36 #include <QtCore/qmath.h>
37 #include <QtCore/qrandom.h>
38 #include <QtWidgets/QComboBox>
39 #include <QLabel>
40 
41 //Qt-Datavisualization
42 #include <QtDataVisualization>
43 #include <QtDataVisualization/q3dscatter.h>
44 #include <QtDataVisualization/qabstract3dseries.h>
45 #include <QtDataVisualization/qscatterdataproxy.h>
46 #include <QtDataVisualization/qvalue3daxis.h>
47 #include <QtDataVisualization/q3dscene.h>
48 #include <QtDataVisualization/q3dcamera.h>
49 #include <QtDataVisualization/qscatter3dseries.h>
50 #include <QtDataVisualization/q3dtheme.h>
51 #include <QtDataVisualization/QSurface3DSeries>
52 #include <QtDataVisualization/Q3DSurface>
53 #include <QtDataVisualization/QSurfaceDataProxy>
54 #include <QtDataVisualization/QSurfaceDataArray>
55 #include <QtDataVisualization/QCustom3DVolume>
56 
57 //openCV
58 #include <opencv2/core/core.hpp>
59 #include <opencv2/highgui/highgui.hpp>
60 #include <opencv2/imgproc/imgproc.hpp>
61 
62 //namespaces
63 using namespace std;
64 //using namespace cv; (prohibited because of ambigous names with qtdatavisualization)
65 #include <d_opencv_typedefs.h>
66 using namespace QtDataVisualization;
67 
68 class D_Viewer_Plot_3D : public QWidget
69 {
70  Q_OBJECT
71 public:
73  D_Viewer_Plot_3D(QGridLayout *target_layout);
75 
76  //init basic stuff and ui
77  int init(QGridLayout *target_layout);
78 
79  //clear
80  void clear_graph_all();
81  void clear_graph_scatter();
82  void clear_graph_heightmap();
83 
84  //save
85  bool save(QString QS_Save);
86 
87  //plot cool
88  int plot_VD_custom(D_VisDat_Obj *pVD, size_t mode, size_t cond, size_t val_handle, size_t axis_x, size_t axis_y, size_t axis_z, size_t axis_v, size_t plane_index_xy, size_t dim_index_surfaces, size_t surface_mode, size_t texture_mode, size_t marker, size_t shadow, bool background, bool grid, bool smooth, bool draw_surface, bool draw_wireframe);
89  int plot_VD_Scatter(D_VisDat_Obj *pVD, size_t cond, size_t val_handle, size_t axis_x, size_t axis_y, size_t axis_z, size_t axis_v, size_t marker, size_t shadow, bool background, bool grid, bool smooth, bool called_internally = false);
90  int plot_VD_Heightmap(D_VisDat_Obj *pVD, size_t plane_index_xy, size_t dim_index_surfaces, size_t axis_z, size_t axis_v, size_t surface_mode, size_t texture_mode, size_t shadow, bool background, bool grid, bool draw_surface, bool draw_wireframe, bool called_internally = false);
91 
92  int plot_Heatmap(vector<double> vData_X, double min_x, double max_x, bool auto_range_x, size_t classes_x, QString name_x, vector<double> vData_Y, double min_y, double max_y, bool auto_range_y, size_t classes_y, QString name_y, vector<double> vData_Z, size_t stat_z, QString name_z, bool draw_height, bool draw_wireframe, bool man_axis_style_x = false, bool man_axis_style_y = false, bool man_axis_style_z = false, double man_min_x = 0, double man_max_x = 1, double man_min_y = 0, double man_max_y = 1, double man_min_z = 0, double man_max_z = 1, bool called_internally = false);
93 
94  int plot_ScatterData_Color(vector<double> vX, vector<double> vY, vector<double> vZ, vector<double> vV, size_t color_handle, size_t marker, size_t shadow, bool background, bool grid, bool smooth, QString axis_x, QString axis_y, QString axis_z, QString axis_v, bool called_internally = false);
95  int plot_Tree(vector<Point3d> vNodesCoord, vector<Point3d> vEdgeCoordBegins, vector<Point3d> vEdgeCoordEnds, vector<QColor> vNodeColor, vector<QColor> vEdgeColor, size_t shadow, bool background, bool grid, bool smooth, QString axis_x, QString axis_y, QString axis_z, size_t points_per_edge = 5, double size_nodes = 0.1, double size_edge = 0.05, bool called_internally = false);
96  int plot_Heightmap(vector<Mat> *pvMA_Height, vector<QImage> *pvQI_Texture, size_t shadow, bool background, bool grid, QString axis_x = "X", QString axis_y = "Y", QString axis_z = "Z", bool draw_surface = true, bool draw_wireframe = false, bool called_internally = false);
97 
98 signals:
99 
100 
101 private:
102 
103  QAbstract3DSeries::Mesh marker_from_id(int marker_id);
104  size_t series_count_from_color_handle_id(size_t color_handle_id);
105  QColor series_color(size_t series_count, size_t series_index, size_t color_handle);
106 
107  void show_graph_type(size_t graph_type_id);
108 
109  void clear_layout();
110 
111  int dimIndex_FromAxisIndex(size_t axis_index);
112 
113  int ValueAxisMat(Mat *pMA_Out, Mat *pMA_In, size_t axis_index, Vec<int, c_DIM_NUMBER_OF> slice_pos, double default_value = 0, bool force_double = false);
114  int SurfaceTextureImage(QImage *pQI_Out, Mat *pMA_In, size_t texture_mode, size_t axis_index_value, Vec<int, c_DIM_NUMBER_OF> slice_pos, double default_value = 0, bool use_fix_crop_range = false, double in_min = 0, double in_max = 1);
115 
116  //error handler
117  D_Error_Handler ER;
118  void ERR(int err, QString func, QString detail);
119 
120  //ui
121  QGridLayout *layout_in_ui;
122  QWidget *container_widget_scatter;
123  QWidget *container_widget_heightmap;
124 
125  //data
126  Q3DScatter *graph_scatter;
127  Q3DSurface *graph_heightmap;
128 
129  //states
130  bool state_ui_init = false;
131  bool state_container_widget_exists = false;
132  bool state_plot_active = false;
133  bool state_plotting = false;
134 };
135 
136 #endif // D_VIEWER_PLOT_3D_H
Mat
cv::Mat Mat
Definition: d_opencv_typedefs.h:28
ER_okay
@ ER_okay
Definition: d_enum.h:133
c_COL2MONO_RED
@ c_COL2MONO_RED
Definition: d_enum.h:654
D_Math::Function_2D_to_1D
static function< double(double x, double y)> Function_2D_to_1D(int type, double a=1, double b=0, double c=1, double d=0, double e=0, double f=0, double nan_val=0, double inf_val=0)
Definition: d_math.cpp:88
c_VIEWER_PLOT_3D_MODE_SCATTER
@ c_VIEWER_PLOT_3D_MODE_SCATTER
Definition: d_enum.h:402
D_Viewer_Plot_3D::D_Viewer_Plot_3D
D_Viewer_Plot_3D()
Definition: d_viewer_plot_3d.cpp:3
D_Viewer_Plot_3D::plot_VD_Heightmap
int plot_VD_Heightmap(D_VisDat_Obj *pVD, size_t plane_index_xy, size_t dim_index_surfaces, size_t axis_z, size_t axis_v, size_t surface_mode, size_t texture_mode, size_t shadow, bool background, bool grid, bool draw_surface, bool draw_wireframe, bool called_internally=false)
Definition: d_viewer_plot_3d.cpp:262
c_DIM_X
@ c_DIM_X
Definition: d_enum.h:235
c_DIM_Z
@ c_DIM_Z
Definition: d_enum.h:237
D_Viewer_Plot_3D::clear_graph_all
void clear_graph_all()
Definition: d_viewer_plot_3d.cpp:55
D_VisDat_Proc::PlaneDim_2nd
static int PlaneDim_2nd(int plane_index)
Definition: d_visdat_proc.cpp:37
c_COL2MONO_GREEN
@ c_COL2MONO_GREEN
Definition: d_enum.h:653
c_DIM_T
@ c_DIM_T
Definition: d_enum.h:238
c_VIEWER_PLOT_3D_VALUE_HANDLING_MONO
@ c_VIEWER_PLOT_3D_VALUE_HANDLING_MONO
Definition: d_enum.h:426
D_Viewer_Plot_3D::plot_Tree
int plot_Tree(vector< Point3d > vNodesCoord, vector< Point3d > vEdgeCoordBegins, vector< Point3d > vEdgeCoordEnds, vector< QColor > vNodeColor, vector< QColor > vEdgeColor, size_t shadow, bool background, bool grid, bool smooth, QString axis_x, QString axis_y, QString axis_z, size_t points_per_edge=5, double size_nodes=0.1, double size_edge=0.05, bool called_internally=false)
Definition: d_viewer_plot_3d.cpp:838
ER_channel_missmatch
@ ER_channel_missmatch
Definition: d_enum.h:145
D_Viewer_Plot_3D::clear_graph_heightmap
void clear_graph_heightmap()
Definition: d_viewer_plot_3d.cpp:72
ER_size_missmatch
@ ER_size_missmatch
Definition: d_enum.h:141
c_DIM_Y
@ c_DIM_Y
Definition: d_enum.h:236
D_Viewer_Plot_3D::plot_ScatterData_Color
int plot_ScatterData_Color(vector< double > vX, vector< double > vY, vector< double > vZ, vector< double > vV, size_t color_handle, size_t marker, size_t shadow, bool background, bool grid, bool smooth, QString axis_x, QString axis_y, QString axis_z, QString axis_v, bool called_internally=false)
Definition: d_viewer_plot_3d.cpp:737
ER_UiNotInit
@ ER_UiNotInit
Definition: d_enum.h:177
D_Viewer_Plot_3D::~D_Viewer_Plot_3D
~D_Viewer_Plot_3D()
Definition: d_viewer_plot_3d.cpp:13
D_Viewer_Plot_3D::save
bool save(QString QS_Save)
Definition: d_viewer_plot_3d.cpp:83
c_VIEWER_PLOT_3D_AXIS_COLOR_GREEN
@ c_VIEWER_PLOT_3D_AXIS_COLOR_GREEN
Definition: d_enum.h:451
QSL_Viewer3D_Axis
const QStringList QSL_Viewer3D_Axis
Definition: d_enum.h:459
c_MATH_2D_TO_1D_Y
@ c_MATH_2D_TO_1D_Y
Definition: d_enum.h:1033
D_VisDat_Proc::Read_2D_Plane
static int Read_2D_Plane(Mat *pMA_Out, D_VisDat_Obj *pVD_In, D_VisDat_Slice_2D InPlane)
Definition: d_visdat_proc.cpp:2946
D_VisDat_Dim::loop_Reset
void loop_Reset()
Definition: d_visdat_dim.h:125
D_Viewer_Plot_3D::clear_graph_scatter
void clear_graph_scatter()
Definition: d_viewer_plot_3d.cpp:61
c_COL2MONO_VALUE
@ c_COL2MONO_VALUE
Definition: d_enum.h:663
c_VIEWER_PLOT_3D_AXIS_IMG_X
@ c_VIEWER_PLOT_3D_AXIS_IMG_X
Definition: d_enum.h:439
D_Viewer_Plot_3D::plot_VD_Scatter
int plot_VD_Scatter(D_VisDat_Obj *pVD, size_t cond, size_t val_handle, size_t axis_x, size_t axis_y, size_t axis_z, size_t axis_v, size_t marker, size_t shadow, bool background, bool grid, bool smooth, bool called_internally=false)
Definition: d_viewer_plot_3d.cpp:158
c_VIEWER_PLOT_3D_SURFACE_MODE_DIMENSION
@ c_VIEWER_PLOT_3D_SURFACE_MODE_DIMENSION
Definition: d_enum.h:524
c_VIEWER_PLOT_3D_MODE_HEIGHTMAP
@ c_VIEWER_PLOT_3D_MODE_HEIGHTMAP
Definition: d_enum.h:403
c_VIEWER_PLOT_3D_MARKER_CYLINDER
@ c_VIEWER_PLOT_3D_MARKER_CYLINDER
Definition: d_enum.h:538
D_VisDat_Dim
The D_VisDat_Dim class Represents a 6D volume.
Definition: d_visdat_dim.h:49
ER_ThreadIssue
@ ER_ThreadIssue
Definition: d_enum.h:179
c_DIM_S
@ c_DIM_S
Definition: d_enum.h:239
c_COL2MONO_SATURATION
@ c_COL2MONO_SATURATION
Definition: d_enum.h:662
D_Error_Handler::ERR
void ERR(int err, QString sender, QString func, QString detail)
D_Error_Handler::ERR pops an error message if an error occured and/or streams it to a csv file.
Definition: d_error_handler.cpp:23
c_VIEWER_PLOT_3D_AXIS_IMG_Y
@ c_VIEWER_PLOT_3D_AXIS_IMG_Y
Definition: d_enum.h:440
D_VisDat_Obj::channels
int channels()
Definition: d_visdat_obj.h:76
D_Stat::Function_SingleStat
static function< double(vector< double >)> Function_SingleStat(int stat)
Definition: d_stat.cpp:683
c_VIEWER_PLOT_3D_TEXTURE_GRAY
@ c_VIEWER_PLOT_3D_TEXTURE_GRAY
Definition: d_enum.h:510
D_Stat::Value2PoolIndex
static size_t Value2PoolIndex(double val, double min, double range, size_t classes)
Definition: d_stat.cpp:4196
c_VIEWER_PLOT_3D_AXIS_COLOR_VALUE
@ c_VIEWER_PLOT_3D_AXIS_COLOR_VALUE
Definition: d_enum.h:455
D_Img_Proc::Convert_toQImage4Ch
static int Convert_toQImage4Ch(QImage *pQI_Out, Mat *pMA_In_Value, Mat *pMA_In_Alpha, bool heat_color)
Definition: d_img_proc.cpp:2006
D_VisDat_Obj
The D_VisDat_Obj class Represents a 6D image.
Definition: d_visdat_obj.h:51
c_VIEWER_PLOT_3D_TEXTURE_IMAGE
@ c_VIEWER_PLOT_3D_TEXTURE_IMAGE
Definition: d_enum.h:509
Point3d
cv::Point3d Point3d
Definition: d_opencv_typedefs.h:41
c_VIEWER_PLOT_3D_AXIS_COLOR_GRAY
@ c_VIEWER_PLOT_3D_AXIS_COLOR_GRAY
Definition: d_enum.h:449
c_VIEWER_PLOT_3D_MARKER_POINT
@ c_VIEWER_PLOT_3D_MARKER_POINT
Definition: d_enum.h:534
D_VisDat_Obj::pMA_full
Mat * pMA_full()
Definition: d_visdat_obj.h:61
c_MATH_2D_TO_1D_X
@ c_MATH_2D_TO_1D_X
Definition: d_enum.h:1032
ER_parameter_missmatch
@ ER_parameter_missmatch
Definition: d_enum.h:143
c_COL2MONO_HUE
@ c_COL2MONO_HUE
Definition: d_enum.h:661
c_VIEWER_PLOT_3D_TEXTURE_MONO
@ c_VIEWER_PLOT_3D_TEXTURE_MONO
Definition: d_enum.h:508
D_VisDat_Obj::Dim
D_VisDat_Dim Dim()
Definition: d_visdat_obj.h:72
D_Viewer_Plot_3D::plot_Heightmap
int plot_Heightmap(vector< Mat > *pvMA_Height, vector< QImage > *pvQI_Texture, size_t shadow, bool background, bool grid, QString axis_x="X", QString axis_y="Y", QString axis_z="Z", bool draw_surface=true, bool draw_wireframe=false, bool called_internally=false)
Definition: d_viewer_plot_3d.cpp:963
c_VIEWER_PLOT_3D_AXIS_COLOR_SATURATION
@ c_VIEWER_PLOT_3D_AXIS_COLOR_SATURATION
Definition: d_enum.h:454
ER_type_bad
@ ER_type_bad
Definition: d_enum.h:136
c_VIEWER_PLOT_3D_AXIS_COLOR_RED
@ c_VIEWER_PLOT_3D_AXIS_COLOR_RED
Definition: d_enum.h:452
c_VIEWER_PLOT_3D_AXIS_CHANNEL_2
@ c_VIEWER_PLOT_3D_AXIS_CHANNEL_2
Definition: d_enum.h:447
D_Error_Handler
The D_Error_Handler class takes error codes from D_ERROR_ENUM and shows a popup if an error occures.
Definition: d_error_handler.h:38
D_Img_Proc::Split
static int Split(Mat *pMA_Out, Mat *pMA_In, unsigned int channel)
Definition: d_img_proc.cpp:4007
c_VIEWER_PLOT_3D_AXIS_IMG_S
@ c_VIEWER_PLOT_3D_AXIS_IMG_S
Definition: d_enum.h:443
c_VIEWER_PLOT_3D_VALUE_HANDLING_HUE
@ c_VIEWER_PLOT_3D_VALUE_HANDLING_HUE
Definition: d_enum.h:428
ER_channel_bad
@ ER_channel_bad
Definition: d_enum.h:144
c_PLANE_NUMBER_OF
@ c_PLANE_NUMBER_OF
Definition: d_enum.h:308
D_VisDat_Obj::at
vector< double > at(int x, int y, int z, int t, int s, int p)
Definition: d_visdat_obj.cpp:61
c_VIEWER_PLOT_3D_AXIS_CHANNEL_1
@ c_VIEWER_PLOT_3D_AXIS_CHANNEL_1
Definition: d_enum.h:446
D_VisDat_Dim::size_Dim
int size_Dim(int idx)
Definition: d_visdat_dim.h:65
Scalar
cv::Scalar Scalar
Definition: d_opencv_typedefs.h:30
c_VIEWER_PLOT_3D_AXIS_NUMBER_OF
@ c_VIEWER_PLOT_3D_AXIS_NUMBER_OF
Definition: d_enum.h:457
c_VIEWER_PLOT_3D_MARKER_ARROW
@ c_VIEWER_PLOT_3D_MARKER_ARROW
Definition: d_enum.h:540
D_VisDat_Slice_2D
The D_VisDat_Slice_2D class Represents a 2D slice through a D_VisDat_Obj.
Definition: d_visdat_slice_2d.h:18
c_VIEWER_PLOT_3D_MARKER_CUBE
@ c_VIEWER_PLOT_3D_MARKER_CUBE
Definition: d_enum.h:537
c_VIEWER_PLOT_3D_AXIS_EMPTY
@ c_VIEWER_PLOT_3D_AXIS_EMPTY
Definition: d_enum.h:438
ER_other
@ ER_other
Definition: d_enum.h:134
c_DIM_P
@ c_DIM_P
Definition: d_enum.h:240
D_Viewer_Plot_3D
Definition: d_viewer_plot_3d.h:69
c_COL2MONO_GRAY
@ c_COL2MONO_GRAY
Definition: d_enum.h:651
c_VIEWER_PLOT_3D_CONDITION_ALL
@ c_VIEWER_PLOT_3D_CONDITION_ALL
Definition: d_enum.h:416
d_opencv_typedefs.h
D_VisDat_Obj::pDim
D_VisDat_Dim * pDim()
Definition: d_visdat_obj.h:73
c_VIEWER_PLOT_3D_VALUE_HANDLING_NUMBER_OF
@ c_VIEWER_PLOT_3D_VALUE_HANDLING_NUMBER_OF
Definition: d_enum.h:429
c_VIEWER_PLOT_3D_AXIS_IMG_P
@ c_VIEWER_PLOT_3D_AXIS_IMG_P
Definition: d_enum.h:444
d_viewer_plot_3d.h
QSL_StatList
const QStringList QSL_StatList
Definition: d_enum.h:797
c_VIEWER_PLOT_3D_AXIS_CHANNEL_0
@ c_VIEWER_PLOT_3D_AXIS_CHANNEL_0
Definition: d_enum.h:445
ER_dim_missmatch
@ ER_dim_missmatch
Definition: d_enum.h:148
D_VisDat_Dim::loop_Next
bool loop_Next()
Definition: d_visdat_dim.cpp:151
D_Img_Proc::Convert_Mat_to_QImage
static int Convert_Mat_to_QImage(QImage *pQI_Out, Mat *pMA_In, bool use_custom_range_for_spread_non_8bit=false, double in_min=0, double in_max=1)
Definition: d_img_proc.cpp:973
d_visdat_obj.h
d_enum.h
c_STAT_NUMBER_OF_STATS
@ c_STAT_NUMBER_OF_STATS
Definition: d_enum.h:795
D_Viewer_Plot_3D::plot_VD_custom
int plot_VD_custom(D_VisDat_Obj *pVD, size_t mode, size_t cond, size_t val_handle, size_t axis_x, size_t axis_y, size_t axis_z, size_t axis_v, size_t plane_index_xy, size_t dim_index_surfaces, size_t surface_mode, size_t texture_mode, size_t marker, size_t shadow, bool background, bool grid, bool smooth, bool draw_surface, bool draw_wireframe)
Definition: d_viewer_plot_3d.cpp:96
QSL_DimIndices
const QStringList QSL_DimIndices
Definition: d_enum.h:251
c_VIEWER_PLOT_3D_SURFACE_MODE_SINGLE
@ c_VIEWER_PLOT_3D_SURFACE_MODE_SINGLE
Definition: d_enum.h:522
ER_UiAllreadyInit
@ ER_UiAllreadyInit
Definition: d_enum.h:176
Vec
cv::Vec< T, N > Vec
Definition: d_opencv_typedefs.h:44
d_error_handler.h
ER_parameter_bad
@ ER_parameter_bad
Definition: d_enum.h:142
D_VisDat_Dim::loop_PosCurrent
Vec< int, c_DIM_NUMBER_OF > loop_PosCurrent()
Definition: d_visdat_dim.h:128
c_COL2MONO_BLUE
@ c_COL2MONO_BLUE
Definition: d_enum.h:652
c_VIEWER_PLOT_3D_CONDITION_NOT_ZERO
@ c_VIEWER_PLOT_3D_CONDITION_NOT_ZERO
Definition: d_enum.h:417
c_VIEWER_PLOT_3D_MARKER_PYRAMID
@ c_VIEWER_PLOT_3D_MARKER_PYRAMID
Definition: d_enum.h:536
D_Img_Proc::Convert_Depth_NoScaling
static int Convert_Depth_NoScaling(Mat *pMA_Out, Mat *pMA_In, int depth)
Definition: d_img_proc.cpp:2777
c_VIEWER_PLOT_3D_AXIS_IMG_T
@ c_VIEWER_PLOT_3D_AXIS_IMG_T
Definition: d_enum.h:442
c_VIEWER_PLOT_3D_AXIS_COLOR_HUE
@ c_VIEWER_PLOT_3D_AXIS_COLOR_HUE
Definition: d_enum.h:453
D_Img_Proc::Convert_Color2Mono
static int Convert_Color2Mono(Mat *pMA_Out, Mat *pMA_In, int col2mono_code)
Definition: d_img_proc.cpp:2662
c_VIEWER_PLOT_3D_AXIS_IMG_Z
@ c_VIEWER_PLOT_3D_AXIS_IMG_Z
Definition: d_enum.h:441
c_VIEWER_PLOT_3D_AXIS_CHANNEL_3
@ c_VIEWER_PLOT_3D_AXIS_CHANNEL_3
Definition: d_enum.h:448
D_VisDat_Proc::PlaneDim_1st
static int PlaneDim_1st(int plane_index)
Definition: d_visdat_proc.cpp:16
c_VIEWER_PLOT_3D_AXIS_COLOR_BLUE
@ c_VIEWER_PLOT_3D_AXIS_COLOR_BLUE
Definition: d_enum.h:450
d_visdat_proc.h
D_Viewer_Plot_3D::plot_Heatmap
int plot_Heatmap(vector< double > vData_X, double min_x, double max_x, bool auto_range_x, size_t classes_x, QString name_x, vector< double > vData_Y, double min_y, double max_y, bool auto_range_y, size_t classes_y, QString name_y, vector< double > vData_Z, size_t stat_z, QString name_z, bool draw_height, bool draw_wireframe, bool man_axis_style_x=false, bool man_axis_style_y=false, bool man_axis_style_z=false, double man_min_x=0, double man_max_x=1, double man_min_y=0, double man_max_y=1, double man_min_z=0, double man_max_z=1, bool called_internally=false)
Definition: d_viewer_plot_3d.cpp:526
c_VIEWER_PLOT_3D_TEXTURE_HUE
@ c_VIEWER_PLOT_3D_TEXTURE_HUE
Definition: d_enum.h:511
D_Viewer_Plot_3D::init
int init(QGridLayout *target_layout)
Definition: d_viewer_plot_3d.cpp:18
ER_index_out_of_range
@ ER_index_out_of_range
Definition: d_enum.h:146
c_VIEWER_PLOT_3D_MARKER_SPHERE
@ c_VIEWER_PLOT_3D_MARKER_SPHERE
Definition: d_enum.h:539
c_VIEWER_PLOT_3D_MARKER_MINIMAL
@ c_VIEWER_PLOT_3D_MARKER_MINIMAL
Definition: d_enum.h:535
c_VIEWER_PLOT_3D_SURFACE_MODE_CHANNELS
@ c_VIEWER_PLOT_3D_SURFACE_MODE_CHANNELS
Definition: d_enum.h:523
D_Img_Proc::Generate_byValueFunction
static int Generate_byValueFunction(Mat *pMA_Out, int width, int height, function< double(double x, double y)> value_function)
Definition: d_img_proc.cpp:332
d_stat.h
ER_empty
@ ER_empty
Definition: d_enum.h:135
c_VIEWER_PLOT_3D_VALUE_HANDLING_GRAY
@ c_VIEWER_PLOT_3D_VALUE_HANDLING_GRAY
Definition: d_enum.h:427