eVision C++ API 26.10.0-beta.2.dev
Loading...
Searching...
No Matches
eVision::EPointGauge Class Reference

Point gauge. More...

#include <eVision/EasyGauge/EPointGauge.h>

Inheritance diagram for eVision::EPointGauge:
Collaboration diagram for eVision::EPointGauge:

Public Member Functions

 EPointGauge ()
 Constructs a EPointGauge.
 EPointGauge (const eVision::EPointGauge &other)
 Copy constructor.
virtual ~EPointGauge () throw ()
eVision::EPointGauge & operator= (const eVision::EPointGauge &other)
 Copy assignment.
void CopyTo (eVision::EPointGauge &other) const
 Copy the object to the other object.
virtual void SetTolerance (float tolerance)
 Half thickness of the model fitting gauge.
virtual float GetTolerance () const
 Half thickness of the model fitting gauge.
eVision::EPoint GetCenter () const
 Center of the EPointGauge::SetNominalLine.
void SetCenter (const eVision::EPoint &p)
 Center of the EPointGauge::SetNominalLine.
void SetNominalLineLength (float val)
 Length of the EPointGauge::SetNominalLine.
float GetNominalLineLength () const
 Length of the EPointGauge::SetNominalLine.
void SetNominalLineAngle (float val)
 Angle of the EPointGauge::SetNominalLine.
float GetNominalLineAngle () const
 Angle of the EPointGauge::SetNominalLine.
void SetNominalLine (const eVision::ELine &l)
 The line upon which we try to measure edge crossing points.
eVision::ELine GetNominalLine () const
 The line upon which we try to measure edge crossing points.
virtual eVision::EShapeType GetType () const
 Shape type.
virtual void SetNominal (const eVision::EShape &shape)
 Nominal shape of the gauge.
virtual std::unique_ptr< eVision::EShape > GetNominal () const
 Nominal shape of the gauge.
virtual eVision::EEditionMode GetAvailableEditionModes () const
 Returns all possible edition modes of the gauge.
void Plot (eVision::EDrawAdapter *graphicContext, eVision::EPlotItem drawItems, float width, float height, float originX, float originY) const
 Draws the profile of the sample path of the point gauge, as defined by EPlotItem.
void Plot (eVision::EDrawAdapter *graphicContext, eVision::EPlotItem drawItems, float width, float height, float originX) const
 Draws the profile of the sample path of the point gauge, as defined by EPlotItem.
void Plot (eVision::EDrawAdapter *graphicContext, eVision::EPlotItem drawItems, float width, float height) const
 Draws the profile of the sample path of the point gauge, as defined by EPlotItem.
void Plot (eVision::EDrawAdapter *graphicContext, eVision::EPlotItem drawItems, const eVision::EPlotDecorationOptions &opts, float width, float height, float originX, float originY) const
 Draws the profile of the sample path of the point gauge, as defined by EPlotItem.
void Plot (eVision::EDrawAdapter *graphicContext, eVision::EPlotItem drawItems, const eVision::EPlotDecorationOptions &opts, float width, float height, float originX) const
 Draws the profile of the sample path of the point gauge, as defined by EPlotItem.
void Plot (eVision::EDrawAdapter *graphicContext, eVision::EPlotItem drawItems, const eVision::EPlotDecorationOptions &opts, float width, float height) const
 Draws the profile of the sample path of the point gauge, as defined by EPlotItem.
virtual void SetHVConstraint (bool bHVConstraint)
 Status of the restriction on the orientation of the point location gauge or model fitting sample paths.
virtual bool GetHVConstraint () const
 Status of the restriction on the orientation of the point location gauge or model fitting sample paths.
virtual void SetTransitionType (eVision::ETransitionType eTransitionType)
 Transition type.
virtual eVision::ETransitionType GetTransitionType () const
 Transition type.
virtual void SetTransitionChoice (eVision::ETransitionChoice eTransitionChoice)
 Transition choice.
virtual eVision::ETransitionChoice GetTransitionChoice () const
 Transition choice.
virtual void SetTransitionIndex (uint32_t un32TransitionIndex)
 Index (from 0 on) of the transition to be retained when the transition choice parameter is set to ETransitionChoice::ETransitionChoice_NthFromBegin or ETransitionChoice::ETransitionChoice_NthFromEnd.
virtual uint32_t GetTransitionIndex () const
 Index (from 0 on) of the transition to be retained when the transition choice parameter is set to ETransitionChoice::ETransitionChoice_NthFromBegin or ETransitionChoice::ETransitionChoice_NthFromEnd.
virtual void SetThreshold (uint32_t un32Threshold)
 Threshold level used to delimit significant peaks in the data profile.
virtual uint32_t GetThreshold () const
 Threshold level used to delimit significant peaks in the data profile.
virtual void SetMinAmplitude (uint32_t un32MinAmplitude)
 Offset added to the Threshold when a peak is to be detected.
virtual uint32_t GetMinAmplitude () const
 Offset added to the Threshold when a peak is to be detected.
virtual void SetMinArea (uint32_t un32MinArea)
 Minimum area value.
virtual uint32_t GetMinArea () const
 Minimum area value.
