Table of Contents

Class ArcRadialClosure

Namespace
Hi.Numerical.Acts
Assembly
HiMech.dll

Classifies the radial closure of an arc motion — how far the arc's endpoint sits off the circle its center defines, measured as the gap between the begin radius and the end radius on the arc plane. A genuine arc closes (gap 0). The simulation accepts any gap and runs the block as a spiral whose radius blends linearly (ActMcXyzSpiralContour), but real controls check this closure and refuse the block once the gap passes their arc tolerance (e.g. Heidenhain error 5824 once MP7431 — typically around 0.016 mm — is exceeded). A program can therefore simulate cleanly and still stop on the machine; the diagnostics built from this class exist to close that gap.

public static class ArcRadialClosure
Inheritance
ArcRadialClosure
Inherited Members

Fields

AdviceThreshold_mm

Advice threshold: half of TypicalControllerTolerance_mm. A gap past this consumes a substantial share of the tolerance budget and deserves attention even though a control still accepts it.

public const double AdviceThreshold_mm = 0.008

Field Value

double

DiagnosticId

Diagnostic id shared by the SoftNc and HardNc arc gates.

public const string DiagnosticId = "Arc-EndpointOffRadius"

Field Value

string

TypicalControllerTolerance_mm

The arc tolerance a typical control enforces before refusing the block (e.g. the Heidenhain MP7431 family default).

public const double TypicalControllerTolerance_mm = 0.016

Field Value

double

Methods

TryDescribe(double, double, out string, out Dictionary<string, object>)

Classifies the begin/end radius pair of an arc. Returns false for a closing arc (gap within AdviceThreshold_mm) and for degenerate radii; returns true with a constant notification text and a value-carrying detail when the gap deserves a validation warning.

public static bool TryDescribe(double beginRadius_mm, double endRadius_mm, out string text, out Dictionary<string, object> detail)

Parameters

beginRadius_mm double

Begin-point radius about the center, on the arc plane.

endRadius_mm double

End-point radius about the center, on the arc plane.

text string

Constant notification text (fold-stable), or null.

detail Dictionary<string, object>

Measured radii and gap, or null.

Returns

bool