FLImaging 6.5.8.1
SNAPFeatureMatrixGenerator.h
1#pragma once
2
3#include "SNAPFeatureBase.h"
4
5
6namespace FLImaging
7{
8 namespace GUI
9 {
10 class FL_EXPORT CSNAPFeatureMatrixGenerator : public CSNAPFeatureBase
11 {
12 SupportToDuplicateObject(CSNAPFeatureMatrixGenerator, *this);
13
14 public:
15 enum EMatrixFillMethod
16 {
17 EMatrixFillMethod_None = -1,
18 EMatrixFillMethod_FillZero = 0,
19 EMatrixFillMethod_FillValue,
20 EMatrixFillMethod_DiagonalValue,
21 EMatrixFillMethod_FillRandom,
22 EMatrixFillMethod_FillLinear,
23 EMatrixFillMethodCount,
24 };
25
26 public:
27 CSNAPFeatureMatrixGenerator();
28 CSNAPFeatureMatrixGenerator(const CSNAPFeatureMatrixGenerator& rhs);
29 CSNAPFeatureMatrixGenerator(const CSNAPFeatureMatrixGenerator* pRhs);
30 virtual ~CSNAPFeatureMatrixGenerator();
31
32 virtual const CResult Assign(const CSNAPFeatureMatrixGenerator& rhs);
33 virtual const CResult Assign(const CSNAPFeatureMatrixGenerator* pRhs);
34
35 virtual const CResult Clear() override;
36
37 virtual const CResult SetRowCount(int64_t i64RowCount);
38 virtual int64_t GetRowCount() const;
39
40 virtual const CResult SetColumnCount(int64_t i64ColumnCount);
41 virtual int64_t GetColumnCount() const;
42
43 virtual const CResult SetRangeFrom(double f64RangeFrom);
44 virtual double GetRangeFrom() const;
45
46 virtual const CResult SetRangeTo(double f64RangeTo);
47 virtual double GetRangeTo() const;
48
49 virtual const CResult SetValue(double f64Value);
50 virtual double GetValue() const;
51
52 virtual const CResult SetFillMethod(EMatrixFillMethod eFillMethod);
53 virtual EMatrixFillMethod GetFillMethod() const;
54
55 virtual const CResult Execute();
56
57 virtual const Foundation::CMatrix<double>* GetResultMatrix() const;
58
59 DeclareGetClassType();
60
61 public:
62 static EMatrixFillMethod ConvertMatrixFillMethod(Base::CFLString<wchar_t> flsFillMethod);
63 static Base::CFLString<wchar_t> ConvertMatrixFillMethod(EMatrixFillMethod eFillMethod);
64
65 protected:
66 Foundation::CMatrix<double>* m_pMatResult;
67
68 int64_t m_i64RowCount;
69 int64_t m_i64ColumnCount;
70 double m_f64RangeFrom;
71 double m_f64RangeTo;
72 double m_f64Value;
73
74 EMatrixFillMethod m_eFillMethod;
75
76 static Base::CFLString<wchar_t> m_arrFlsFillMethod[EMatrixFillMethodCount];
77 };
78 }
79}
80
@ Assign
Set the value of CGUIPropertyItemView3DFigure to the specified figure.
@ Clear
Clear all the figure objects.