virtual uint32_t GetThickness () const
 Number of parallel segments used to extract the data profile.
virtual void SetThickness (uint32_t un32Thickness)
 Number of parallel segments used to extract the data profile.
virtual uint32_t GetSmoothing () const
 Number of pixels used for the low-pass filtering operation.
virtual void SetSmoothing (uint32_t un32Smoothing)
 Number of pixels used for the low-pass filtering operation.
virtual bool GetRectangularSamplingArea () const
 Flag indicating whether the sampling area remains a rectangle when rotated, instead of becoming a parallelogram.
virtual void SetRectangularSamplingArea (bool bRectangularSamplingArea)
 Flag indicating whether the sampling area remains a rectangle when rotated, instead of becoming a parallelogram.
virtual uint32_t GetNumSamples () const
 Number of sampled points during the model fitting operation.
virtual std::unique_ptr< eVision::EShape > GetMeasured () const
 Copy of the measured shape.
eVision::EPointSet Measure (const eVision::EROIBW8 &sourceImage, const eVision::EFrame &frame)
 Performs the gauge measurement.
eVision::EPointSet Measure (const eVision::EROIBW8 &sourceImage)
 Performs the gauge measurement.
eVision::EPointSet Measure (const eVision::EROIBW8 &sourceImage, const eVision::ERegion &region, const eVision::EFrame &frame)
 Performs the gauge measurement.
eVision::EPointSet Measure (const eVision::EROIBW8 &sourceImage, const eVision::ERegion &region)
 Performs the gauge measurement.
uint32_t GetNumMeasuredPoints () const
 Number of edge-crossing points measured along the path of the point gauge.
eVision::EPointSet GetMeasuredPointSet () const
 Coordinates of a sample point measured along the path of the point gauge.
eVision::EPoint GetMeasuredPoint (uint32_t index) const
 Coordinates of a sample point measured along the path of the point gauge.
eVision::EPoint GetMeasuredPoint () const
 Coordinates of a sample point measured along the path of the point gauge.
std::vector< eVision::EPoint > GetMeasuredPoints () const
 Coordinates of all edge-crossing points measured along the path of the point gauge.
eVision::EPeak GetMeasuredPeak (uint32_t index) const
 Returns information pertaining to the default derivative peak along the path of the point gauge.
eVision::EPeak GetMeasuredPeak () const
 Returns information pertaining to the default derivative peak along the path of the point gauge.
std::vector< eVision::EPeak > GetMeasuredPeaks () const
 Returns information pertaining to the derivative peaks associated with all the edge-crossing point, such as their area, amplitude, start, length and center.
 EPointGauge (CppWrapperInternal::InternalConstructor)
Public Member Functions inherited from eVision::EBaseGauge
virtual ~EBaseGauge () throw ()
std::string GetName () const
 Name of the EBaseGauge object.
void SetName (const std::string &name)
 Name of the EBaseGauge object.
void SetEditionMode (eVision::EEditionMode mode)
 Graphical edition mode (default: EBaseGauge::GetAvailableEditionModes).
eVision::EEditionMode GetEditionMode () const
 Graphical edition mode (default: EBaseGauge::GetAvailableEditionModes).
bool GetLabeled () const
 Whether to draw a label describing the gauge (default: no).
void SetLabeled (bool labeled)
 Whether to draw a label describing the gauge (default: no).
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode, float zoomX, float zoomY, float panX, float panY) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode, float zoomX, float zoomY, float panX) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode, float zoomX, float zoomY) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode, float zoomX) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode, const eVision::EFrame &frame, float zoomX, float zoomY, float panX, float panY) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode, const eVision::EFrame &frame, float zoomX, float zoomY, float panX) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode, const eVision::EFrame &frame, float zoomX, float zoomY) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode, const eVision::EFrame &frame, float zoomX) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::EDrawingMode drawingMode, const eVision::EFrame &frame) const
 Draws a graphical representation of a shape, as defined by EDrawingMode.
eVision::EEditionMode HitTest (int32_t x, int32_t y, float zoomX, float zoomY, float panX, float panY)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
eVision::EEditionMode HitTest (int32_t x, int32_t y, float zoomX, float zoomY, float panX)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
eVision::EEditionMode HitTest (int32_t x, int32_t y, float zoomX, float zoomY)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
eVision::EEditionMode HitTest (int32_t x, int32_t y, float zoomX)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
eVision::EEditionMode HitTest (int32_t x, int32_t y)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
eVision::EEditionMode HitTest (int32_t x, int32_t y, const eVision::EFrame &frame, float zoomX, float zoomY, float panX, float panY)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
eVision::EEditionMode HitTest (int32_t x, int32_t y, const eVision::EFrame &frame, float zoomX, float zoomY, float panX)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
eVision::EEditionMode HitTest (int32_t x, int32_t y, const eVision::EFrame &frame, float zoomX, float zoomY)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
eVision::EEditionMode HitTest (int32_t x, int32_t y, const eVision::EFrame &frame, float zoomX)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
eVision::EEditionMode HitTest (int32_t x, int32_t y, const eVision::EFrame &frame)
 Checks if there is a handle under the cursor and returns the corresponding edition mode.
