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

Manages a polygon fitting gauge. More...

#include <eVision/EasyGauge/Legacy/EPolygonGauge.h>

Inheritance diagram for eVision::Legacy::EPolygonGauge:
Collaboration diagram for eVision::Legacy::EPolygonGauge:

Public Member Functions

 EPolygonGauge ()
 Constructs a polygon measurement context.
 EPolygonGauge (const eVision::Legacy::EPolygonGauge &other)
 Constructs a polygon measurement context.
virtual ~EPolygonGauge () throw ()
eVision::Legacy::EPolygonGauge & operator= (const eVision::Legacy::EPolygonGauge &other)
 Copies all the data from another EPolygonGauge object into the current EPolygonGauge object.
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.
int32_t GetNumFilteringPassesInt () const
void SetNumFilteringPassesInt (int32_t un32NumFilteringPasses)
uint32_t GetNumValidSamples () const
 Number of valid sample points remaining after a model fitting operation.
float GetAverageDistance () const
 Average distance between the sampled points and the fitted model.
void SetMinNumFitSamples (int32_t side)
 Sets the minimum number of samples required for fitting on each edges of the polygon.
int32_t GetMinNumFitSamples ()
 Returns the minimum number of samples required for fitting on each edges of the polygon.
uint32_t AddSkipRange (const uint32_t start, const uint32_t end)
 Adds an item to the set of skip ranges and returns the index of the newly added range.
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 EPolygonGauge::AddSkipRange.
void GetSkipRange (const uint32_t index, uint32_t &start, uint32_t &end) 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 EPolygonGauge::AddSkipRange method.
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 EPolygonGauge::AddSkipRange method.
void RemoveSkipRange (const uint32_t index)
 After a call to EPolygonGauge::AddSkipRange, removes the skip range with the given index.
void RemoveAllSkipRanges ()
 Removes all the skip ranges previously created by a call to EPolygonGauge::AddSkipRange.
void CopyTo (eVision::Legacy::EPolygonGauge &other, bool recursive) const
 Copies all the data of the current EPolygonGauge object into another EPolygonGauge object, and returns it.
void CopyTo (eVision::Legacy::EPolygonGauge &other) const
 Copies all the data of the current EPolygonGauge object into another EPolygonGauge object, and returns it.
eVision::Legacy::EPolygonGauge * CopyTo (eVision::Legacy::EPolygonGauge *other, bool recursive) const
 Copies all the data of the current EPolygonGauge object into another EPolygonGauge object, and returns it.
virtual eVision::EShapeType GetType () const
 Shape type.
eVision::Legacy::EPolygon GetShape ()
bool GetActive ()
 Sets the flag indicating whether the gauge is active or not.
virtual void SetActive (bool active)
 Sets the flag indicating whether the gauge is active or not.
void SetTolerance (float f32Tolerance)
 Searching area half thickness of the polygon fitting gauge.
float GetTolerance ()
 Searching area half thickness of the polygon fitting gauge.
void SetHVConstraint (bool bHVConstraint)
 Status of the restriction on the orientation of the point location gauge or model fitting sample paths.
bool GetHVConstraint ()
 Status of the restriction on the orientation of the point location gauge or model fitting sample paths.
void SetTransitionType (eVision::ETransitionType eTransitionType)
 Transition type.
eVision::ETransitionType GetTransitionType ()
 Transition type.
void SetTransitionChoice (eVision::ETransitionChoice eTransitionChoice)
 Transition choice.
eVision::ETransitionChoice GetTransitionChoice ()
 Transition choice.
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.
uint32_t GetTransitionIndex ()
 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.
void SetThreshold (uint32_t un32Threshold)
 Threshold level used to delimit significant peaks in the data profile.
uint32_t GetThreshold ()
 Threshold level used to delimit significant peaks in the data profile.
void SetMinAmplitude (uint32_t un32MinAmplitude)
 Offset added to the Threshold when a peak is to be detected.
uint32_t GetMinAmplitude ()
 Offset added to the Threshold when a peak is to be detected.
void SetMinArea (uint32_t un32MinArea)
 Minimum area value.
uint32_t GetMinArea ()
 Minimum area value.
uint32_t GetThickness ()
 Number of parallel segments used to extract the data profile.
void SetThickness (uint32_t un32Thickness)
 Number of parallel segments used to extract the data profile.
uint32_t GetSmoothing ()
 Number of pixels used for the low-pass filtering operation.
void SetSmoothing (uint32_t un32Smoothing)
 Number of pixels used for the low-pass filtering operation.
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.
uint32_t GetNumSamples () const
 Number of sampled points during the model fitting operation. The samples are distributed evenly on the polygon.
eVision::Legacy::EPolygonMeasurementMode GetMeasurementMode () const
 The polygon gauge measurement mode, in EPolygonMeasurementMode. The default mode is EPolygonMeasurementMode::EPolygonMeasurementMode_Global.
void SetMeasurementMode (eVision::Legacy::EPolygonMeasurementMode mode)
 The polygon gauge measurement mode, in EPolygonMeasurementMode. The default mode is EPolygonMeasurementMode::EPolygonMeasurementMode_Global.
void SetEnableScaling (bool state)
 When using the EPolygonMeasurementMode::EPolygonMeasurementMode_Global mode, if EPolygonGauge::SetEnableScaling is enable then the best scale is evaluated.
bool GetEnableScaling () const
 When using the EPolygonMeasurementMode::EPolygonMeasurementMode_Global mode, if EPolygonGauge::SetEnableScaling is enable then the best scale is evaluated.
virtual void Process (eVision::EROIBW8 *sourceImage, bool daughters)
 Triggers the process pertaining to a shape or gauge and all the daughter gauges attach to it.
virtual void Process (eVision::EROIBW8 *sourceImage)
 Triggers the process pertaining to a shape or gauge and all the daughter gauges attach to it.
