FLImaging 6.6.27.1
CrossGauge.h
1#pragma once
2
19
20
22namespace FLImaging
23{
25 namespace AdvancedFunctions
26 {
27 class CInternalCrossGauge;
28
46 {
47 public:
48
58 {
67
76
85 };
86
96 {
105
114
123 };
124
133
142
151
159 virtual ~CCrossGauge();
160
169
183 virtual const CResult Assign(const CCrossGauge& aib);
184
198 virtual const CResult Assign(const CCrossGauge* pAib);
199
211 virtual const CResult Execute();
212
224 virtual const CResult Clear();
225
249 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int32_t>& flpRegion, const double f64Width = 80., const double f64Height = 80., const double f64Angle = 0., const double f64Tolerance = 40.);
250
274 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int32_t>* pFlpRegion, const double f64Width = 80., const double f64Height = 80., const double f64Angle = 0., const double f64Tolerance = 40.);
275
299 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int64_t>& flpRegion, const double f64Width = 80., const double f64Height = 80., const double f64Angle = 0., const double f64Tolerance = 40.);
300
324 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int64_t>* pFlpRegion, const double f64Width = 80., const double f64Height = 80., const double f64Angle = 0., const double f64Tolerance = 40.);
325
349 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<float>& flpRegion, const double f64Width = 80., const double f64Height = 80., const double f64Angle = 0., const double f64Tolerance = 40.);
350
374 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<float>* pFlpRegion, const double f64Width = 80., const double f64Height = 80., const double f64Angle = 0., const double f64Tolerance = 40.);
375
399 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<double>& flpRegion, const double f64Width = 80., const double f64Height = 80., const double f64Angle = 0., const double f64Tolerance = 40.);
400
424 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<double>* pFlpRegion, const double f64Width = 80., const double f64Height = 80., const double f64Angle = 0., const double f64Tolerance = 40.);
425
443 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<int32_t>& flrRegion, const double f64Tolerance = 40.);
444
462 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<int32_t>* pFlrRegion, const double f64Tolerance = 40.);
463
481 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<int64_t>& flrRegion, const double f64Tolerance = 40.);
482
500 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<int64_t>* pFlrRegion, const double f64Tolerance = 40.);
501
519 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<float>& flrRegion, const double f64Tolerance = 40.);
520
538 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<float>* pFlrRegion, const double f64Tolerance = 40.);
539
557 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<double>& flrRegion, const double f64Tolerance = 40.);
558
576 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<double>* pFlrRegion, const double f64Tolerance = 40.);
577
590
608 virtual const CResult SetMeasurementMarginRatio(double f64InnerMargin = 0.3, double f64OuterMargin = 0.1);
609
627 virtual const CResult GetMeasurementMarginRatio(double& f64InnerMargin, double& f64OuterMargin) const;
628
645
658
675
688
702 virtual const CResult SetThreshold(double f64Threshold = 20);
703
713 virtual double GetThreshold() const;
714
728 virtual const CResult SetMinimumAmplitude(double f64MinimumAmplitude = 10);
729
739 virtual double GetMinimumAmplitude() const;
740
754 virtual const CResult SetSamplingStep(double f64SamplingStep = 5.);
755
765 virtual double GetSamplingStep() const;
766
780 virtual const CResult EnableClusterMode(bool bUse = true);
781
791 virtual bool IsClusterModeEnabled() const;
792
806 virtual const CResult SetOutliersThreshold(double f64OutliersThreshold = 3.);
807
817 virtual double GetOutliersThreshold() const;
818
832 virtual const CResult SetOutliersThresholdCount(int64_t i64OutliersThresholdCount = 3);
833
843 virtual int64_t GetOutliersThresholdCount() const;
844
858 virtual const CResult SetThickness(int64_t i64Thickness = 1);
859
869 virtual int64_t GetThickness() const;
870
880 virtual const double GetTolerance() const;
881
895 virtual const CResult EnableRegression(bool bEnable = true);
896
906 virtual const bool IsRegressionEnabled() const;
907
921 virtual const CResult EnableOptimalFitting(bool bEnable = true);
922
932 virtual const bool IsOptimalFittingEnabled() const;
933
953 virtual const CResult GetMeasurementLines(Foundation::CFLFigureArray& flfaMeasuredLines) const;
954
974 virtual const CResult GetMeasurementLines(Foundation::CFLFigureArray* pFlfaMeasuredLines) const;
975
995 virtual const CResult GetMeasuredLines(Foundation::CFLFigureArray& flfaMeasuredLines) const;
996
1016 virtual const CResult GetMeasuredLines(Foundation::CFLFigureArray* pFlfaMeasuredLines) const;
1017
1030
1046 virtual const CResult GetMeasuredObject(Foundation::CFLPoint<double>& flpMeasuredObject) const;
1047
1063 virtual const CResult GetMeasuredObject(Foundation::CFLPoint<double>* pFlpMeasuredObject) const;
1064
1081
1098
1115
1132
1149
1166
1183
1200
1216 virtual const CResult GetMeasuredPoints(Foundation::CFLFigureArray& flfaResult) const;
1217
1233 virtual const CResult GetMeasuredPoints(Foundation::CFLFigureArray* pFlfaResult) const;
1234
1250 virtual const CResult GetMeasuredPoints(Foundation::CFLPointArray& flpaResult) const;
1251
1267 virtual const CResult GetMeasuredPoints(Foundation::CFLPointArray* pFlpaResult) const;
1268
1282 virtual const CResult GetMeasuredAngle(double* pF64Angle) const;
1283
1297 virtual const CResult GetMeasuredAngle(double& f64Angle) const;
1298
1312 virtual const CResult GetMeasuredScore(double* pF64Score) const;
1313
1327 virtual const CResult GetMeasuredScore(double& f64Score) const;
1328
1341
1361 virtual const CResult GetMeasuredProfile(Base::CFLArray<double>& flaProfile, Base::CFLArray<double>& flaDerivative, double& f64Actual);
1362
1363 virtual bool IsLicenseAvailable() const override;
1364
1365
1366 DeclareGetClassType();
1367 SupportToDuplicateObject(CCrossGauge, *this);
1368
1369 protected:
1378
1387
1396
1405
1414
1423
1434
1443
1454
1465
1474
1483
1492
1501
1510
1511 protected:
1512 friend class CInternalCrossGauge;
1513 CInternalCrossGauge* m_pInternal;
1514 };
1515 }
1516}
virtual const CResult SetThreshold(double f64Threshold=20)
virtual const CResult GetMeasuredValidPoints(Foundation::CFLFigureArray &flfaResult) const
virtual const CResult GetMeasuredPoints(Foundation::CFLFigureArray &flfaResult) const
virtual const CResult SetMinimumAmplitude(double f64MinimumAmplitude=10)
virtual bool IsLicenseAvailable() const override
현재 보유한 라이선스로 해당 알고리즘을 사용할 수 있는지에 대한 여부를 반환 합니다.
Foundation::CFLRect< double > m_flrMeasurementLine
Definition CrossGauge.h:1433
virtual const CResult Assign(const CCrossGauge *pAib)
virtual const Foundation::CFLFigureArray GetActualMeasurementRegion()
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int32_t > &flpRegion, const double f64Width=80., const double f64Height=80., const double f64Angle=0., const double f64Tolerance=40.)
virtual const CResult GetMeasuredScore(double *pF64Score) const
virtual const CResult GetMeasuredLines(Foundation::CFLFigureArray &flfaMeasuredLines) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< double > &flpRegion, const double f64Width=80., const double f64Height=80., const double f64Angle=0., const double f64Tolerance=40.)
virtual Foundation::CFLRect< double > GetMeasurementRegion() const
ETransitionType m_eTransitionType
Definition CrossGauge.h:1453
double m_f64Tolerance
Definition CrossGauge.h:1442
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int64_t > &flpRegion, const double f64Width=80., const double f64Height=80., const double f64Angle=0., const double f64Tolerance=40.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< double > &flrRegion, const double f64Tolerance=40.)
virtual double GetMinimumAmplitude() const
virtual const CResult Assign(const CCrossGauge &aib)
virtual int64_t GetOutliersThresholdCount() const
const CCrossGauge & operator=(const CCrossGauge &lg)
virtual const CResult SetMeasurementMarginRatio(double f64InnerMargin=0.3, double f64OuterMargin=0.1)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int32_t > *pFlpRegion, const double f64Width=80., const double f64Height=80., const double f64Angle=0., const double f64Tolerance=40.)
double m_f64MinimumAmplitude
Definition CrossGauge.h:1386
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< int32_t > *pFlrRegion, const double f64Tolerance=40.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< double > *pFlrRegion, const double f64Tolerance=40.)
virtual const double GetTolerance() const
virtual const CResult GetMeasurementMarginRatio(double &f64InnerMargin, double &f64OuterMargin) const
double m_f64SamplingStep
Definition CrossGauge.h:1395
virtual const bool IsOptimalFittingEnabled() const
virtual double GetOutliersThreshold() const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< double > *pFlpRegion, const double f64Width=80., const double f64Height=80., const double f64Angle=0., const double f64Tolerance=40.)
bool m_bOptimalFitting
Definition CrossGauge.h:1509
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< int64_t > *pFlrRegion, const double f64Tolerance=40.)
virtual const CResult GetMeasuredValidPoints(Foundation::CFLPointArray &flpaResult) const
int64_t m_i64Thickness
Definition CrossGauge.h:1422
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int64_t > *pFlpRegion, const double f64Width=80., const double f64Height=80., const double f64Angle=0., const double f64Tolerance=40.)
ETransitionType
Definition CrossGauge.h:58
@ ETransitionType_DarkToBrightToDark
Definition CrossGauge.h:66
@ ETransitionType_DarkToBrightToDarkOrBrightToDarkToBright
Definition CrossGauge.h:84
@ ETransitionType_BrightToDarkToBright
Definition CrossGauge.h:75
ETransitionChoice
Definition CrossGauge.h:96
@ ETransitionChoice_LargestAmplitude
Definition CrossGauge.h:113
@ ETransitionChoice_LargestArea
Definition CrossGauge.h:122
@ ETransitionChoice_Closest
Definition CrossGauge.h:104
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< int32_t > &flrRegion, const double f64Tolerance=40.)
virtual const CResult GetMeasuredObject(Foundation::CFLPoint< double > &flpMeasuredObject) const
virtual const CResult EnableOptimalFitting(bool bEnable=true)
virtual const CResult GetMeasuredAngle(double &f64Angle) const
virtual ETransitionChoice GetTransitionChoice() const
virtual const CResult GetMeasurementLines(Foundation::CFLFigureArray &flfaMeasuredLines) const
virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLFigureArray &flfaResult) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< float > &flrRegion, const double f64Tolerance=40.)
double m_f64OuterMargin
Definition CrossGauge.h:1491
bool m_bEnable
Definition CrossGauge.h:1500
virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLFigureArray *pFlfaResult) const
virtual const CResult SetThickness(int64_t i64Thickness=1)
ETransitionChoice m_eTransitionChoice
Definition CrossGauge.h:1464
virtual ETransitionType GetTransitionType() const
int64_t m_i64OutliersThresholdCount
Definition CrossGauge.h:1413
virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLPointArray &flpaResult) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< float > *pFlrRegion, const double f64Tolerance=40.)
virtual const CResult SetOutliersThreshold(double f64OutliersThreshold=3.)
virtual const CResult SetOutliersThresholdCount(int64_t i64OutliersThresholdCount=3)
virtual const CResult EnableRegression(bool bEnable=true)
virtual const CResult GetMeasuredPoints(Foundation::CFLPointArray *pFlpaResult) const
virtual const CResult GetMeasuredLines(Foundation::CFLFigureArray *pFlfaMeasuredLines) const
virtual const CResult GetMeasuredValidPoints(Foundation::CFLFigureArray *pFlfaResult) const
double m_f64Threshold
Definition CrossGauge.h:1377
virtual const CResult SetSamplingStep(double f64SamplingStep=5.)
virtual const CResult GetMeasuredAngle(double *pF64Angle) const
virtual const CResult GetMeasuredValidPoints(Foundation::CFLPointArray *pFlpaResult) const
bool m_bClusterMode
Definition CrossGauge.h:1473
virtual const bool IsRegressionEnabled() const
virtual const CResult EnableClusterMode(bool bUse=true)
virtual const Foundation::CFLPoint< double > GetMeasuredObject() const
virtual const CResult GetMeasuredProfile(Base::CFLArray< double > &flaProfile, Base::CFLArray< double > &flaDerivative, double &f64Actual)
virtual const CResult GetMeasuredPoints(Foundation::CFLFigureArray *pFlfaResult) const
double m_f64InnerMargin
Definition CrossGauge.h:1482
virtual const CResult GetMeasuredScore(double &f64Score) const
virtual const CResult GetMeasuredPoints(Foundation::CFLPointArray &flpaResult) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< float > *pFlpRegion, const double f64Width=80., const double f64Height=80., const double f64Angle=0., const double f64Tolerance=40.)
virtual const CResult GetMeasurementLines(Foundation::CFLFigureArray *pFlfaMeasuredLines) const
double m_f64OutliersThreshold
Definition CrossGauge.h:1404
virtual const CResult SetTransitionChoice(ETransitionChoice eTransitionChoice=ETransitionChoice_LargestAmplitude)
virtual const CResult GetMeasuredObject(Foundation::CFLPoint< double > *pFlpMeasuredObject) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< int64_t > &flrRegion, const double f64Tolerance=40.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< float > &flpRegion, const double f64Width=80., const double f64Height=80., const double f64Angle=0., const double f64Tolerance=40.)
virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLPointArray *pFlpaResult) const
virtual const CResult SetTransitionType(ETransitionType eTransitionType=ETransitionType_DarkToBrightToDarkOrBrightToDarkToBright)
Template type 의 배열 클래스.
Definition FLArray.h:53
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1596
도형 배열을 표현하는 클래스
Definition FLFigureArray.h:26
점 배열을 표현하는 클래스
Definition FLPointArray.h:26
점을 표현하는 클래스
Definition FLPoint.h:24
직사각형을 표현하는 클래스
Definition FLRect.h:24
이미지 처리 클래스의 베이스 클래스
Definition AlgorithmFeature_SR.h:31
Definition AlgorithmFeature_DI_BAT_CI.h:15