void Drag (int32_t x, int32_t y, float zoomX, float zoomY, float panX, float panY)
 Moves a handle to a new position and updates the position parameters of the shape.
void Drag (int32_t x, int32_t y, float zoomX, float zoomY, float panX)
 Moves a handle to a new position and updates the position parameters of the shape.
void Drag (int32_t x, int32_t y, float zoomX, float zoomY)
 Moves a handle to a new position and updates the position parameters of the shape.
void Drag (int32_t x, int32_t y, float zoomX)
 Moves a handle to a new position and updates the position parameters of the shape.
void Drag (int32_t x, int32_t y, const eVision::EFrame &frame, float zoomX, float zoomY, float panX, float panY)
 Moves a handle to a new position and updates the position parameters of the shape.
void Drag (int32_t x, int32_t y, const eVision::EFrame &frame, float zoomX, float zoomY, float panX)
 Moves a handle to a new position and updates the position parameters of the shape.
void Drag (int32_t x, int32_t y, const eVision::EFrame &frame, float zoomX, float zoomY)
 Moves a handle to a new position and updates the position parameters of the shape.
void Drag (int32_t x, int32_t y, const eVision::EFrame &frame, float zoomX)
 Moves a handle to a new position and updates the position parameters of the shape.
void Save (const std::string &path)
 Saves a gauge.The given ESerializer must have been created for writing.
void Save (eVision::ESerializer *serializer)
 Saves a gauge.The given ESerializer must have been created for writing.
void Load (const std::string &path)
 Loads a gauge.The given ESerializer must have been created for reading.
void Load (eVision::ESerializer *serializer)
 Loads a gauge.The given ESerializer must have been created for reading.
bool HasProperty (const std::string &aProperty) const
 Returns whether a EBaseGauge has a property named aProperty.
std::string GetProperty (const std::string &aProperty) const
 Gets the value of property aProperty. Throws an exception if no such property exists.
void SetProperty (const std::string &aProperty, const std::string &aValue)
 Sets the value of property aProperty to aValue for this EBaseGauge.
void RemoveProperty (const std::string &aProperty)
 Removes the property name aProperty from the EBaseGauge.
bool HasValidPolarityProperty () const
 Returns whether the EBaseGauge has a valid polarity property.
float GetSamplingStep () const
 Approximate distance between sampled points during a model fitting operation.
void SetSamplingStep (float f32SamplingStep)
 Approximate distance between sampled points during a model fitting operation.
float GetFilteringThreshold () const
 Relative filtering threshold, that is the fraction of the average distance between the sampled points and the fitted model above which a point is filtered out.
void SetFilteringThreshold (float f32FilteringThreshold)
 Relative filtering threshold, that is the fraction of the average distance between the sampled points and the fitted model above which a point is filtered out.
uint32_t GetNumFilteringPasses () const
 Number of filtering passes for a model fitting operation.
void SetNumFilteringPasses (uint32_t un32NumFilteringPasses)
 Number of filtering passes for a model fitting operation.
uint32_t GetNumValidSamples () const
 Number of valid sample points remaining after a model fitting operation.
eVision::ESamplePoint GetSample (uint32_t index) const
 Retrieves sampled points used during the model fitting operation.
bool HasSamples () const
 Whether the samples are available or not.
void SetSamplePointIndex (uint32_t index)
 Sampled.
uint32_t GetSamplePointIndex () const
 Sampled.
float GetAverageDistance () const
 Average distance between the sampled points and the fitted model.
void SetMinNumFitSamples (const std::vector< int32_t > &sides)
 Sets/Gets the minimum number of samples required for fitting the shape.
std::vector< int32_t > GetMinNumFitSamples () const
 Sets/Gets the minimum number of samples required for fitting the shape.
uint32_t AddSkipRange (const eVision::EIntegerRange &range)
 Adds an item to the set of skip ranges and returns the index of the newly added range.
uint32_t GetNumSkipRanges () const
 Number of skip ranges in the gauge after a call to EBaseGauge::AddSkipRange.
eVision::EIntegerRange GetSkipRange (uint32_t index) const
 Allows to retrieve the start and end values of the skip range corresponding to the given index, if it is valid (i.e. if it has previously been created by a call to the EBaseGauge::AddSkipRange method).
void RemoveSkipRange (const uint32_t index)
 After a call to EBaseGauge::AddSkipRange, removes the skip range with the given index.
void RemoveAllSkipRanges ()
 Removes all the skip ranges previously created by a call to EBaseGauge::AddSkipRange.
std::unique_ptr< eVision::EShape > Measure (const eVision::EROIBW8 &sourceImage, const eVision::EFrame &frame)
 Performs the gauge measurement.
std::unique_ptr< eVision::EShape > Measure (const eVision::EROIBW8 &sourceImage)
 Performs the gauge measurement.
std::unique_ptr< eVision::EShape > Measure (const eVision::EROIBW8 &sourceImage, const eVision::ERegion &region, const eVision::EFrame &frame)
 Performs the gauge measurement.