virtual void Process (eVision::EROIBW8 *sourceImage, const eVision::ERegion &region, bool daughters)
 Triggers the process pertaining to a shape or gauge and all the daughter gauges attach to it.
virtual void Process (eVision::EROIBW8 *sourceImage, const eVision::ERegion &region)
 Triggers the process pertaining to a shape or gauge and all the daughter gauges attach to it.
void Measure (eVision::EROIBW8 *sourceImage)
 Triggers the point location or the model fitting operation.
void Measure (eVision::EROIBW8 *sourceImage, const eVision::ERegion &region)
 Triggers the point location or the model fitting operation.
void MeasureSample (eVision::EROIBW8 *image, int edgeIndex, int sampleIndex)
 Computes the sample points along the sample path whose index in the list is given by the edgeIndex and sampleIndex parameters.
void MeasureSample (eVision::EROIBW8 *image, const eVision::ERegion &region, int edgeIndex, int sampleIndex)
 Computes the sample points along the sample path whose index in the list is given by the edgeIndex and sampleIndex parameters.
eVision::Legacy::EPolygon GetMeasuredPolygon ()
 Returns the measured polygon (if found) or the nominal polygon otherwise.
virtual void Draw (eVision::EDrawAdapter *drawAdapter, eVision::EDrawingMode drawingMode, bool daughters)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void Draw (eVision::EDrawAdapter *drawAdapter, eVision::EDrawingMode drawingMode)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void Draw (eVision::EDrawAdapter *drawAdapter)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void Draw (HDC graphicContext, const eVision::ERGBColor &color, eVision::EDrawingMode drawingMode, bool daughters)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void Draw (HDC graphicContext, const eVision::ERGBColor &color, eVision::EDrawingMode drawingMode)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void Draw (HDC graphicContext, const eVision::ERGBColor &color)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void Draw (HDC graphicContext, eVision::EDrawingMode drawingMode, bool daughters)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void Draw (HDC graphicContext, eVision::EDrawingMode drawingMode)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void Draw (HDC graphicContext)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void DrawWithCurrentPen (HDC graphicContext, eVision::EDrawingMode drawingMode, bool daughters)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void DrawWithCurrentPen (HDC graphicContext, eVision::EDrawingMode drawingMode)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual void DrawWithCurrentPen (HDC graphicContext)
 Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.
virtual bool HitTest (bool daughters)
 Checks whether the cursor is positioned over a handle (true) or not (false).
virtual bool HitTest ()
 Checks whether the cursor is positioned over a handle (true) or not (false).
virtual void Drag (int32_t x, int32_t y)
 Moves a handle to a new position and updates the position parameters of the gauge.
 EPolygonGauge (CppWrapperInternal::InternalConstructor)
Public Member Functions inherited from eVision::Legacy::EPolygonShape
 EPolygonShape ()
 Constructs a EPolygonShape.
 EPolygonShape (const eVision::Legacy::EPolygonShape &other)
 Constructs a EPolygonShape.
 EPolygonShape (const std::vector< eVision::EPoint > &vertices, bool closed)
 Constructs a EPolygonShape.
 EPolygonShape (const std::vector< eVision::EPoint > &vertices)
 Constructs a EPolygonShape.
virtual ~EPolygonShape () throw ()
eVision::Legacy::EPolygonShape & operator= (const eVision::Legacy::EPolygonShape &other)
 Copies all the data from another EPolygonShape object into the current EPolygonShape object.
void AddVertexAtDisplayPosition (int x, int y)
 Add a vertex to the polygon at a position depending on a display coordinate. The current display parameters (zoom and pan) are used to find the best insert position.
void RemoveVertexAtDisplayPosition (int x, int y)
 Remove the closest vertex to the display position (x,y).
eVision::EPoint GetCenter () const
 Center point of the shape.
void SetCenter (const eVision::EPoint &center)
 Center point of the shape.
void SetCenterXY (float centerX, float centerY)
 Sets the center coordinates of a EPolygonShape object.
float GetCenterX () const
 Abscissa of the origin point of the shape.
float GetCenterY () const
 Ordinate of the origin point of the shape.
float GetAngle () const
 Orientation of the shape.
void SetAngle (float f32Angle)
 Orientation of the shape.
float GetScale () const
 Scale of the polygon.
void SetScale (float f32Scale)
 Scale of the polygon.
float GetLength () const
 Returns the length (perimeter) of the polygon.
void SetIsClosed (bool state)
 The polygon close attribute.
bool GetIsClosed () const
 The polygon close attribute.
void SetPolygon (const eVision::Legacy::EPolygon &polygon)
 Sets/Gets the polygon according to a known EPolygon object.
const eVision::Legacy::EPolygon & GetPolygon () const
 Sets/Gets the polygon according to a known EPolygon object.
int GetNumVertices () const
 Returns the number of polygon's vertices.
int GetNumEdges () const
 Returns the number of polygon's edges (or sides). Depends on the EPolygon::SetIsClosed status.
eVision::EPoint GetVertex (int index) const
 Gets a polygon vertex.
void SetVertex (int index, const eVision::EPoint &pt)
 Sets a polygon vertex.
void AppendVertex (const eVision::EPoint &pt)
 Append a polygon vertex after the last.
void CopyTo (eVision::Legacy::EPolygonShape &other, bool bRecursive) const
 Copies all the data of the current EPolygonShape object into another EPolygonShape object and returns it.
void CopyTo (eVision::Legacy::EPolygonShape &other) const
 Copies all the data of the current EPolygonShape object into another EPolygonShape object and returns it.
eVision::Legacy::EPolygonShape * CopyTo (eVision::Legacy::EPolygonShape *dest, bool bRecursive) const
 Copies all the data of the current EPolygonShape object into another EPolygonShape object and returns it.
virtual void Closest ()
 Find the daughter shape that is the closest to this shape. To retrieve the closest shape, use EShape::GetClosestShape.
 EPolygonShape (CppWrapperInternal::InternalConstructor)
