ICF 3.1.1.10
Technical documentation of ICF Libraries
iipr::CCaliperFinderBase Class Reference

Base class for caliper based finder. More...

#include <CCaliperFinderBase.h>

Inheritance diagram for iipr::CCaliperFinderBase:
Collaboration diagram for iipr::CCaliperFinderBase:

Classes

struct  Point
 
struct  Ray
 

Public Types

typedef std::vector< RayRays
 

Static Public Member Functions

static bool DecomposeToLines (const istd::IChangeable &aoiObject, int maxRays, bool allowComposed, i2d::CVector2d &suggestedCenter, std::function< bool(const i2d::CLine2d &)> lineFn)
 Decompose some aoi object to single line calls.
 
static bool DecomposeAnnulus (const i2d::CAnnulus &annulus, int maxRays, i2d::CVector2d &suggestedCenter, std::function< bool(const i2d::CLine2d &)> lineFn)
 Decompose anulus to single line calls.
 
static bool DecomposeRect (const i2d::CRectangle &rect, int maxRays, i2d::CVector2d &suggestedCenter, std::function< bool(const i2d::CLine2d &)> lineFn)
 Decompose rectangle to single line calls.
 
static int AddAoiToRays (const istd::IChangeable &aoiObject, iproc::IProcessor &caliper, const QByteArray &lineParamId, const iprm::IParamsSet *paramsPtr, const IFeatureToImageMapper &featuresMapper, const i2d::ICalibration2d *resultCalibPtr, const iimg::IBitmap &image, const iipr::ICaliperFinderParams &finderParams, bool allowComposed, Rays &inRays, Rays &outRays, i2d::CVector2d &suggestedCenter)
 Add some aoi object to the lists of rays.
 

Static Protected Member Functions

static void AddProjectionResultsToRays (const i2d::CLine2d &projectionLine, const iprm::IParamsSet &params, const IFeaturesProvider &container, const IFeatureToImageMapper &featuresMapper, const i2d::ICalibration2d *resultCalibPtr, Rays &inRays, Rays &outRays)
 

Detailed Description

Base class for caliper based finder.

It helps to use set of 1D caliper lines to create some finder. It takes area of interests (AOI) from parameter set. As AOI can be used annulus, segment of annulus, rectangle and set of segments of annulus.

Definition at line 34 of file CCaliperFinderBase.h.

Member Typedef Documentation

◆ Rays

Definition at line 57 of file CCaliperFinderBase.h.

Member Function Documentation

◆ AddAoiToRays()

static int iipr::CCaliperFinderBase::AddAoiToRays ( const istd::IChangeable & aoiObject,
iproc::IProcessor & caliper,
const QByteArray & lineParamId,
const iprm::IParamsSet * paramsPtr,
const IFeatureToImageMapper & featuresMapper,
const i2d::ICalibration2d * resultCalibPtr,
const iimg::IBitmap & image,
const iipr::ICaliperFinderParams & finderParams,
bool allowComposed,
Rays & inRays,
Rays & outRays,
i2d::CVector2d & suggestedCenter )
static

Add some aoi object to the lists of rays.

Parameters
aoiObjectobject to be added.
calipercaliper processor used to find the features on the line.
lineParamIdID of line parameter will be putted to the caliper processor.
paramsPtrslave parameter pointer, will be combined with the line parameter by caliper call.
imageimage, being used as a input object for caliper.
featuresMappermapper of caliper results to the image coordinates.
resultCalibPtroptional calibration of calculated results.
finderParamsparameters controlling mode of this finder.
allowComposedif true, the additional ways of generating AOI will be done.
inRayslist of rays with the first polarity.
outRayslist of rays with the second polarity.
suggestedCentercomputed center of geometrical object, like annulus.
Returns
numer of added rays or negative value, if failed.

◆ AddProjectionResultsToRays()

static void iipr::CCaliperFinderBase::AddProjectionResultsToRays ( const i2d::CLine2d & projectionLine,
const iprm::IParamsSet & params,
const IFeaturesProvider & container,
const IFeatureToImageMapper & featuresMapper,
const i2d::ICalibration2d * resultCalibPtr,
Rays & inRays,
Rays & outRays )
staticprotected

◆ DecomposeAnnulus()

static bool iipr::CCaliperFinderBase::DecomposeAnnulus ( const i2d::CAnnulus & annulus,
int maxRays,
i2d::CVector2d & suggestedCenter,
std::function< bool(const i2d::CLine2d &)> lineFn )
static

Decompose anulus to single line calls.

Parameters
annulusobject to be decomposed.
maxRaysmaximal number of lines per single geometrical object.
suggestedCentercomputed suggested center of geometrical object.
Returns
true if success, false elsewhere.

◆ DecomposeRect()

static bool iipr::CCaliperFinderBase::DecomposeRect ( const i2d::CRectangle & rect,
int maxRays,
i2d::CVector2d & suggestedCenter,
std::function< bool(const i2d::CLine2d &)> lineFn )
static

Decompose rectangle to single line calls.

Parameters
annulusobject to be decomposed.
maxRaysmaximal number of lines per single geometrical object.
suggestedCentercomputed suggested center of geometrical object.
Returns
true if success, false elsewhere.

◆ DecomposeToLines()

static bool iipr::CCaliperFinderBase::DecomposeToLines ( const istd::IChangeable & aoiObject,
int maxRays,
bool allowComposed,
i2d::CVector2d & suggestedCenter,
std::function< bool(const i2d::CLine2d &)> lineFn )
static

Decompose some aoi object to single line calls.

Parameters
aoiObjectobject to be decomposed.
maxRaysmaximal number of lines per single geometrical object.
allowComposedif true, try to interpret AOI object as a set of objects.
suggestedCentercomputed center of geometrical object, like annulus.
Returns
true if success, false elsewhere.

The documentation for this class was generated from the following file:

© Witold Gantzke and Kirill Lepskiy