std::unique_ptr< eVision::EShape > Measure (const eVision::EROIBW8 &sourceImage, const eVision::ERegion &region)
 Performs the gauge measurement.
void MeasureWithoutFitting (const eVision::EROIBW8 &sourceImage, const eVision::EFrame &frame)
 Triggers the point location without line fitting operation.
void MeasureWithoutFitting (const eVision::EROIBW8 &sourceImage)
 Triggers the point location without line fitting operation.
void MeasureWithoutFitting (const eVision::EROIBW8 &sourceImage, const eVision::ERegion &region, const eVision::EFrame &frame)
 Triggers the point location without line fitting operation.
void MeasureWithoutFitting (const eVision::EROIBW8 &sourceImage, const eVision::ERegion &region)
 Triggers the point location without line fitting operation.
bool IsFound () const
 Flag indicating whether a measured shape has been found.
virtual eVision::ESamplePath MeasureSamplePath (const eVision::EROIBW8 &sourceImage, uint32_t pathIndex, const eVision::EFrame &frame) const
 Measures the specified sample path.
virtual eVision::ESamplePath MeasureSamplePath (const eVision::EROIBW8 &sourceImage, uint32_t pathIndex) const
 Measures the specified sample path.
virtual eVision::ESamplePath MeasureSamplePath (const eVision::EROIBW8 &sourceImage, uint32_t pathIndex, const eVision::ERegion &region, const eVision::EFrame &frame) const
 Measures the specified sample path.
virtual eVision::ESamplePath MeasureSamplePath (const eVision::EROIBW8 &sourceImage, uint32_t pathIndex, const eVision::ERegion &region) const
 Measures the specified sample path.
 EBaseGauge (CppWrapperInternal::InternalConstructor)

Additional Inherited Members

Static Public Member Functions inherited from eVision::EBaseGauge
static std::unique_ptr< eVision::EBaseGauge > Make (const std::string &path)
 Creates a gauge of the correct type.
Public Attributes inherited from eVision::EBaseGauge
CppWrapperInternal::WrappedClass wrappedClass_

Detailed Description

Point gauge.

Its nominal shape can be instances of ELine or EPointSet. The returned nominal shape will always be a EPointSet.

Its measured shape is an instance of EPointSet.

License(s): EasyGauge

Constructor & Destructor Documentation

◆ EPointGauge() [1/3]

eVision::EPointGauge::EPointGauge ( )

Constructs a EPointGauge.

◆ EPointGauge() [2/3]

eVision::EPointGauge::EPointGauge ( const eVision::EPointGauge & other)

Copy constructor.

Parameters
otherOther EPointGauge object to copy.

◆ ~EPointGauge()

eVision::EPointGauge::~EPointGauge ( )
throw ( )
virtual

◆ EPointGauge() [3/3]

eVision::EPointGauge::EPointGauge ( CppWrapperInternal::InternalConstructor )

Member Function Documentation

◆ CopyTo()

void eVision::EPointGauge::CopyTo ( eVision::EPointGauge & other) const

Copy the object to the other object.

Parameters
otherOther EPointGauge object in which to copy the content of this object.

◆ GetAvailableEditionModes()

eVision::EEditionMode eVision::EPointGauge::GetAvailableEditionModes ( ) const
virtual

Returns all possible edition modes of the gauge.

Reimplemented from eVision::EBaseGauge.

◆ GetCenter()

eVision::EPoint eVision::EPointGauge::GetCenter ( ) const

Center of the EPointGauge::SetNominalLine.

This is an accessor for the center of the nominal shape.

◆ GetHVConstraint()

bool eVision::EPointGauge::GetHVConstraint ( ) const
virtual

Status of the restriction on the orientation of the point location gauge or model fitting sample paths.

Sample paths are the point location gauges placed along the model to be fitted.

Implements eVision::EBaseGauge.

◆ GetMeasured()

std::unique_ptr< eVision::EShape > eVision::EPointGauge::GetMeasured ( ) const
virtual

Copy of the measured shape.

Implements eVision::EBaseGauge.

◆ GetMeasuredPeak() [1/2]

eVision::EPeak eVision::EPointGauge::GetMeasuredPeak ( ) const

Returns information pertaining to the default derivative peak along the path of the point gauge.

If index is left unchanged from its default value (i.e. ~0 = 0xFFFFFFFF), the default edge-crossing point is inspected. This default point is chosen according to the transition choice parameter that is managed by the EPointGauge::SetTransitionChoice property.

If you want to query more than 10 points, using EPointGauge::GetMeasuredPeaks should be faster.

◆ GetMeasuredPeak() [2/2]

eVision::EPeak eVision::EPointGauge::GetMeasuredPeak ( uint32_t index) const

Returns information pertaining to the default derivative peak along the path of the point gauge.

Parameters
indexIndex of the edge-crossing point along the probed line segment, between 0 and EPointGauge::GetNumMeasuredPoints (excluded).

If index is left unchanged from its default value (i.e. ~0 = 0xFFFFFFFF), the default edge-crossing point is inspected. This default point is chosen according to the transition choice parameter that is managed by the EPointGauge::SetTransitionChoice property.