Public Member Functions inherited from eVision::Legacy::EShape
virtual ~EShape () throw ()
std::string GetName () const
 Name of the EShape object.
void SetName (const std::string &name)
 Name of the EShape object.
eVision::Legacy::EShape * GetShapeNamed (const std::string &name)
 Returns a pointer to a daughter gauge or shape specified by its name.
bool GetVisible () const
 Flag indicating whether the shape is visible or not.
void SetVisible (bool visible)
 Flag indicating whether the shape is visible or not.
void SetVisibleRecursive (bool visible)
 Sets the flag indicating whether the shape and its daughter shapes are visible or not.
bool GetSelected () const
 Flag indicating whether the shape is selected or not.
void SetSelected (bool selected)
 Flag indicating whether the shape is selected or not.
void SetSelectedRecursive (bool selected)
 Sets the flag indicating whether the shape and all its daughters are selected or not.
bool GetSelectable () const
 Flag indicating whether the shape can be selected or not.
void SetSelectable (bool selectable)
 Flag indicating whether the shape can be selected or not.
void SetSelectableRecursive (bool selectable)
 Sets the flag indicating whether the shape and all its daughters can be selected or not.
bool GetDragable () const
 Flag indicating whether the shape can be dragged or not.
void SetDragable (bool dragable)
 Flag indicating whether the shape can be dragged or not.
void SetDragableRecursive (bool dragable)
 Sets the flag indicating whether the shape and all its daughters can be dragged or not.
bool GetResizable () const
 Flag indicating whether the shape can be resized or not.
void SetResizable (bool resizable)
 Flag indicating whether the shape can be resized or not.
void SetResizableRecursive (bool resizable)
 Sets the flag indicating whether the shape and all its daughters can be resized or not.
bool GetRotatable () const
 Flag indicating whether the shape can be rotated or not.
void SetRotatable (bool rotatable)
 Flag indicating whether the shape can be rotated or not.
void SetRotatableRecursive (bool rotatable)
 Sets the flag indicating whether the shape and all its daughters can be rotated or not.
bool GetLabeled () const
 Flag indicating whether the shape label should be displayed or not.
void SetLabeled (bool labeled)
 Flag indicating whether the shape label should be displayed or not.
void SetLabeledRecursive (bool labeled)
 Sets the flag indicating whether the shape label should be displayed or not. The flag is set in this shape and all its daughters.
virtual bool GetActive () const
 Flag indicating whether the shape is active or not.
virtual void SetActiveRecursive (bool active)
 Sets the flag indicating whether the shape and all its daughters are active or not.
bool GetActualShape () const
 Flag indicating whether an inquiry returns a result pertaining to the nominal gauge (false, default) or the fitted model (true).
void SetActualShape (bool actualShape)
 Flag indicating whether an inquiry returns a result pertaining to the nominal gauge (false, default) or the fitted model (true).
void SetActualShapeRecursive (bool actualShape)
 Sets the flag indicating whether an inquiry returns a result pertaining to the nominal gauge (false, default) or the fitted model (true). The flag is set in this shape and all its daughters.
bool GetFound () const
 Flag indicating whether a measured shape has been found.
bool GetAutoArrange () const
void SetAutoArrange (bool bAutoArrange, bool bDaughters)
void SetAutoArrange (bool bAutoArrange)
virtual void SetFound (bool bFound, bool bDaughters)
virtual void SetFound (bool bFound)
bool GetInspected () const
void SetInspected (bool bFound, bool bDaughters)
void SetInspected (bool bFound)
bool GetPassed () const
void SetPassed (bool bFound, bool bDaughters)
void SetPassed (bool bFound)
bool GetQuickDraw () const
void SetQuickDraw (bool bFound, bool bDaughters)
void SetQuickDraw (bool bFound)
bool GetOptionalDraw () const
void SetOptionalDraw (bool bFound, bool bDaughters)
void SetOptionalDraw (bool bFound)
bool GetUserFlag () const
void SetUserFlag (bool bUserFlag, bool bDaughters)
void SetUserFlag (bool bUserFlag)
bool GetAllocated () const
 Gets the allocated flag.
void EnableBehaviorFilter (eVision::EShapeBehavior behavior, bool value)
 Modifies the so-called behavior filter that is a conjunction of conditions specifying when a shape or a gauge should be displayed or taken into consideration when monitoring the mouse interactions.
void EnableBehaviorFilter (eVision::EShapeBehavior behavior)
 Modifies the so-called behavior filter that is a conjunction of conditions specifying when a shape or a gauge should be displayed or taken into consideration when monitoring the mouse interactions.
void DisableBehaviorFilter (eVision::EShapeBehavior behavior)
 Disables (i.e. removes) a condition from the list of conditions in the behavior filter.
void Attach (eVision::Legacy::EShape *mother)
 Attaches the gauge to a mother gauge or shape.
void Detach ()
 Detaches the gauge from its mother gauge or shape.
void DetachDaughters ()
 Detaches the daughter gauges or shapes.
uint32_t GetNumDaughters () const
 Number of daughters attached to the shape.
eVision::Legacy::EShape * GetMother () const
 Pointer to the mother shape.
virtual eVision::Legacy::EShape * GetDaughter (uint32_t index) const
 Returns a pointer to the specified daughter gauge or shape.
eVision::Legacy::EWorldShape * GetWorldShape () const
 World ancestor.
bool IsWorld () const
void InvalidateWorld ()
 Invalidates the world shape for this shape and all its ancestors.
eVision::EPoint LocalToSensor (const eVision::EPoint &LPoint)
 Transforms a point from local coordinates to sensor coordinates.
eVision::EPoint SensorToLocal (const eVision::EPoint &SPoint)
 Transforms a point from sensor coordinates to local coordinates.
virtual float GetZoomX () const
 Current horizontal zooming factor for drawing operations.
