FLImaging 6.6.27.1
DrawingMatch.h
1#pragma once
2
20
21#include "GeometricMatch.h"
22
24namespace FLImaging
25{
27 namespace AdvancedFunctions
28 {
29 class CInternalDrawingMatch;
30
48
49 class FL_EXPORT CDrawingMatch : public CGeometricMatch
50 {
51 public:
52
62 {
71
80
89
98 };
99
108
117
126
134 virtual ~CDrawingMatch();
135
144
158 virtual const CResult Assign(const CDrawingMatch& alg);
159
173 virtual const CResult Assign(const CDrawingMatch* pAlgem);
174
186 virtual const CResult Clear();
187
199 virtual const CResult ClearLearnedData();
200
218 virtual const CResult SetDistanceUnit(const EDistanceUnit eDistanceUnit = EDistanceUnit_Millimeter);
219
238
252 virtual const EDistanceUnit GetDistanceUnit() const;
253
273 virtual const CResult SetPixelAccuracy(double f64PixelAccruacyX = 0, double f64PixelAccruacyY = 0);
274
294 virtual const CResult GetPixelAccuracy(double& f64PixelAccruacyX, double& f64PixelAccruacyY) const;
295
313 virtual const CResult SetDrawing(Foundation::CFLFigure* pFlfDrawing);
314
330 virtual const CResult SetDrawing(Base::CFLString<wchar_t> strFilePath);
331
351 virtual const CResult GetDrawing(Foundation::CFLFigure*& pFlfDrawing) const;
352
372 virtual const CResult SetDrawingPivot(Foundation::CFLPoint<double>* pFlpDrawingPivot = nullptr);
373
393 virtual const CResult GetDrawingPivot(Foundation::CFLPoint<double>*& pFlpDrawingPivot) const;
394
395 virtual const CResult SetFeatureCount(int64_t i64FeatureCount = 10000) override;
396 virtual const CResult SetFeatureFiltering(double f64FeatureFilter = 0) override;
397 virtual const CResult SetLearnThresholdCoefficient(double f64ThresCoeff = 0.5) override;
398
413
428
429
430 virtual const int64_t GetLearnWeightROICount() const override;
431 virtual const CResult GetLearnWeightROI(Foundation::CFLFigureArray* pFlfaWeightROI, double& f64Weight, int64_t i64Index = 0) const override;
432 virtual const CResult GetLearnWeightROI(Foundation::CFLFigureArray& flfaWeightROI, double& f64Weight, int64_t i64Index = 0) const override;
433 virtual const CResult AddLearnWeightROI(Foundation::CFLFigure* pFlfWeightROI, double f64Weight = 1.) override;
434 virtual const CResult DeleteLearnWeightROI(int64_t i64Index = 0) override;
435 virtual const CResult ClearLearnWeightROI() override;
436 virtual const CResult SetFindThresholdCoefficient(double f64ThresCoeff = 1.2) override;
438 virtual const CResult SetJudgementLevel(EJudgementLevel eJudgementLevel = EJudgementLevel_Rough) override;
458 virtual const CResult GetLearnedWeightROI(Foundation::CFLFigureArray* pFlfaWeightROI, double& f64Weight, int64_t i64Index = 0) const;
459
479 virtual const CResult GetLearnedWeightROI(Foundation::CFLFigureArray& flfaWeightROI, double& f64Weight, int64_t i64Index = 0) const;
480
497
518
535
555 virtual const CResult ConvertFileToUnit(Base::CFLString<wchar_t> strFilePath, EDistanceUnit& eUnitResult);
556
557 virtual const CResult Learn() override;
558 virtual const CResult Execute() override;
559
580 static const CResult GetLearnedFileVersion(Base::CFLString<wchar_t> strPatternFile, int32_t& i32MajorVer, int32_t& i32MinorVer);
581
582 virtual bool IsLicenseAvailable() const override;
583
584
585 DeclareGetClassType();
586 SupportToDuplicateObject(CDrawingMatch, *this);
587
588 private:
598 Foundation::CFLFigure* m_pFlfDrawing;
599
609 Foundation::CFLPoint<double>* m_pFlpDrawingPivot;
610
620 EDistanceUnit m_eDistanceUnit;
621
629 double m_f64PixelAccruacyX;
630
638 double m_f64PixelAccruacyY;
639
640 private:
641 friend class CInternalDrawingMatch;
642
649 };
650
651
652 }
653}
virtual const CResult SetLearnPivot(const Foundation::CFLPoint< double > &flpLearnPivot)
virtual const Foundation::CFLPoint< double > * GetLearnPivot() const
virtual const Foundation::CFLFigure * GetLearnROI() const
virtual const CResult SetLearnROI(const Foundation::CFLFigure &flfLearn, bool bDeepCopy=true)
virtual const Base::CFLImage * GetLearnImage() const
virtual const CResult SetLearnImage(Base::CFLImage &fliLearn)
virtual const CResult SetDistanceUnit(const EDistanceUnit eDistanceUnit=EDistanceUnit_Millimeter)
virtual const Foundation::CFLFigureArray GetLearnedDrawing() const
virtual const CResult SetLearnThresholdCoefficient(double f64ThresCoeff=0.5) override
virtual const EDistanceUnit GetDistanceUnit() const
virtual const CResult GetLearnedWeightROI(Foundation::CFLFigureArray &flfaWeightROI, double &f64Weight, int64_t i64Index=0) const
const CDrawingMatch & operator=(const CDrawingMatch &alg)
virtual const CResult SetContrastOption(EMatchContrastOption eOption=EMatchContrastOption_Any)
virtual const CResult Execute() override
virtual const CResult SetJudgementLevel(EJudgementLevel eJudgementLevel=EJudgementLevel_Rough) override
virtual const CResult Learn() override
virtual const CResult GetDrawingPivot(Foundation::CFLPoint< double > *&pFlpDrawingPivot) const
virtual const CResult Assign(const CDrawingMatch &alg)
virtual const CResult SetFindThresholdCoefficient(double f64ThresCoeff=1.2) override
virtual const CResult GetPixelAccuracy(double &f64PixelAccruacyX, double &f64PixelAccruacyY) const
CDrawingMatch(const CDrawingMatch &alg)
virtual bool IsLicenseAvailable() const override
현재 보유한 라이선스로 해당 알고리즘을 사용할 수 있는지에 대한 여부를 반환 합니다.
virtual const CResult DeleteLearnWeightROI(int64_t i64Index=0) override
virtual const Foundation::CFLFigureArray * ConvertFileToFigureArray(Base::CFLString< wchar_t > strFilePath)
virtual const CResult SetFeatureCount(int64_t i64FeatureCount=10000) override
virtual const CResult SetDrawing(Base::CFLString< wchar_t > strFilePath)
virtual const CResult SetPixelAccuracy(double f64PixelAccruacyX=0, double f64PixelAccruacyY=0)
virtual const Foundation::CFLPoint< double > * GetLearnedDrawingPivot() const
virtual const CResult SetDrawingPivot(Foundation::CFLPoint< double > *pFlpDrawingPivot=nullptr)
virtual const CResult SetDistanceUnit(Base::CFLString< wchar_t > strFilePath)
virtual const CResult Assign(const CDrawingMatch *pAlgem)
virtual const CResult GetLearnWeightROI(Foundation::CFLFigureArray *pFlfaWeightROI, double &f64Weight, int64_t i64Index=0) const override
EDistanceUnit
Definition DrawingMatch.h:62
@ EDistanceUnit_Nanometer
Definition DrawingMatch.h:88
@ EDistanceUnit_Inch
Definition DrawingMatch.h:97
@ EDistanceUnit_Millimeter
Definition DrawingMatch.h:70
@ EDistanceUnit_Micrometer
Definition DrawingMatch.h:79
virtual const CResult GetDrawing(Foundation::CFLFigure *&pFlfDrawing) const
virtual const CResult GetLearnedWeightROI(Foundation::CFLFigureArray *pFlfaWeightROI, double &f64Weight, int64_t i64Index=0) const
virtual const CResult SetDrawing(Foundation::CFLFigure *pFlfDrawing)
virtual const int64_t GetLearnWeightROICount() const override
virtual const CResult SetFeatureFiltering(double f64FeatureFilter=0) override
virtual const CResult AddLearnWeightROI(Foundation::CFLFigure *pFlfWeightROI, double f64Weight=1.) override
virtual const CResult ClearLearnWeightROI() override
static const CResult GetLearnedFileVersion(Base::CFLString< wchar_t > strPatternFile, int32_t &i32MajorVer, int32_t &i32MinorVer)
저장 데이터 파일의 버전을 가져옵니다.
virtual const EDistanceUnit ConvertFileToUnit(Base::CFLString< wchar_t > strFilePath)
virtual const CResult GetLearnWeightROI(Foundation::CFLFigureArray &flfaWeightROI, double &f64Weight, int64_t i64Index=0) const override
virtual const CResult ConvertFileToFigureArray(Base::CFLString< wchar_t > strFilePath, Foundation::CFLFigureArray &flfaResult)
virtual const CResult ConvertFileToUnit(Base::CFLString< wchar_t > strFilePath, EDistanceUnit &eUnitResult)
CDrawingMatch(const CDrawingMatch *pAlgem)
EJudgementLevel
Definition GeometricMatch.h:587
@ EJudgementLevel_Rough
Definition GeometricMatch.h:613
Template type 의 문자열 클래스
Definition FLString.h:34
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1596
도형 배열을 표현하는 클래스
Definition FLFigureArray.h:26
도형을 표현하는 클래스의 기저 클래스
Definition FLFigure.h:27
점을 표현하는 클래스
Definition FLPoint.h:24
Definition AlgorithmFeature_DI_BAT_CI.h:15
EMatchContrastOption
Definition DefinitionsAdvancedFunctions.h:29
@ EMatchContrastOption_Any
Definition DefinitionsAdvancedFunctions.h:53