If you want to query more than 10 points, using EPointGauge::GetMeasuredPeaks should be faster.

◆ GetMeasuredPeaks()

std::vector< eVision::EPeak > eVision::EPointGauge::GetMeasuredPeaks ( ) const

Returns information pertaining to the derivative peaks associated with all the edge-crossing point, such as their area, amplitude, start, length and center.

If you want to query less than 10 peaks, using EPointGauge::GetMeasuredPeak should be faster.

◆ GetMeasuredPoint() [1/2]

eVision::EPoint eVision::EPointGauge::GetMeasuredPoint ( ) const

Coordinates of a sample point measured along the path of the point gauge.

These coordinates pertain to the World space.

If index is left unchanged from its default value (i.e. ~0 = 0xFFFFFFFF), the default edge-crossing point is inspected. This default point is chosen according to the transition choice parameter that is managed by the EPointGauge::SetTransitionChoice property.

If you want to query more than 10 points, using EPointGauge::GetMeasuredPoints should be faster.

◆ GetMeasuredPoint() [2/2]

eVision::EPoint eVision::EPointGauge::GetMeasuredPoint ( uint32_t index) const

Coordinates of a sample point measured along the path of the point gauge.

Parameters
indexIndex of the edge-crossing point along the path of the point gauge, between 0 and EPointGauge::GetNumMeasuredPoints (excluded).

These coordinates pertain to the World space.

If index is left unchanged from its default value (i.e. ~0 = 0xFFFFFFFF), the default edge-crossing point is inspected. This default point is chosen according to the transition choice parameter that is managed by the EPointGauge::SetTransitionChoice property.

If you want to query more than 10 points, using EPointGauge::GetMeasuredPoints should be faster.

◆ GetMeasuredPoints()

std::vector< eVision::EPoint > eVision::EPointGauge::GetMeasuredPoints ( ) const

Coordinates of all edge-crossing points measured along the path of the point gauge.

These coordinates pertain to the World space.

If you want to query less than 10 points, using EPointGauge::GetMeasuredPoint should be faster.

◆ GetMeasuredPointSet()

eVision::EPointSet eVision::EPointGauge::GetMeasuredPointSet ( ) const

Coordinates of a sample point measured along the path of the point gauge.

◆ GetMinAmplitude()

uint32_t eVision::EPointGauge::GetMinAmplitude ( ) const
virtual

Offset added to the Threshold when a peak is to be detected.

When analyzing a derivative profile, a peak is made up of consecutive pixel values above Threshold. To detect weak [strong] transitions, lower [raise] the Threshold value.

To avoid interference of noise, an additional parameter is provided. The MinAmplitude parameter is an offset added to Threshold when a peak is to be detected.

When the pixel values of the derivative profile do not reach Threshold + MinAmplitude, the peak is not taken into account. Anyway, when a peak is taken into account, all the pixels with values above Threshold are considered (for more accuracy). Setting the MinAmplitude value to 0 merely cancels its effect.

Implements eVision::EBaseGauge.

◆ GetMinArea()

uint32_t eVision::EPointGauge::GetMinArea ( ) const
virtual

Minimum area value.

A transition is detected if its derivative peak reaches Threshold + MinAmplitude value, and then declared valid if the area between the peak curve and the horizontal at level Threshold reaches the MinArea value.

Implements eVision::EBaseGauge.

◆ GetNominal()

std::unique_ptr< eVision::EShape > eVision::EPointGauge::GetNominal ( ) const
virtual

Nominal shape of the gauge.

Note that the gauge stores a copy of the shape and returns a copy of the shape. The gauge applies its EBaseGauge::SetEditionMode to the shape.

Implements eVision::EBaseGauge.

◆ GetNominalLine()

eVision::ELine eVision::EPointGauge::GetNominalLine ( ) const

The line upon which we try to measure edge crossing points.

◆ GetNominalLineAngle()

float eVision::EPointGauge::GetNominalLineAngle ( ) const

◆ GetNominalLineLength()

float eVision::EPointGauge::GetNominalLineLength ( ) const

◆ GetNumMeasuredPoints()

uint32_t eVision::EPointGauge::GetNumMeasuredPoints ( ) const

Number of edge-crossing points measured along the path of the point gauge.

◆ GetNumSamples()

uint32_t eVision::EPointGauge::GetNumSamples ( ) const
virtual

Number of sampled points during the model fitting operation.

Irrelevant in case of a point location operation.

After a model fitting operation, a number of points have been fitted along the model. Among them, some are not reliable because of their Area value. Among the remaining ones, some are filtered out (NumFilteringPasses, FilteringThreshold).

Implements eVision::EBaseGauge.

◆ GetRectangularSamplingArea()

bool eVision::EPointGauge::GetRectangularSamplingArea ( ) const
virtual

Flag indicating whether the sampling area remains a rectangle when rotated, instead of becoming a parallelogram.

By default, this flag is set to true: the sampling area always remains a rectangle. Setting this property is only useful when the thickness transition parameter is greater than 1. In fact, when thickness transition parameter is equal to 1, rectangle and parallelogram reduce to the same segment.