virtual float GetZoomY () const
 Current vertical zooming factor for drawing operations.
virtual float GetPanX () const
 Current horizontal panning value for drawing operations, expressed in pixels. By default, no panning occurs.
virtual float GetPanY () const
 Current vertical panning value for drawing operations, expressed in pixels. By default, no panning occurs.
virtual void SetZoom (float zoomX, float zoomY)
 Sets the horizontal and vertical zooming factors for drawing operations.
virtual void SetZoom (float zoomX)
 Sets the horizontal and vertical zooming factors for drawing operations.
virtual void SetZoom ()
 Sets the horizontal and vertical zooming factors for drawing operations.
virtual void SetPan (float panX, float panY)
 Sets the horizontal and vertical panning values for drawing operations, expressed in pixels.
virtual void SetPan (float panX)
 Sets the horizontal and vertical panning values for drawing operations, expressed in pixels.
virtual void SetPan ()
 Sets the horizontal and vertical panning values for drawing operations, expressed in pixels.
eVision::EDragHandle GetHitHandle () const
 Handle currently under the cursor.
eVision::Legacy::EShape * GetHitShape () const
 Pointer to the shape currently under the cursor.
void SetDraggingMode (eVision::EDraggingMode eDraggingMode, bool bDaughters)
 Sets the dragging mode which defines how the shape could be dragged.
void SetDraggingMode (eVision::EDraggingMode eDraggingMode)
 Sets the dragging mode which defines how the shape could be dragged.
eVision::EDraggingMode GetDraggingMode () const
 Gets the dragging mode which defines how the shape could be dragged.
void SetCursor (int32_t x, int32_t y)
 Sets the cursor current coordinates.
eVision::Legacy::EShape * GetClosestShape () const
 Closest shape among the daughters.
void Save (const std::string &path, bool daughters)
 Loads a Shape.The given ESerializer must have been created for writing.
void Save (const std::string &path)
 Loads a Shape.The given ESerializer must have been created for writing.
void Save (eVision::ESerializer *serializer, bool daughters)
 Loads a Shape.The given ESerializer must have been created for writing.
void Save (eVision::ESerializer *serializer)
 Loads a Shape.The given ESerializer must have been created for writing.
void Load (const std::string &path, bool daughters)
 Loads a Shape.The given ESerializer must have been created for reading.
void Load (const std::string &path)
 Loads a Shape.The given ESerializer must have been created for reading.
void Load (eVision::ESerializer *serializer, bool daughters)
 Loads a Shape.The given ESerializer must have been created for reading.
void Load (eVision::ESerializer *serializer)
 Loads a Shape.The given ESerializer must have been created for reading.
bool HasProperty (const std::string &aProperty) const
 Returns whether a EShape 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 EShape.
void SetPropertyRecursive (const std::string &aProperty, const std::string &aValue)
 Sets the value of property aProperty to aValue for this EShape and all of its daughters.
void RemoveProperty (const std::string &aProperty)
 Removes the property name aProperty from the EShape.
bool HasValidPolarityProperty () const
 Returns whether the EShape has a valid polarity property.
virtual void EnableTypeFilter (uint32_t un32Types)
 Enables the filter of the specified shape type.
virtual void DisableTypeFilter ()
 Enables all shape types.
 EShape (CppWrapperInternal::InternalConstructor)

Additional Inherited Members

Public Attributes inherited from eVision::Legacy::EShape
CppWrapperInternal::WrappedClass wrappedClass_

Detailed Description

Manages a polygon fitting gauge.

License(s): EasyGauge

Constructor & Destructor Documentation

◆ EPolygonGauge() [1/3]

eVision::Legacy::EPolygonGauge::EPolygonGauge ( )

Constructs a polygon measurement context.

With the default constructor, all the parameters are initialized to their respective default values.

With the copy constructor, the constructed polygon measurement context is based on a pre-existing EPolygonGauge object. The gauge children are also copied. Hierarchy copying through a copy constructor is always recursive. To disable this recursion, use instead the EPolygonGauge::CopyTo method.

◆ EPolygonGauge() [2/3]

eVision::Legacy::EPolygonGauge::EPolygonGauge ( const eVision::Legacy::EPolygonGauge & other)

Constructs a polygon measurement context.

Parameters
otherAnother EPolygonGauge object to be copied in the new EPolygonGauge object.

With the default constructor, all the parameters are initialized to their respective default values.

With the copy constructor, the constructed polygon measurement context is based on a pre-existing EPolygonGauge object. The gauge children are also copied. Hierarchy copying through a copy constructor is always recursive. To disable this recursion, use instead the EPolygonGauge::CopyTo method.

◆ ~EPolygonGauge()

eVision::Legacy::EPolygonGauge::~EPolygonGauge ( )
throw ( )
virtual

◆ EPolygonGauge() [3/3]

eVision::Legacy::EPolygonGauge::EPolygonGauge ( CppWrapperInternal::InternalConstructor )

Member Function Documentation

◆ AddSkipRange() [1/2]

uint32_t eVision::Legacy::EPolygonGauge::AddSkipRange ( const eVision::EIntegerRange & range)

Adds an item to the set of skip ranges and returns the index of the newly added range.

Parameters
rangeThe skip range.

The samples indices between start and end (including the boundaries) will be discarded during the measurement process.

This method allows to define skip ranges in an EPolygonGauge. This means that, at measure time, samples belonging to these ranges will not be taken into account.

A sample may belong to more than one skip range; to be discarded, a sample has to pertain to at least one range. Moreover, the skip ranges are allowed to overlap one another.

The range is allowed to be reversed (i.e. end is not required to be greater than start).

Also, start and end are not required to reference valid indices at the time of the call (i.e. the range may lie outside of the current return value for EPolygonGauge::GetNumSamples).

◆ AddSkipRange() [2/2]

uint32_t eVision::Legacy::EPolygonGauge::AddSkipRange ( const uint32_t start,
const uint32_t end )

