Gauge Definitions

Point Gauge

You can select the most relevant transition points along a line segment probe that crosses one or several objects edges. Crosswise and lengthwise filtering can be activated for noise reduction.

Point location. Contrast-based selection

Usage

Line Gauge

The placement of a ELineGauge .NET Python is defined by its ELineShape::GetCenter .NET Python, its ELineShape::GetLength .NET Python and its ELineShape::GetAngle .NET Python with respect to the X-axis. To constrain the line slope value, set ELineShape::GetAngle .NET Python and ELineGauge::GetKnownAngle .NET Python.

../../../../_images/linefitting.webp

Line fitting

Usage

Rectangle Gauge

The placement of a ERectangleGauge .NET Python is defined by its nominal position (given by the coordinates of its ERectangleShape::GetCenter .NET Python), its ERectangleShape::SetSize .NET Python and its ERectangleShape::GetAngle .NET Python.

Each side of a rectangle can have its own transition detection parameters, and can be set to active or inactive with the ERectangleGauge::GetActiveEdges .NET Python property. When a side is active:

  • Setting the value of a parameter only applies to the currently active sides1.

  • Getting the value of a parameter yields a result only when the value of this property is the same for all active sides.

  • Only active sides are used for measurement and model fitting.

These rules allow to set different parameters for different sides, and measure parallel sides or a corner point instead of the whole rectangle. The four sides are denoted by letters “x”, “y”, “XX” and “YY” respectively.

../../../../_images/rectanglefittingconventions.webp

Naming conventions for the sides of a rectangle gauge

Usage

../../../../_images/18169.webp

Locating a rectangle’s corners

Circle Gauge

The placement of a ECircleGauge .NET Python is defined by its nominal position (given by the coordinates of its ECircleShape::GetCenter .NET Python), its nominal ECircleShape::GetDiameter .NET Python (or ECircleShape::GetRadius .NET Python), the angular position from where it extends and its angular ECircleShape::GetAmplitude .NET Python.

The Set member can distinguish between a full circle and an arc (the arc amplitude must be specified).

../../../../_images/17843.webp

Circle fitting

Usage

Wedge Gauge

The placement of a EWedgeGauge .NET Python is defined by its nominal position (given by the coordinates of its EWedgeShape::GetCenter .NET Python), its nominal EWedgeShape::GetInnerRadius .NET Python and EWedgeShape::GetOuterRadius .NET Python (EWedgeShape::GetInnerDiameter .NET Python and EWedgeShape::GetOuterDiameter .NET Python), its EWedgeShape::GetBreadth .NET Python (difference between radii), the EWedgeShape::GetAngle .NET Python from where it extends and its EWedgeShape::GetAmplitude .NET Python.

The Set member can distinguish between a full ring, a sector of a ring and a disk.

Each side of a wedge can have its own transition detection parameters and can be set to active or inactive with the EWedgeGauge::GetActiveEdges .NET Python property. When a side is active, this means that:

  • Setting the value of a parameter only applies to the currently active sides;

  • Getting the value of a parameter yields a result only when the value of this parameter is the same for all active sides;

  • Only active sides are used for measurement and model fitting.

So different sides can have different parameters, and you can measure parallel arcs or oblique sides, or a corner point, instead of the whole wedge. The four sides are denoted by letters “a”, “r”, “AA” and “RR” respectively.

../../../../_images/wedgefittingconventions.webp

Naming conventions for the sides of a wedge gauge

Usage

Polygon Gauge

  • A polygon is defined as a list of connected vertices, forming a closed or an open shape. EPolygonGauge .NET Python computes several transition points along each edge of the polygon, like with a line gauge. Then from these transition points, a measured polygon is computed with a strategy depending on the measurement mode.

In orange, the closed or open polygon gauge and, in green, the measured transition points

../../../../_images/polygon_shape_3.webp

Class dependency of the class EPolygonGauge

Note

EPolygonGauge .NET Python has 3 measurement modes EPolygonMeasurementMode .NET Python. The typical use cases are:

../../../../_images/polygon_shape_41.webp

Illustration of the Global measurement mode:
the measured polygon is a translation and a rotation of the input polygon

By default, the global transformation is rigid:

  • Only the translation and the rotation are optimized to match the contour of the object.

  • If scaling is required, you must explicitly enable it with the method EPolygonGauge::SetEnableScaling .NET Python.

  • The global measurement doesn’t change the polygon vertex positions, it only adjusts the polygon frame.

    • EPolygonMeasurementMode_Edge .NET Python: Each polygon edge is measured individually.

      • A polygon composed by the union of these fitted edges is generated.

      • The number of edges of the measured polygon is the same as the input polygon.

../../../../_images/polygon_shape_51.webp

The input polygon (blue) and the fitted polygon (green)

  • EPolygonMeasurementMode_Point .NET Python: All transition points on the object contour are used to build a new polygon, with an optimized number of edges.

    • The resulting polygon is simplified using a filtering threshold to reduce the number of edges while keeping the shape of the object.

    • The resulting number of edges depends on the geometry of the contour of the object and on the filtering threshold.

    • Set the filtering threshold with EPolygonGauge::SetFilteringThreshold .NET Python.

../../../../_images/polygon_shape_61.webp

A polygon gauge with a single edge produces a measured polygon that follows the contour of the object. Depending on the filtering threshold, the number of vertices is reduced.

Usage