Implements eVision::EBaseGauge.

◆ GetSmoothing()

uint32_t eVision::EPointGauge::GetSmoothing ( ) const
virtual

Number of pixels used for the low-pass filtering operation.

To reduce the effect of noise, the profile data can be low-pass filtered along the point location gauge direction.

Implements eVision::EBaseGauge.

◆ GetThickness()

uint32_t eVision::EPointGauge::GetThickness ( ) const
virtual

Number of parallel segments used to extract the data profile.

To reduce the effect of noise and/or strengthen a transition, several parallel profiles can be accumulated.

Implements eVision::EBaseGauge.

◆ GetThreshold()

uint32_t eVision::EPointGauge::GetThreshold ( ) const
virtual

Threshold level used to delimit significant peaks in the data profile.

When analyzing a derivative profile, a peak is made up of consecutive pixel values above Threshold. To detect weak [strong] transitions, lower [raise] the Threshold value.

To avoid interference of noise, an additional parameter is provided. The MinAmplitude parameter is an offset added to Threshold when a peak is to be detected.

When the pixel values of the derivative profile do not reach Threshold + MinAmplitude, the peak is not taken into account. Anyway, when a peak is taken into account, all the pixels with values above Threshold are considered (for more accuracy). Setting the MinAmplitude value to 0 merely cancels its effect.

Implements eVision::EBaseGauge.

◆ GetTolerance()

float eVision::EPointGauge::GetTolerance ( ) const
virtual

Half thickness of the model fitting gauge.

By default, the tolerance is 20 (2x10), which means 20 pixels when the field of view is not calibrated, and 20 physical units in case of a calibrated field of view.

The tolerance isn't taken into consideration for the point gauge.

Implements eVision::EBaseGauge.

◆ GetTransitionChoice()

eVision::ETransitionChoice eVision::EPointGauge::GetTransitionChoice ( ) const
virtual

Transition choice.

Several peaks may be detected along a point location gauge. This parameter helps to select the desired transition.

In case of ETransitionChoice::ETransitionChoice_NthFromBegin or ETransitionChoice::ETransitionChoice_NthFromEnd transition choice, set EBaseGauge::SetTransitionIndex to specify the desired transition.

By default, the selected transition corresponds to the one with the largest amplitude (ETransitionChoice::ETransitionChoice_LargestAmplitude).

Implements eVision::EBaseGauge.

◆ GetTransitionIndex()

uint32_t eVision::EPointGauge::GetTransitionIndex ( ) const
virtual

Index (from 0 on) of the transition to be retained when the transition choice parameter is set to ETransitionChoice::ETransitionChoice_NthFromBegin or ETransitionChoice::ETransitionChoice_NthFromEnd.

Several peaks may be detected along a point location gauge. This parameter helps to select the desired transition.

By default, the first transition is retained (the index value is 0).

Implements eVision::EBaseGauge.

◆ GetTransitionType()

eVision::ETransitionType eVision::EPointGauge::GetTransitionType ( ) const
virtual

Transition type.

The type of transition tells whether it crosses increasing or decreasing gray-level values. This helps discriminate between nearby edges of an object.

By default, the searched transition type is indifferently a black to white or a white to black transition (ETransitionType::ETransitionType_BwOrWb).

Implements eVision::EBaseGauge.

◆ GetType()

eVision::EShapeType eVision::EPointGauge::GetType ( ) const
virtual

Shape type.

Implements eVision::EBaseGauge.

◆ Measure() [1/4]

eVision::EPointSet eVision::EPointGauge::Measure ( const eVision::EROIBW8 & sourceImage)

Performs the gauge measurement.

Parameters
sourceImageSource image.

◆ Measure() [2/4]

eVision::EPointSet eVision::EPointGauge::Measure ( const eVision::EROIBW8 & sourceImage,
const eVision::EFrame & frame )

Performs the gauge measurement.

Parameters
sourceImageSource image.
frameFrame of reference

◆ Measure() [3/4]

eVision::EPointSet eVision::EPointGauge::Measure ( const eVision::EROIBW8 & sourceImage,
const eVision::ERegion & region )

Performs the gauge measurement.

Parameters
sourceImageSource image.
regionRegion to use with the source image.

◆ Measure() [4/4]

eVision::EPointSet eVision::EPointGauge::Measure ( const eVision::EROIBW8 & sourceImage,
const eVision::ERegion & region,
const eVision::EFrame & frame )

Performs the gauge measurement.

Parameters
sourceImageSource image.
regionRegion to use with the source image.
frameFrame of reference

◆ operator=()

eVision::EPointGauge & eVision::EPointGauge::operator= ( const eVision::EPointGauge & other)

Copy assignment.

Parameters
otherOther EPointGauge object to copy.

◆ Plot() [1/6]

void eVision::EPointGauge::Plot ( eVision::EDrawAdapter * graphicContext,
eVision::EPlotItem drawItems,
const eVision::EPlotDecorationOptions & opts,
float width,
float height ) const

Draws the profile of the sample path of the point gauge, as defined by EPlotItem.