Adds an item to the set of skip ranges and returns the index of the newly added range.

Parameters
startBeginning of the skip range.
endEnd of the skip range.

The samples indices between start and end (including the boundaries) will be discarded during the measurement process.

This method allows to define skip ranges in an EPolygonGauge. This means that, at measure time, samples belonging to these ranges will not be taken into account.

A sample may belong to more than one skip range; to be discarded, a sample has to pertain to at least one range. Moreover, the skip ranges are allowed to overlap one another.

The range is allowed to be reversed (i.e. end is not required to be greater than start).

Also, start and end are not required to reference valid indices at the time of the call (i.e. the range may lie outside of the current return value for EPolygonGauge::GetNumSamples).

Deprecated
Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ CopyTo() [1/3]

void eVision::Legacy::EPolygonGauge::CopyTo ( eVision::Legacy::EPolygonGauge & other) const

Copies all the data of the current EPolygonGauge object into another EPolygonGauge object, and returns it.

Parameters
otherPointer to the EPolygonGauge object in which the current EPolygonGauge object data have to be copied.

In the overload taking a pointer, in case of a NULL pointer, a new EPolygonGauge object will be created and returned.

◆ CopyTo() [2/3]

void eVision::Legacy::EPolygonGauge::CopyTo ( eVision::Legacy::EPolygonGauge & other,
bool recursive ) const

Copies all the data of the current EPolygonGauge object into another EPolygonGauge object, and returns it.

Parameters
otherPointer to the EPolygonGauge object in which the current EPolygonGauge object data have to be copied.
recursivetrue if the children gauges have to be copied as well, false otherwise.

In the overload taking a pointer, in case of a NULL pointer, a new EPolygonGauge object will be created and returned.

◆ CopyTo() [3/3]

eVision::Legacy::EPolygonGauge * eVision::Legacy::EPolygonGauge::CopyTo ( eVision::Legacy::EPolygonGauge * other,
bool recursive ) const

Copies all the data of the current EPolygonGauge object into another EPolygonGauge object, and returns it.

Parameters
otherPointer to the EPolygonGauge object in which the current EPolygonGauge object data have to be copied.
recursivetrue if the children gauges have to be copied as well, false otherwise.

In the overload taking a pointer, in case of a NULL pointer, a new EPolygonGauge object will be created and returned.

Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

◆ Drag()

void eVision::Legacy::EPolygonGauge::Drag ( int32_t x,
int32_t y )
virtual

Moves a handle to a new position and updates the position parameters of the gauge.

Parameters
xCursor current X coordinate.
yCursor current Y coordinate.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Draw() [1/9]

void eVision::Legacy::EPolygonGauge::Draw ( eVision::EDrawAdapter * drawAdapter)
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
drawAdapterA pointer to an EDrawAdapter (like the EWindowsDrawAdapter).

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Draw() [2/9]

void eVision::Legacy::EPolygonGauge::Draw ( eVision::EDrawAdapter * drawAdapter,
eVision::EDrawingMode drawingMode )
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
drawAdapterA pointer to an EDrawAdapter (like the EWindowsDrawAdapter).
drawingModeIndicates how the point location or model fitting gauge must be displayed, as defined by EDrawingMode.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Draw() [3/9]

void eVision::Legacy::EPolygonGauge::Draw ( eVision::EDrawAdapter * drawAdapter,
eVision::EDrawingMode drawingMode,
bool daughters )
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
drawAdapterA pointer to an EDrawAdapter (like the EWindowsDrawAdapter).
drawingModeIndicates how the point location or model fitting gauge must be displayed, as defined by EDrawingMode.
daughterstrue if the daughters gauges are to be displayed also.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Draw() [4/9]

void eVision::Legacy::EPolygonGauge::Draw ( HDC graphicContext)
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
graphicContextHandle of the device context on which to draw.
Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Draw() [5/9]

void eVision::Legacy::EPolygonGauge::Draw ( HDC graphicContext,
const eVision::ERGBColor & color )
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
graphicContextHandle of the device context on which to draw.
colorThe color in which to draw the overlay.
Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Draw() [6/9]

void eVision::Legacy::EPolygonGauge::Draw ( HDC graphicContext,
const eVision::ERGBColor & color,
eVision::EDrawingMode drawingMode )
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
graphicContextHandle of the device context on which to draw.
colorThe color in which to draw the overlay.
drawingModeIndicates how the point location or model fitting gauge must be displayed, as defined by EDrawingMode.
Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Draw() [7/9]

void eVision::Legacy::EPolygonGauge::Draw ( HDC graphicContext,
const eVision::ERGBColor & color,
eVision::EDrawingMode drawingMode,
bool daughters )
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
graphicContextHandle of the device context on which to draw.
colorThe color in which to draw the overlay.
drawingModeIndicates how the point location or model fitting gauge must be displayed, as defined by EDrawingMode.
daughterstrue if the daughters gauges are to be displayed also.
Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Draw() [8/9]

void eVision::Legacy::EPolygonGauge::Draw ( HDC graphicContext,
eVision::EDrawingMode drawingMode )
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
graphicContextHandle of the device context on which to draw.
drawingModeIndicates how the point location or model fitting gauge must be displayed, as defined by EDrawingMode.
Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Draw() [9/9]

void eVision::Legacy::EPolygonGauge::Draw ( HDC graphicContext,
eVision::EDrawingMode drawingMode,
bool daughters )
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
graphicContextHandle of the device context on which to draw.
drawingModeIndicates how the point location or model fitting gauge must be displayed, as defined by EDrawingMode.
daughterstrue if the daughters gauges are to be displayed also.
Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ DrawWithCurrentPen() [1/3]

void eVision::Legacy::EPolygonGauge::DrawWithCurrentPen ( HDC graphicContext)
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
graphicContextHandle of the device context on which to draw.
Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ DrawWithCurrentPen() [2/3]

