Table of Contents

Class ActClArcMcXyzabcContour

Namespace
Hi.Numerical.Acts
Assembly
HiMech.dll

Arc twin of ActClLinearMcXyzabcContour: a circular cutter location path realized on machine coordinates. The arc is interpolated in CL space (true arc via At(double), including tilting normals) and every resampled step is inverse-solved through PnToMc(DVec3d, out DVec3d).

public class ActClArcMcXyzabcContour : IActDuration, IActMcXyzabcContour, IAct
Inheritance
ActClArcMcXyzabcContour
Implements
Inherited Members
Extension Methods

Remarks

Differences from the linear twin:

  • The step normal comes from the arc geometry itself (At(double)), not from a forward-kinematic probe of interpolated ABC — the CL source is the truth for tool orientation.
  • Rotary unwrap anchoring chains step-to-step (each solved ABC is anchored to the previous step's) because the ABC path of an arc is not linear; the first step anchors to McSeq.pre.
The arc geometry must already be expressed in the kinematic Pn frame (workpiece→Pn transform applied by the emitting semantic).

Constructors

ActClArcMcXyzabcContour(ClCircleArc, SeqPair<DVec3d>, double, TimeSpan, IMachineKinematics)

Initializes a new instance of the ActClArcMcXyzabcContour class.

public ActClArcMcXyzabcContour(ClCircleArc clArcOnPn, SeqPair<DVec3d> mcSeq, double controllerToolOffset, TimeSpan duration, IMachineKinematics coordinateConverter)

Parameters

clArcOnPn ClCircleArc

Circular CL path in the kinematic Pn frame

mcSeq SeqPair<DVec3d>

Machine coordinate endpoint pair (rotary in radians)

controllerToolOffset double

The tool's attacher→tip length

duration TimeSpan

Duration of the contour movement

coordinateConverter IMachineKinematics

Coordinate converter for transformation

Properties

ActDuration

Gets or sets the duration of the action.

public TimeSpan ActDuration { get; set; }

Property Value

TimeSpan

Remarks

The duration represents:

  • The time required to complete the action
  • Should be positive and finite
  • Zero duration indicates an instantaneous action
  • Used for scheduling and timing calculations

ClArcOnPn

The circular CL path in the kinematic Pn frame; its points are tool tip positions and its normals tool axis directions.

public ClCircleArc ClArcOnPn { get; set; }

Property Value

ClCircleArc

ControllerToolOffset

The active tool's attacher→tip length; reconstructs the attacher position from a CL tip point.

public double ControllerToolOffset { get; set; }

Property Value

double

CoordinateConverter

Coordinate converter.

public IMachineKinematics CoordinateConverter { get; set; }

Property Value

IMachineKinematics

McSeq

Machine-coordinate endpoints (begin/end); rotary components in radians. Used for the step count estimate and as the unwrap anchor of the first resampled step.

public SeqPair<DVec3d> McSeq { get; set; }

Property Value

SeqPair<DVec3d>

Methods

GetActMcXyzabcSteps(IMachiningMotionResolution, double, Action<object>)

Gets the machine XYZABC steps for this contour.

public IEnumerable<ActMcXyzabcStep> GetActMcXyzabcSteps(IMachiningMotionResolution ncResolution, double spindleBuckleToToolTipLength, Action<object> coordinateConversionFailedAction)

Parameters

ncResolution IMachiningMotionResolution

The machining motion resolution to use for step generation.

spindleBuckleToToolTipLength double

The length from spindle buckle to tool tip, used for computing step numbers.

coordinateConversionFailedAction Action<object>

Called when attacher NP to MC conversion fails; the argument is the failed DVec3d (attacher NP).

Returns

IEnumerable<ActMcXyzabcStep>

A collection of machine XYZABC steps.

ToString()

Returns a string that represents the current object.

public override string ToString()

Returns

string

A string that represents the current object.