FLImaging 6.6.27.1
EllipseGauge.h
1#pragma once
2
18
19
21namespace FLImaging
22{
24 namespace AdvancedFunctions
25 {
26 class CInternalEllipseGauge;
27
43
45 {
46 public:
47
57 {
66
75
84
93
102
111 };
112
122 {
131
140
149
158
167 };
168
178 {
187
196 };
197
206
215
224
232 virtual ~CEllipseGauge();
233
242
256 virtual const CResult Assign(const CEllipseGauge& aib);
257
271 virtual const CResult Assign(const CEllipseGauge* pAib);
272
284 virtual const CResult Execute();
285
297 virtual const CResult Clear();
298
326 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int32_t>& flpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360., const double f64Angle = 0.);
327
355 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int32_t>* pFlpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360., const double f64Angle = 0.);
356
384 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int64_t>& flpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360., const double f64Angle = 0.);
385
413 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<int64_t>* pFlpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360., const double f64Angle = 0.);
414
442 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<float>& flpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360., const double f64Angle = 0.);
443
471 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<float>* pFlpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360., const double f64Angle = 0.);
472
500 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<double>& flpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360., const double f64Angle = 0.);
501
529 virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint<double>* pFlpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360., const double f64Angle = 0.);
530
556 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<int32_t>& flrRegion, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360.);
557
583 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<int32_t>* pFlrRegion, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360.);
584
610 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<int64_t>& flrRegion, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360.);
611
637 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<int64_t>* pFlrRegion, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360.);
638
664 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<float>& flrRegion, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360.);
665
691 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<float>* pFlrRegion, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360.);
692
718 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<double>& flrRegion, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360.);
719
745 virtual const CResult SetMeasurementRegion(const Foundation::CFLRect<double>* pFlrRegion, const double f64Tolerance = 40., const double f64StartDeg = 0., const double f64DeltaDeg = 360.);
746
764 virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle<int32_t>& flcRegion, const double f64Tolerance = 40.);
765
783 virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle<int32_t>* pFlcRegion, const double f64Tolerance = 40.);
784
802 virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle<int64_t>& flcRegion, const double f64Tolerance = 40.);
803
821 virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle<int64_t>* pFlcRegion, const double f64Tolerance = 40.);
822
840 virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle<float>& flcRegion, const double f64Tolerance = 40.);
841
859 virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle<float>* pFlcRegion, const double f64Tolerance = 40.);
860
878 virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle<double>& flcRegion, const double f64Tolerance = 40.);
879
897 virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle<double>* pFlcRegion, const double f64Tolerance = 40.);
898
916 virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse<int32_t>& fleRegion, const double f64Tolerance = 40.);
917
935 virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse<int32_t>* pFleRegion, const double f64Tolerance = 40.);
936
954 virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse<int64_t>& fleRegion, const double f64Tolerance = 40.);
955
973 virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse<int64_t>* pFleRegion, const double f64Tolerance = 40.);
974
992 virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse<float>& fleRegion, const double f64Tolerance = 40.);
993
1011 virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse<float>* pFleRegion, const double f64Tolerance = 40.);
1012
1030 virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse<double>& fleRegion, const double f64Tolerance = 40.);
1031
1049 virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse<double>* pFleRegion, const double f64Tolerance = 40.);
1050
1063
1080
1093
1110
1123
1140
1153
1167 virtual const CResult SetThreshold(double f64Threshold = 20);
1168
1178 virtual double GetThreshold() const;
1179
1193 virtual const CResult SetMinimumAmplitude(double f64MinimumAmplitude = 10);
1194
1204 virtual double GetMinimumAmplitude() const;
1205
1219 virtual const CResult SetSamplingStep(double f64SamplingStep = 5.);
1220
1230 virtual double GetSamplingStep() const;
1231
1245 virtual const CResult SetOutliersThreshold(double f64OutliersThreshold = 3.);
1246
1256 virtual double GetOutliersThreshold() const;
1257
1271 virtual const CResult SetOutliersThresholdCount(int64_t i64OutliersThresholdCount = 3);
1272
1282 virtual int64_t GetOutliersThresholdCount() const;
1283
1297 virtual const CResult SetThickness(int64_t i64Thickness = 1);
1298
1308 virtual int64_t GetThickness() const;
1309
1319 virtual double GetTolerance() const;
1320
1334 virtual const CResult EnableRegression(bool bEnable = true);
1335
1345 virtual const bool IsRegressionEnabled();
1346
1360 virtual const CResult EnableOptimalFitting(bool bEnable = true);
1361
1371 virtual const bool IsOptimalFittingEnabled() const;
1372
1390 virtual const Foundation::CFLEllipse<double> GetMeasuredObject(int64_t i64Index = 0) const;
1391
1413 virtual const CResult GetMeasuredObject(Foundation::CFLEllipse<double>& fleMeasuredObject, int64_t i64Index = 0) const;
1414
1436 virtual const CResult GetMeasuredObject(Foundation::CFLEllipse<double>* pFleMeasuredObject, int64_t i64Index = 0) const;
1437
1459 virtual const CResult GetMeasuredValidPoints(Foundation::CFLFigureArray& flfaResult, int64_t i64Index = 0) const;
1460
1482 virtual const CResult GetMeasuredValidPoints(Foundation::CFLFigureArray* pFlfaResult, int64_t i64Index = 0) const;
1483
1505 virtual const CResult GetMeasuredValidPoints(Foundation::CFLPointArray& flpaResult, int64_t i64Index = 0) const;
1506
1528 virtual const CResult GetMeasuredValidPoints(Foundation::CFLPointArray* pFlpaResult, int64_t i64Index = 0) const;
1529
1551 virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLFigureArray& flfaResult, int64_t i64Index = 0) const;
1552
1574 virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLFigureArray* pFlfaResult, int64_t i64Index = 0) const;
1575
1597 virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLPointArray& flpaResult, int64_t i64Index = 0) const;
1598
1620 virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLPointArray* pFlpaResult, int64_t i64Index = 0) const;
1621
1643 virtual const CResult GetMeasuredPoints(Foundation::CFLFigureArray& flfaResult, int64_t i64Index = 0) const;
1644
1666 virtual const CResult GetMeasuredPoints(Foundation::CFLFigureArray* pFlfaResult, int64_t i64Index = 0) const;
1667
1689 virtual const CResult GetMeasuredPoints(Foundation::CFLPointArray& flpaResult, int64_t i64Index = 0) const;
1690
1712 virtual const CResult GetMeasuredPoints(Foundation::CFLPointArray* pFlpaResult, int64_t i64Index = 0) const;
1713
1733 virtual const CResult GetMeasuredScore(double* pF64Score, int64_t i64Index = 0) const;
1734
1754 virtual const CResult GetMeasuredScore(double& f64Score, int64_t i64Index = 0) const;
1755
1768
1788 virtual const CResult GetMeasuredProfile(Base::CFLArray<double>& flaProfile, Base::CFLArray<double>& flaDerivative, double& f64Actual);
1789
1790
1791 virtual bool IsLicenseAvailable() const override;
1792
1793
1794 DeclareGetClassType();
1795 SupportToDuplicateObject(CEllipseGauge, *this);
1796
1797 protected:
1806
1815
1824
1833
1842
1851
1862
1871
1882
1893
1902
1913
1922
1923 protected:
1924 friend class CInternalEllipseGauge;
1925
1926 CInternalEllipseGauge* m_pInternal;
1927 };
1928 }
1929}
virtual const CResult GetMeasuredValidPoints(Foundation::CFLFigureArray *pFlfaResult, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse< float > *pFleRegion, const double f64Tolerance=40.)
virtual const CResult SetTransitionType(ETransitionType eTransitionType=ETransitionType_DarkToBrightOrBrightToDark)
virtual bool IsLicenseAvailable() const override
현재 보유한 라이선스로 해당 알고리즘을 사용할 수 있는지에 대한 여부를 반환 합니다.
virtual const CResult GetMeasuredScore(double *pF64Score, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse< double > *pFleRegion, const double f64Tolerance=40.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< int32_t > &flrRegion, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360.)
virtual const CResult Assign(const CEllipseGauge *pAib)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< float > &flpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360., const double f64Angle=0.)
virtual const CResult GetMeasuredObject(Foundation::CFLEllipse< double > *pFleMeasuredObject, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse< int64_t > *pFleRegion, const double f64Tolerance=40.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< float > *pFlrRegion, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360.)
virtual const CResult SetSearchDirection(ESearchDirection eSearchDirection=ESearchDirection_InsideToOutside)
virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLPointArray *pFlpaResult, int64_t i64Index=0) const
Foundation::CFLEllipse< double > m_fleMeasurementEllipse
Definition EllipseGauge.h:1861
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int64_t > *pFlpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360., const double f64Angle=0.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse< int64_t > &fleRegion, const double f64Tolerance=40.)
ETransitionChoice
Definition EllipseGauge.h:122
@ ETransitionChoice_Closest
Definition EllipseGauge.h:148
@ ETransitionChoice_End
Definition EllipseGauge.h:139
@ ETransitionChoice_Begin
Definition EllipseGauge.h:130
@ ETransitionChoice_LargestArea
Definition EllipseGauge.h:166
@ ETransitionChoice_LargestAmplitude
Definition EllipseGauge.h:157
virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse< double > &fleRegion, const double f64Tolerance=40.)
virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLPointArray &flpaResult, int64_t i64Index=0) const
virtual const CResult GetMeasuredPoints(Foundation::CFLPointArray &flpaResult, int64_t i64Index=0) const
virtual ESearchDirection GetSearchDirection() const
virtual const Foundation::CFLEllipse< double > GetMeasurementRegion() const
bool m_bOptimalFitting
Definition EllipseGauge.h:1921
double m_f64Tolerance
Definition EllipseGauge.h:1870
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int64_t > &flpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360., const double f64Angle=0.)
double m_f64MinimumAmplitude
Definition EllipseGauge.h:1814
virtual const CResult SetMinimumAmplitude(double f64MinimumAmplitude=10)
ETransitionType m_eTransitionType
Definition EllipseGauge.h:1881
virtual const CResult GetMeasuredValidPoints(Foundation::CFLPointArray &flpaResult, int64_t i64Index=0) const
virtual const CResult SetTransitionChoice(ETransitionChoice eTransitionChoice=ETransitionChoice_LargestAmplitude)
ETransitionChoice m_eTransitionChoice
Definition EllipseGauge.h:1892
virtual const Foundation::CFLFigureArray GetActualMeasurementRegion()
virtual const CResult GetMeasuredObject(Foundation::CFLEllipse< double > &fleMeasuredObject, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle< int32_t > &flcRegion, const double f64Tolerance=40.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle< float > &flcRegion, const double f64Tolerance=40.)
virtual const CResult EnableRegression(bool bEnable=true)
const CEllipseGauge & operator=(const CEllipseGauge &eg)
virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse< float > &fleRegion, const double f64Tolerance=40.)
virtual ETransitionType GetTransitionType() const
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< int64_t > &flrRegion, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360.)
virtual const CResult SetSamplingStep(double f64SamplingStep=5.)
double m_f64OutliersThreshold
Definition EllipseGauge.h:1832
virtual const CResult GetMeasuredPoints(Foundation::CFLPointArray *pFlpaResult, int64_t i64Index=0) const
virtual const CResult EnableOptimalFitting(bool bEnable=true)
virtual const bool IsOptimalFittingEnabled() const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int32_t > *pFlpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360., const double f64Angle=0.)
virtual const CResult SetThreshold(double f64Threshold=20)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< int32_t > &flpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360., const double f64Angle=0.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle< int64_t > &flcRegion, const double f64Tolerance=40.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< int32_t > *pFlrRegion, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360.)
virtual const CResult GetMeasuredScore(double &f64Score, int64_t i64Index=0) const
virtual const CResult GetMeasuredValidPoints(Foundation::CFLPointArray *pFlpaResult, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle< double > &flcRegion, const double f64Tolerance=40.)
virtual const CResult GetMeasuredValidPoints(Foundation::CFLFigureArray &flfaResult, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< double > &flpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360., const double f64Angle=0.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< double > &flrRegion, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360.)
virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLFigureArray *pFlfaResult, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< double > *pFlrRegion, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360.)
virtual const CResult GetMeasuredInvalidPoints(Foundation::CFLFigureArray &flfaResult, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle< int32_t > *pFlcRegion, const double f64Tolerance=40.)
virtual int64_t GetOutliersThresholdCount() const
virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle< float > *pFlcRegion, const double f64Tolerance=40.)
bool m_bEnable
Definition EllipseGauge.h:1901
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< double > *pFlpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360., const double f64Angle=0.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle< double > *pFlcRegion, const double f64Tolerance=40.)
virtual const Foundation::CFLEllipse< double > GetMeasuredObject(int64_t i64Index=0) const
ETransitionType
Definition EllipseGauge.h:57
@ ETransitionType_DarkToBrightToDark
Definition EllipseGauge.h:92
@ ETransitionType_DarkToBright
Definition EllipseGauge.h:65
@ ETransitionType_DarkToBrightToDarkOrBrightToDarkToBright
Definition EllipseGauge.h:110
@ ETransitionType_DarkToBrightOrBrightToDark
Definition EllipseGauge.h:83
@ ETransitionType_BrightToDarkToBright
Definition EllipseGauge.h:101
@ ETransitionType_BrightToDark
Definition EllipseGauge.h:74
virtual const CResult GetMeasuredPoints(Foundation::CFLFigureArray *pFlfaResult, int64_t i64Index=0) const
virtual const CResult GetMeasuredPoints(Foundation::CFLFigureArray &flfaResult, int64_t i64Index=0) const
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< int64_t > *pFlrRegion, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360.)
virtual const CResult SetThickness(int64_t i64Thickness=1)
virtual const CResult GetMeasuredProfile(Base::CFLArray< double > &flaProfile, Base::CFLArray< double > &flaDerivative, double &f64Actual)
double m_f64Threshold
Definition EllipseGauge.h:1805
virtual const CResult SetOutliersThreshold(double f64OutliersThreshold=3.)
virtual const CResult SetMeasurementRegion(const Foundation::CFLPoint< float > *pFlpCenter, const double f64Diameter1, const double f64Diameter2, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360., const double f64Angle=0.)
virtual const CResult SetOutliersThresholdCount(int64_t i64OutliersThresholdCount=3)
double m_f64SamplingStep
Definition EllipseGauge.h:1823
virtual const CResult SetMeasurementRegion(const Foundation::CFLCircle< int64_t > *pFlcRegion, const double f64Tolerance=40.)
virtual const CResult Assign(const CEllipseGauge &aib)
int64_t m_i64OutliersThresholdCount
Definition EllipseGauge.h:1841
virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse< int32_t > *pFleRegion, const double f64Tolerance=40.)
ESearchDirection m_eSearchDirection
Definition EllipseGauge.h:1912
CEllipseGauge(const CEllipseGauge *pEg)
virtual const CResult SetMeasurementRegion(const Foundation::CFLEllipse< int32_t > &fleRegion, const double f64Tolerance=40.)
int64_t m_i64Thickness
Definition EllipseGauge.h:1850
virtual const CResult SetMeasurementRegion(const Foundation::CFLRect< float > &flrRegion, const double f64Tolerance=40., const double f64StartDeg=0., const double f64DeltaDeg=360.)
ESearchDirection
Definition EllipseGauge.h:178
@ ESearchDirection_OutsideToInside
Definition EllipseGauge.h:195
@ ESearchDirection_InsideToOutside
Definition EllipseGauge.h:186
virtual ETransitionChoice GetTransitionChoice() const
Template type 의 배열 클래스.
Definition FLArray.h:53
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1596
원을 표현하는 클래스
Definition FLCircle.h:25
타원을 표현하는 클래스
Definition FLEllipse.h:25
도형 배열을 표현하는 클래스
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