void eVision::Legacy::EPolygonGauge::DrawWithCurrentPen ( HDC graphicContext,
eVision::EDrawingMode drawingMode )
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
graphicContextHandle of the device context on which to draw.
drawingModeIndicates how the point location or model fitting gauge must be displayed, as defined by EDrawingMode.
Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ DrawWithCurrentPen() [3/3]

void eVision::Legacy::EPolygonGauge::DrawWithCurrentPen ( HDC graphicContext,
eVision::EDrawingMode drawingMode,
bool daughters )
virtual

Draws a graphical representation of a point location or model fitting gauge, as defined by EDrawingMode.

Parameters
graphicContextHandle of the device context on which to draw.
drawingModeIndicates how the point location or model fitting gauge must be displayed, as defined by EDrawingMode.
daughterstrue if the daughters gauges are to be displayed also.
Deprecated
Deprecated in version 23.12. Scheduled to be removed in version 27.6.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ GetActive()

bool eVision::Legacy::EPolygonGauge::GetActive ( )

Sets the flag indicating whether the gauge is active or not.

When complex gauging is required, several gauges can be grouped together. Applying EPolygonGauge::Process to the mother gauge or shape triggers the measurement of the whole. Only the active gauges will participate in the process. By default, the gauge is active (true).

◆ GetAverageDistance()

float eVision::Legacy::EPolygonGauge::GetAverageDistance ( ) const

Average distance between the sampled points and the fitted model.

Irrelevant in case of a point location operation.

◆ GetEnableScaling()

bool eVision::Legacy::EPolygonGauge::GetEnableScaling ( ) const

When using the EPolygonMeasurementMode::EPolygonMeasurementMode_Global mode, if EPolygonGauge::SetEnableScaling is enable then the best scale is evaluated.

◆ GetFilteringThreshold()

float eVision::Legacy::EPolygonGauge::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.

Irrelevant in case of a point location operation.

During a model fitting operation, the "filtering" process can be invoked to remove outliers, i.e. points that were located significantly far away from the fitted model (so that their position is dubious).

◆ GetHVConstraint()

bool eVision::Legacy::EPolygonGauge::GetHVConstraint ( )

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.

◆ GetMeasuredPolygon()

eVision::Legacy::EPolygon eVision::Legacy::EPolygonGauge::GetMeasuredPolygon ( )

Returns the measured polygon (if found) or the nominal polygon otherwise.

Use method EShape::GetFound to get the status of the measurement. EPolygonGauge::GetMeasuredPolygon returns a successful fitted polygon if EShape::GetFound is true, otherwise it returns the orginal (nominal) polygon.

◆ GetMeasurementMode()

eVision::Legacy::EPolygonMeasurementMode eVision::Legacy::EPolygonGauge::GetMeasurementMode ( ) const

The polygon gauge measurement mode, in EPolygonMeasurementMode. The default mode is EPolygonMeasurementMode::EPolygonMeasurementMode_Global.

◆ GetMinAmplitude()

uint32_t eVision::Legacy::EPolygonGauge::GetMinAmplitude ( )

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.

◆ GetMinArea()

uint32_t eVision::Legacy::EPolygonGauge::GetMinArea ( )

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.

◆ GetMinNumFitSamples()

int32_t eVision::Legacy::EPolygonGauge::GetMinNumFitSamples ( )

Returns the minimum number of samples required for fitting on each edges of the polygon.

◆ GetNumFilteringPasses()

uint32_t eVision::Legacy::EPolygonGauge::GetNumFilteringPasses ( ) const

Number of filtering passes for a model fitting operation.

Irrelevant in case of a point location operation.

During a filtering pass, the points that are too distant from the model are discarded.

During a model fitting operation, the "filtering" process can be invoked to remove outliers, i.e. points that were located significantly far away from the fitted model (so that their position is dubious).

By default (the number of filtering passes is 0), the outliers rejection process is disabled.

◆ GetNumFilteringPassesInt()

int32_t eVision::Legacy::EPolygonGauge::GetNumFilteringPassesInt ( ) const

◆ GetNumSamples()

uint32_t eVision::Legacy::EPolygonGauge::GetNumSamples ( ) const

Number of sampled points during the model fitting operation. The samples are distributed evenly on the polygon.

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).

◆ GetNumSkipRanges()

uint32_t eVision::Legacy::EPolygonGauge::GetNumSkipRanges ( ) const

Number of skip ranges in the gauge after a call to EPolygonGauge::AddSkipRange.

◆ GetNumValidSamples()

uint32_t eVision::Legacy::EPolygonGauge::GetNumValidSamples ( ) const

Number of valid sample points remaining after a 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).

◆ GetSamplingStep()

float eVision::Legacy::EPolygonGauge::GetSamplingStep ( ) const

Approximate distance between sampled points during a model fitting operation.

Irrelevant in case of a point location operation.

To fit a model, a series of point location operations are performed along the model. The point location gauges spacing is given by the sampling step.

By default, the sampling step is set to 5, which means 5 pixels when the field of view is not calibrated, and 5 physical units in case of a calibrated field of view.

Be aware that if the sampling step is too large, the number of sampled points along the model will not be sufficient enough to accurately locate it.

◆ GetShape()

eVision::Legacy::EPolygon eVision::Legacy::EPolygonGauge::GetShape ( )

◆ GetSkipRange() [1/2]

void eVision::Legacy::EPolygonGauge::GetSkipRange ( const uint32_t index,
uint32_t & start,
uint32_t & end ) 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 EPolygonGauge::AddSkipRange method.

Parameters
indexIndex of the skip range.
startBeginning of the skip range.
endEnd of the skip range.

Start is guaranteed to be smaller or equal to end.

Deprecated
Deprecated in version 24.6. Scheduled to be removed in version 27.6.

◆ GetSkipRange() [2/2]

eVision::EIntegerRange eVision::Legacy::EPolygonGauge::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 EPolygonGauge::AddSkipRange method.

