FLImaging 7.8.25.3
PointGauge.h
1#pragma once
2
18
19
21namespace FLImaging
22{
24 namespace AdvancedFunctions
25 {
26 class CInternalPointGauge;
27
44 {
45 public:
46
56 {
65
74
83
92
101
110 };
111
121 {
130
139
148
157
166 };
167
176
185
194
202 virtual ~CPointGauge();
203
212
226 virtual const CResult Assign(const CPointGauge& aib);
227
241 virtual const CResult Assign(const CPointGauge* pAib);
242
254 virtual const CResult Execute();
255
267 virtual const CResult Clear();
268
288 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int32_t>& flpCenter, double f64Tolerance = 40., double f64Angle = 0.);
289
309 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int32_t>* pFlpCenter, double f64Tolerance = 40., double f64Angle = 0.);
310
330 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int64_t>& flpCenter, double f64Tolerance = 40., double f64Angle = 0.);
331
351 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int64_t>* pFlpCenter, double f64Tolerance = 40., double f64Angle = 0.);
352
372 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<float>& flpCenter, double f64Tolerance = 40., double f64Angle = 0.);
373
393 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<float>* pFlpCenter, double f64Tolerance = 40., double f64Angle = 0.);
394
414 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<double>& flpCenter, double f64Tolerance = 40., double f64Angle = 0.);
415
435 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<double>* pFlpCenter, double f64Tolerance = 40., double f64Angle = 0.);
436
455
474
493
512
531
550
569
588
604 virtual const CResult SetMeasurementRegion(const Foundation::CFLLine<int32_t>& fllMeasurementLine);
605
621 virtual const CResult SetMeasurementRegion(const Foundation::CFLLine<int32_t>* pFllMeasurementLine);
622
638 virtual const CResult SetMeasurementRegion(const Foundation::CFLLine<int64_t>& fllMeasurementLine);
639
655
656 virtual const CResult SetMeasurementRegion(const Foundation::CFLLine<int64_t>* pFllMeasurementLine);
657
673 virtual const CResult SetMeasurementRegion(const Foundation::CFLLine<float>& fllMeasurementLine);
674
690 virtual const CResult SetMeasurementRegion(const Foundation::CFLLine<float>* pFllMeasurementLine);
691
707 virtual const CResult SetMeasurementRegion(const Foundation::CFLLine<double>& fllMeasurementLine);
708
724 virtual const CResult SetMeasurementRegion(const Foundation::CFLLine<double>* pFllMeasurementLine);
725
735 virtual double GetTolerance() const;
736
753
766
783
796
810 virtual const CResult SetThreshold(double f64Threshold = 20);
811
821 virtual double GetThreshold() const;
822
836 virtual const CResult SetMinimumAmplitude(double f64MinimumAmplitude = 10);
837
847 virtual double GetMinimumAmplitude() const;
848
862 virtual const CResult SetThickness(int64_t i64Thickness = 1);
863
873 virtual int64_t GetThickness() const;
874
888 virtual const CResult EnableOptimalFitting(bool bEnable = true);
889
899 virtual const bool IsOptimalFittingEnabled() const;
900
914 virtual const CResult EnableAccurateMode(bool bAccurateMode = false);
915
925 virtual bool IsAccurateModeEnabled() const;
926
936 virtual int64_t GetMeasuredObjectCount() const;
937
955 virtual const Foundation::CFLPoint<double> GetMeasuredObject(int64_t i64Index = 0) const;
956
978 virtual const CResult GetMeasuredObject(Foundation::CFLPoint<double>& flpResult, int64_t i64Index = 0) const;
979
1001 virtual const CResult GetMeasuredObject(Foundation::CFLPoint<double>* pFlpResult, int64_t i64Index = 0) const;
1002
1024 virtual const CResult GetMeasuredTransition(ETransitionType& eTransitionResult, int64_t i64Index = 0) const;
1025
1045 virtual const CResult GetMeasuredObject(Foundation::CFLFigureArray& flfaResult) const;
1046
1066 virtual const CResult GetMeasuredObject(Foundation::CFLFigureArray* pFlfaResult) const;
1067
1087 virtual const CResult GetMeasuredObject(Foundation::CFLPointArray& flpaResult) const;
1088
1108 virtual const CResult GetMeasuredObject(Foundation::CFLPointArray* pFlpaResult) const;
1109
1142
1155
1168
1189
1190
1191 virtual bool IsLicenseAvailable() const override;
1192
1193
1194 DeclareGetClassType();
1195 SupportToDuplicateObject(CPointGauge, *this);
1196
1197 protected:
1206
1215
1224
1233
1244
1255
1266
1275
1284 protected:
1285 friend class CInternalPointGauge;
1286
1287 CInternalPointGauge* m_pInternal;
1288 };
1289 }
1290}
virtual const CResult GetMeasuredProfile(Base::CFLArray< double > &flaProfile, Base::CFLArray< double > &flaDerivative, Base::CFLArray< double > &flaActual)
bool m_bOptimalFitting
Definition PointGauge.h:1274
const CResult GetMeasuredTransition(Base::CFLArray< int32_t > &flaResult) const
virtual const CResult SetTransitionChoice(ETransitionChoice eTransitionChoice=ETransitionChoice_LargestAmplitude)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int32_t > &flpCenter, double f64Tolerance=40., double f64Angle=0.)
virtual ETransitionType GetTransitionType() const
ETransitionType
Definition PointGauge.h:56
@ ETransitionType_BrightToDarkToBright
Definition PointGauge.h:100
@ ETransitionType_BrightToDark
Definition PointGauge.h:73
@ ETransitionType_DarkToBrightToDarkOrBrightToDarkToBright
Definition PointGauge.h:109
@ ETransitionType_DarkToBright
Definition PointGauge.h:64
@ ETransitionType_DarkToBrightOrBrightToDark
Definition PointGauge.h:82
@ ETransitionType_DarkToBrightToDark
Definition PointGauge.h:91
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int32_t > &flpStart, const Foundation::CFLPoint< int32_t > &flpEnd)
virtual ETransitionChoice GetTransitionChoice() const
double m_f64MinimumAmplitude
Definition PointGauge.h:1214
virtual const CResult SetMeasurementRegion(const Foundation::CFLLine< double > &fllMeasurementLine)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< float > *pFlpStart, const Foundation::CFLPoint< float > *pFlpEnd)
virtual const CResult SetThreshold(double f64Threshold=20)
virtual const CResult SetMinimumAmplitude(double f64MinimumAmplitude=10)
virtual const Foundation::CFLPoint< double > GetMeasuredObject(int64_t i64Index=0) const
double m_f64Tolerance
Definition PointGauge.h:1232
virtual const CResult GetMeasuredObject(Foundation::CFLFigureArray &flfaResult) const
ETransitionType m_eTransitionType
Definition PointGauge.h:1254
virtual const CResult GetMeasuredObject(Foundation::CFLPointArray *pFlpaResult) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< double > *pFlpStart, const Foundation::CFLPoint< double > *pFlpEnd)
virtual const CResult GetMeasuredObject(Foundation::CFLPoint< double > &flpResult, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int64_t > &flpCenter, double f64Tolerance=40., double f64Angle=0.)
virtual const CResult SetThickness(int64_t i64Thickness=1)
virtual const CResult GetMeasuredObject(Foundation::CFLPointArray &flpaResult) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< double > &flpCenter, double f64Tolerance=40., double f64Angle=0.)
virtual const CResult EnableAccurateMode(bool bAccurateMode=false)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< double > *pFlpCenter, double f64Tolerance=40., double f64Angle=0.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLLine< int32_t > *pFllMeasurementLine)
bool m_bAccurateMode
Definition PointGauge.h:1283
ETransitionChoice
Definition PointGauge.h:121
@ ETransitionChoice_Closest
Definition PointGauge.h:147
@ ETransitionChoice_LargestArea
Definition PointGauge.h:165
@ ETransitionChoice_End
Definition PointGauge.h:138
@ ETransitionChoice_LargestAmplitude
Definition PointGauge.h:156
@ ETransitionChoice_Begin
Definition PointGauge.h:129
virtual const CResult GetMeasuredTransition(ETransitionType &eTransitionResult, int64_t i64Index=0) const
virtual const CResult EnableOptimalFitting(bool bEnable=true)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< double > &flpStart, const Foundation::CFLPoint< double > &flpEnd)
virtual const CResult SetMeasurementRegion(const Foundation::CFLLine< double > *pFllMeasurementLine)
virtual const CResult SetMeasurementRegion(const Foundation::CFLLine< int64_t > *pFllMeasurementLine)
virtual int64_t GetMeasuredObjectCount() const
virtual const CResult GetMeasuredObject(Foundation::CFLFigureArray *pFlfaResult) const
int64_t m_i64Thickness
Definition PointGauge.h:1223
virtual const CResult SetMeasurementRegion(const Foundation::CFLLine< int64_t > &fllMeasurementLine)
virtual const CResult GetMeasuredObject(Foundation::CFLPoint< double > *pFlpResult, int64_t i64Index=0) const
virtual const Foundation::CFLLine< double > GetMeasurementRegion() const
Foundation::CFLLine< double > m_fllMeasurementLine
Definition PointGauge.h:1243
virtual double GetMinimumAmplitude() const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int64_t > *pFlpCenter, double f64Tolerance=40., double f64Angle=0.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLLine< float > &fllMeasurementLine)
ETransitionChoice m_eTransitionChoice
Definition PointGauge.h:1265
double m_f64Threshold
Definition PointGauge.h:1205
virtual const CResult SetTransitionType(ETransitionType eTransitionType=ETransitionType_DarkToBrightOrBrightToDark)
const CResult GetMeasuredTransition(Base::CFLArray< int32_t > *pFlaResult) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int32_t > *pFlpCenter, double f64Tolerance=40., double f64Angle=0.)
virtual const CResult Assign(const CPointGauge &aib)
virtual const CResult Assign(const CPointGauge *pAib)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int32_t > *pFlpStart, const Foundation::CFLPoint< int32_t > *pFlpEnd)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< float > *pFlpCenter, double f64Tolerance=40., double f64Angle=0.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLLine< float > *pFllMeasurementLine)
virtual bool IsLicenseAvailable() const override
Returns whether the algorithm can be used with the current license.
virtual const bool IsOptimalFittingEnabled() const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< float > &flpCenter, double f64Tolerance=40., double f64Angle=0.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLLine< int32_t > &fllMeasurementLine)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int64_t > *pFlpStart, const Foundation::CFLPoint< int64_t > *pFlpEnd)
const CPointGauge & operator=(const CPointGauge &pg)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int64_t > &flpStart, const Foundation::CFLPoint< int64_t > &flpEnd)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< float > &flpStart, const Foundation::CFLPoint< float > &flpEnd)
virtual const Foundation::CFLFigureArray GetActualMeasurementRegion()
Template type array class.
Definition FLArray.h:71
FLImaging module execution result object.
Definition ResultsDef.h:1704
A base class representing array of figure.
Definition FLFigureArray.h:27
A class representing a line.
Definition FLLine.h:25
A base class representing array of figure.
Definition FLPointArray.h:26
A class representing a point.
Definition FLPoint.h:24
Base class of image processing classes Base of imaging algorithm classes, has common getter/setter.
Definition AlgorithmFeature_SR.h:31
Definition AlgorithmFeature_DI_BAT_CI.h:15