Parameters
graphicContextHandle of the device context on which to draw.
drawItemsBoolean combination of EPlotItem members, that indicates which items must be displayed.
optsOptions to control the drawing of the plot decorations (axes, ticks, etc.).
widthWidth of the plot.
heightHeight of the plot.

The data will be plotted with the current pen of the EDrawAdapter. If there is no pen set, then the following color will be used:

◆ Plot() [2/6]

void eVision::EPointGauge::Plot ( eVision::EDrawAdapter * graphicContext,
eVision::EPlotItem drawItems,
const eVision::EPlotDecorationOptions & opts,
float width,
float height,
float originX ) const

Draws the profile of the sample path of the point gauge, as defined by EPlotItem.

Parameters
graphicContextHandle of the device context on which to draw.
drawItemsBoolean combination of EPlotItem members, that indicates which items must be displayed.
optsOptions to control the drawing of the plot decorations (axes, ticks, etc.).
widthWidth of the plot.
heightHeight of the plot.
originXOrigin point coordinates of the plot along the X axis.

The data will be plotted with the current pen of the EDrawAdapter. If there is no pen set, then the following color will be used:

◆ Plot() [3/6]

void eVision::EPointGauge::Plot ( eVision::EDrawAdapter * graphicContext,
eVision::EPlotItem drawItems,
const eVision::EPlotDecorationOptions & opts,
float width,
float height,
float originX,
float originY ) const

Draws the profile of the sample path of the point gauge, as defined by EPlotItem.

Parameters
graphicContextHandle of the device context on which to draw.
drawItemsBoolean combination of EPlotItem members, that indicates which items must be displayed.
optsOptions to control the drawing of the plot decorations (axes, ticks, etc.).
widthWidth of the plot.
heightHeight of the plot.
originXOrigin point coordinates of the plot along the X axis.
originYOrigin point coordinates of the plot along the Y axis.

The data will be plotted with the current pen of the EDrawAdapter. If there is no pen set, then the following color will be used:

◆ Plot() [4/6]

void eVision::EPointGauge::Plot ( eVision::EDrawAdapter * graphicContext,
eVision::EPlotItem drawItems,
float width,
float height ) const

Draws the profile of the sample path of the point gauge, as defined by EPlotItem.

Parameters
graphicContextHandle of the device context on which to draw.
drawItemsBoolean combination of EPlotItem members, that indicates which items must be displayed.
widthWidth of the plot.
heightHeight of the plot.

The data will be plotted with the current pen of the EDrawAdapter. If there is no pen set, then the following color will be used:

◆ Plot() [5/6]

void eVision::EPointGauge::Plot ( eVision::EDrawAdapter * graphicContext,
eVision::EPlotItem drawItems,
float width,
float height,
float originX ) const

Draws the profile of the sample path of the point gauge, as defined by EPlotItem.

Parameters
graphicContextHandle of the device context on which to draw.
drawItemsBoolean combination of EPlotItem members, that indicates which items must be displayed.
widthWidth of the plot.
heightHeight of the plot.
originXOrigin point coordinates of the plot along the X axis.

The data will be plotted with the current pen of the EDrawAdapter. If there is no pen set, then the following color will be used:

◆ Plot() [6/6]

void eVision::EPointGauge::Plot ( eVision::EDrawAdapter * graphicContext,
eVision::EPlotItem drawItems,
float width,
float height,
float originX,
float originY ) const

Draws the profile of the sample path of the point gauge, as defined by EPlotItem.

Parameters
graphicContextHandle of the device context on which to draw.
drawItemsBoolean combination of EPlotItem members, that indicates which items must be displayed.
widthWidth of the plot.
heightHeight of the plot.
originXOrigin point coordinates of the plot along the X axis.
originYOrigin point coordinates of the plot along the Y axis.

The data will be plotted with the current pen of the EDrawAdapter. If there is no pen set, then the following color will be used:

◆ SetCenter()

void eVision::EPointGauge::SetCenter ( const eVision::EPoint & p)

Center of the EPointGauge::SetNominalLine.

Parameters
pNew center

This is an accessor for the center of the nominal shape.

◆ SetHVConstraint()

void eVision::EPointGauge::SetHVConstraint ( bool bHVConstraint)
virtual

Status of the restriction on the orientation of the point location gauge or model fitting sample paths.

Sample paths are the point location gauges placed along the model to be fitted.

Implements eVision::EBaseGauge.

◆ SetMinAmplitude()

void eVision::EPointGauge::SetMinAmplitude ( uint32_t un32MinAmplitude)
virtual

Offset added to the Threshold when a peak is to be detected.

When analyzing a derivative profile, a peak is made up of consecutive pixel values above Threshold. To detect weak [strong] transitions, lower [raise] the Threshold value.

To avoid interference of noise, an additional parameter is provided. The MinAmplitude parameter is an offset added to Threshold when a peak is to be detected.

When the pixel values of the derivative profile do not reach Threshold + MinAmplitude, the peak is not taken into account. Anyway, when a peak is taken into account, all the pixels with values above Threshold are considered (for more accuracy). Setting the MinAmplitude value to 0 merely cancels its effect.

Implements eVision::EBaseGauge.

◆ SetMinArea()