Parameters
indexIndex of the skip range.

Start is guaranteed to be smaller or equal to end.

◆ GetSmoothing()

uint32_t eVision::Legacy::EPolygonGauge::GetSmoothing ( )

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.

◆ GetThickness()

uint32_t eVision::Legacy::EPolygonGauge::GetThickness ( )

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.

◆ GetThreshold()

uint32_t eVision::Legacy::EPolygonGauge::GetThreshold ( )

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.

◆ GetTolerance()

float eVision::Legacy::EPolygonGauge::GetTolerance ( )

Searching area half thickness of the polygon fitting gauge.

A polygon fitting gauge is fully defined knowing its nominal positions (vertices), its nominal origin, angle and scale, and its outline tolerance.

By default, the searching area thickness of the polygon fitting gauge 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.

◆ GetTransitionChoice()

eVision::ETransitionChoice eVision::Legacy::EPolygonGauge::GetTransitionChoice ( )

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 EPolygonGauge::SetTransitionIndex to specify the desired transition.

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

◆ GetTransitionIndex()

uint32_t eVision::Legacy::EPolygonGauge::GetTransitionIndex ( )

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).

◆ GetTransitionType()

eVision::ETransitionType eVision::Legacy::EPolygonGauge::GetTransitionType ( )

Transition type.

The type of a 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).

◆ GetType()

eVision::EShapeType eVision::Legacy::EPolygonGauge::GetType ( ) const
virtual

Shape type.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ HitTest() [1/2]

bool eVision::Legacy::EPolygonGauge::HitTest ( )
virtual

Checks whether the cursor is positioned over a handle (true) or not (false).

Reimplemented from eVision::Legacy::EPolygonShape.

◆ HitTest() [2/2]

bool eVision::Legacy::EPolygonGauge::HitTest ( bool daughters)
virtual

Checks whether the cursor is positioned over a handle (true) or not (false).

Parameters
daughterstrue if the daughters gauges handles have to be considered as well.

Reimplemented from eVision::Legacy::EPolygonShape.

◆ Measure() [1/2]

void eVision::Legacy::EPolygonGauge::Measure ( eVision::EROIBW8 * sourceImage)

Triggers the point location or the model fitting operation.

Parameters
sourceImagePointer to the source image.

When this method is called, and if not enough valid points are detected, then the method returns directly, and the measured gauge is set to the nominal parameters.

◆ Measure() [2/2]

void eVision::Legacy::EPolygonGauge::Measure ( eVision::EROIBW8 * sourceImage,
const eVision::ERegion & region )

Triggers the point location or the model fitting operation.

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

When this method is called, and if not enough valid points are detected, then the method returns directly, and the measured gauge is set to the nominal parameters.

◆ MeasureSample() [1/2]

void eVision::Legacy::EPolygonGauge::MeasureSample ( eVision::EROIBW8 * image,
const eVision::ERegion & region,
int edgeIndex,
int sampleIndex )

Computes the sample points along the sample path whose index in the list is given by the edgeIndex and sampleIndex parameters.

Parameters
imagePointer to the source image/ROI.
regionRegion on which to measure.
edgeIndexIndex of the edge to inspect within the edges of the polygon.
sampleIndexIndex of the sample to inspect within the selected edge.

This method stores its results into a temporary variable inside the EPolygonGauge object.

◆ MeasureSample() [2/2]

void eVision::Legacy::EPolygonGauge::MeasureSample ( eVision::EROIBW8 * image,
int edgeIndex,
int sampleIndex )

Computes the sample points along the sample path whose index in the list is given by the edgeIndex and sampleIndex parameters.

Parameters
imagePointer to the source image/ROI.
edgeIndexIndex of the edge to inspect within the edges of the polygon.
sampleIndexIndex of the sample to inspect within the selected edge.

This method stores its results into a temporary variable inside the EPolygonGauge object.

◆ operator=()

eVision::Legacy::EPolygonGauge & eVision::Legacy::EPolygonGauge::operator= ( const eVision::Legacy::EPolygonGauge & other)

Copies all the data from another EPolygonGauge object into the current EPolygonGauge object.

Parameters
otherEPolygonGauge object to be copied

◆ Process() [1/4]

void eVision::Legacy::EPolygonGauge::Process ( eVision::EROIBW8 * sourceImage)
virtual

Triggers the process pertaining to a shape or gauge and all the daughter gauges attach to it.

Parameters
sourceImagePointer to the source image.

When complex gauging is required, several gauges can be grouped together. Applying Process to the mother gauge or shape triggers the measurement of the whole. Only the active gauges will participate in the process.

Reimplemented from eVision::Legacy::EShape.

◆ Process() [2/4]

void eVision::Legacy::EPolygonGauge::Process ( eVision::EROIBW8 * sourceImage,
bool daughters )
virtual

Triggers the process pertaining to a shape or gauge and all the daughter gauges attach to it.

Parameters
sourceImagePointer to the source image.
daughtersFlag indicating whether the daughters shapes inherit of the same behavior.

When complex gauging is required, several gauges can be grouped together. Applying Process to the mother gauge or shape triggers the measurement of the whole. Only the active gauges will participate in the process.

Reimplemented from eVision::Legacy::EShape.

◆ Process() [3/4]

void eVision::Legacy::EPolygonGauge::Process ( eVision::EROIBW8 * sourceImage,
const eVision::ERegion & region )
virtual

Triggers the process pertaining to a shape or gauge and all the daughter gauges attach to it.

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

When complex gauging is required, several gauges can be grouped together. Applying Process to the mother gauge or shape triggers the measurement of the whole. Only the active gauges will participate in the process.

Reimplemented from eVision::Legacy::EShape.

◆ Process() [4/4]

void eVision::Legacy::EPolygonGauge::Process ( eVision::EROIBW8 * sourceImage,
const eVision::ERegion & region,
bool daughters )
virtual

Triggers the process pertaining to a shape or gauge and all the daughter gauges attach to it.

Parameters
sourceImagePointer to the source image.
regionRegion to use with the source image.
daughtersFlag indicating whether the daughters shapes inherit of the same behavior.

When complex gauging is required, several gauges can be grouped together. Applying Process to the mother gauge or shape triggers the measurement of the whole. Only the active gauges will participate in the process.

Reimplemented from eVision::Legacy::EShape.

◆ RemoveAllSkipRanges()

void eVision::Legacy::EPolygonGauge::RemoveAllSkipRanges ( )

Removes all the skip ranges previously created by a call to EPolygonGauge::AddSkipRange.

◆ RemoveSkipRange()

void eVision::Legacy::EPolygonGauge::RemoveSkipRange ( const uint32_t index)

After a call to EPolygonGauge::AddSkipRange, removes the skip range with the given index.

Parameters
indexIndex of the skip range to remove, as returned by EPolygonGauge::AddSkipRange.

◆ SetActive()

void eVision::Legacy::EPolygonGauge::SetActive ( bool active)
virtual

Sets the flag indicating whether the gauge is active or not.

Parameters
activeFlag indicating whether the gauge is active (true) or not (false).

When complex gauging is required, several gauges can be grouped together. Applying EPolygonGauge::Process to the mother gauge or shape triggers the measurement of the whole. Only the active gauges will participate in the process. By default, the gauge is active (true).

Reimplemented from eVision::Legacy::EShape.

◆ SetEnableScaling()

void eVision::Legacy::EPolygonGauge::SetEnableScaling ( bool state)

When using the EPolygonMeasurementMode::EPolygonMeasurementMode_Global mode, if EPolygonGauge::SetEnableScaling is enable then the best scale is evaluated.

Parameters
stateThe scaling status.

◆ SetFilteringThreshold()

void eVision::Legacy::EPolygonGauge::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.

Irrelevant in case of a point location operation.

During a model fitting operation, the "filtering" process can be invoked to remove outliers, i.e. points that were located significantly far away from the fitted model (so that their position is dubious).

◆ SetHVConstraint()

void eVision::Legacy::EPolygonGauge::SetHVConstraint ( bool bHVConstraint)

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.

◆ SetMeasurementMode()

void eVision::Legacy::EPolygonGauge::SetMeasurementMode ( eVision::Legacy::EPolygonMeasurementMode mode)

The polygon gauge measurement mode, in EPolygonMeasurementMode. The default mode is EPolygonMeasurementMode::EPolygonMeasurementMode_Global.

Parameters
modeThe measurement mode.

◆ SetMinAmplitude()

void eVision::Legacy::EPolygonGauge::SetMinAmplitude ( uint32_t un32MinAmplitude)

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.

◆ SetMinArea()

void eVision::Legacy::EPolygonGauge::SetMinArea ( uint32_t un32MinArea)

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.

◆ SetMinNumFitSamples()

void eVision::Legacy::EPolygonGauge::SetMinNumFitSamples ( int32_t side)

Sets the minimum number of samples required for fitting on each edges of the polygon.

Parameters
sideMinimum number of samples. The default value is 2.

When the EPolygonGauge::Measure method is called, and if not enough valid points are detected, then the method returns directly, and the measured gauge is set to the nominal parameters.

◆ SetNumFilteringPasses()

void eVision::Legacy::EPolygonGauge::SetNumFilteringPasses ( uint32_t un32NumFilteringPasses)

Number of filtering passes for a model fitting operation.

Irrelevant in case of a point location operation.

During a filtering pass, the points that are too distant from the model are discarded.

During a model fitting operation, the "filtering" process can be invoked to remove outliers, i.e. points that were located significantly far away from the fitted model (so that their position is dubious).

By default (the number of filtering passes is 0), the outliers rejection process is disabled.

◆ SetNumFilteringPassesInt()

void eVision::Legacy::EPolygonGauge::SetNumFilteringPassesInt ( int32_t un32NumFilteringPasses)

◆ SetSamplingStep()

void eVision::Legacy::EPolygonGauge::SetSamplingStep ( float f32SamplingStep)

Approximate distance between sampled points during a model fitting operation.

Irrelevant in case of a point location operation.

To fit a model, a series of point location operations are performed along the model. The point location gauges spacing is given by the sampling step.

By default, the sampling step is set to 5, which means 5 pixels when the field of view is not calibrated, and 5 physical units in case of a calibrated field of view.

Be aware that if the sampling step is too large, the number of sampled points along the model will not be sufficient enough to accurately locate it.

◆ SetSmoothing()

void eVision::Legacy::EPolygonGauge::SetSmoothing ( uint32_t un32Smoothing)

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.

◆ SetThickness()

void eVision::Legacy::EPolygonGauge::SetThickness ( uint32_t un32Thickness)

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.

◆ SetThreshold()

void eVision::Legacy::EPolygonGauge::SetThreshold ( uint32_t un32Threshold)

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.

◆ SetTolerance()

void eVision::Legacy::EPolygonGauge::SetTolerance ( float f32Tolerance)

Searching area half thickness of the polygon fitting gauge.

A polygon fitting gauge is fully defined knowing its nominal positions (vertices), its nominal origin, angle and scale, and its outline tolerance.

By default, the searching area thickness of the polygon fitting gauge 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.

◆ SetTransitionChoice()

void eVision::Legacy::EPolygonGauge::SetTransitionChoice ( eVision::ETransitionChoice eTransitionChoice)

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 EPolygonGauge::SetTransitionIndex to specify the desired transition.

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

◆ SetTransitionIndex()

void eVision::Legacy::EPolygonGauge::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.

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).

◆ SetTransitionType()

void eVision::Legacy::EPolygonGauge::SetTransitionType ( eVision::ETransitionType eTransitionType)

Transition type.

The type of a 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).