void eVision::EPointGauge::SetMinArea ( uint32_t un32MinArea)
virtual

Minimum area value.

A transition is detected if its derivative peak reaches Threshold + MinAmplitude value, and then declared valid if the area between the peak curve and the horizontal at level Threshold reaches the MinArea value.

Implements eVision::EBaseGauge.

◆ SetNominal()

void eVision::EPointGauge::SetNominal ( const eVision::EShape & shape)
virtual

Nominal shape of the gauge.

Parameters
shapeNew nominal shape

Note that the gauge stores a copy of the shape and returns a copy of the shape. The gauge applies its EBaseGauge::SetEditionMode to the shape.

Implements eVision::EBaseGauge.

◆ SetNominalLine()

void eVision::EPointGauge::SetNominalLine ( const eVision::ELine & l)

The line upon which we try to measure edge crossing points.

Parameters
lLine

◆ SetNominalLineAngle()

void eVision::EPointGauge::SetNominalLineAngle ( float val)

Angle of the EPointGauge::SetNominalLine.

Parameters
valnew angle for the nominal line

◆ SetNominalLineLength()

void eVision::EPointGauge::SetNominalLineLength ( float val)

Length of the EPointGauge::SetNominalLine.

Parameters
valNew length for the nominal line

◆ SetRectangularSamplingArea()

void eVision::EPointGauge::SetRectangularSamplingArea ( bool bRectangularSamplingArea)
virtual

Flag indicating whether the sampling area remains a rectangle when rotated, instead of becoming a parallelogram.

By default, this flag is set to true: the sampling area always remains a rectangle. Setting this property is only useful when the thickness transition parameter is greater than 1. In fact, when thickness transition parameter is equal to 1, rectangle and parallelogram reduce to the same segment.

Implements eVision::EBaseGauge.

◆ SetSmoothing()

void eVision::EPointGauge::SetSmoothing ( uint32_t un32Smoothing)
virtual

Number of pixels used for the low-pass filtering operation.

To reduce the effect of noise, the profile data can be low-pass filtered along the point location gauge direction.

Implements eVision::EBaseGauge.

◆ SetThickness()

void eVision::EPointGauge::SetThickness ( uint32_t un32Thickness)
virtual

Number of parallel segments used to extract the data profile.

To reduce the effect of noise and/or strengthen a transition, several parallel profiles can be accumulated.

Implements eVision::EBaseGauge.

◆ SetThreshold()

void eVision::EPointGauge::SetThreshold ( uint32_t un32Threshold)
virtual

Threshold level used to delimit significant peaks in the data profile.

When analyzing a derivative profile, a peak is made up of consecutive pixel values above Threshold. To detect weak [strong] transitions, lower [raise] the Threshold value.

To avoid interference of noise, an additional parameter is provided. The MinAmplitude parameter is an offset added to Threshold when a peak is to be detected.

When the pixel values of the derivative profile do not reach Threshold + MinAmplitude, the peak is not taken into account. Anyway, when a peak is taken into account, all the pixels with values above Threshold are considered (for more accuracy). Setting the MinAmplitude value to 0 merely cancels its effect.

Implements eVision::EBaseGauge.

◆ SetTolerance()

void eVision::EPointGauge::SetTolerance ( float tolerance)
virtual

Half thickness of the model fitting gauge.

By default, the tolerance is 20 (2x10), which means 20 pixels when the field of view is not calibrated, and 20 physical units in case of a calibrated field of view.

The tolerance isn't taken into consideration for the point gauge.

Implements eVision::EBaseGauge.

◆ SetTransitionChoice()

void eVision::EPointGauge::SetTransitionChoice ( eVision::ETransitionChoice eTransitionChoice)
virtual

Transition choice.

Several peaks may be detected along a point location gauge. This parameter helps to select the desired transition.

In case of ETransitionChoice::ETransitionChoice_NthFromBegin or ETransitionChoice::ETransitionChoice_NthFromEnd transition choice, set EBaseGauge::SetTransitionIndex to specify the desired transition.

By default, the selected transition corresponds to the one with the largest amplitude (ETransitionChoice::ETransitionChoice_LargestAmplitude).

Implements eVision::EBaseGauge.

◆ SetTransitionIndex()

void eVision::EPointGauge::SetTransitionIndex ( uint32_t un32TransitionIndex)
virtual

Index (from 0 on) of the transition to be retained when the transition choice parameter is set to ETransitionChoice::ETransitionChoice_NthFromBegin or ETransitionChoice::ETransitionChoice_NthFromEnd.

Several peaks may be detected along a point location gauge. This parameter helps to select the desired transition.

By default, the first transition is retained (the index value is 0).

Implements eVision::EBaseGauge.

◆ SetTransitionType()

void eVision::EPointGauge::SetTransitionType ( eVision::ETransitionType eTransitionType)
virtual

Transition type.

The type of transition tells whether it crosses increasing or decreasing gray-level values. This helps discriminate between nearby edges of an object.

By default, the searched transition type is indifferently a black to white or a white to black transition (ETransitionType::ETransitionType_BwOrWb).

Implements eVision::EBaseGauge.