Class ActMcPolarSpiralContour
Circular (arc/helix) contour on the polar hypothetical plane while Polar Coordinate Interpolation (Fanuc G12.1) is active.
The arc geometry lives entirely in central polar Rxcz coordinates
(X = radius-direction linear axis mm, Y = hypothetical rotary-substitute
axis mm, Z = real Z mm, origin on the rotary center) — the same spiral
math as ActMcXyzSpiralContour. Each sampled point is then
converted to machine coordinates the way
ActMcPolarLinearContour does: radius drives machine X, the
atan2 angle drives the machine C axis with the branch chained from
the previous step (GetNoInterpolationOrdinaryProgramXcz_rad(vec3d_t, double, vec3d_t)),
machine Y/A/B stay frozen at the previous position, and Z carries the
coordinate/tool-height offset.
atan2, whose machine C
jumps by one cycle at the branch cut (same physical pose).
public class ActMcPolarSpiralContour : IActDuration, IActMcXyzabcContour, IAct
- Inheritance
-
ActMcPolarSpiralContour
- Implements
- Inherited Members
- Extension Methods
Constructors
ActMcPolarSpiralContour(dvec3d_t, vec3d_t, vec3d_t, vec3d_t, vec3d_t, int, TimeSpan, double, PolarModeDirEnum)
Initializes a new instance of the ActMcPolarSpiralContour class.
public ActMcPolarSpiralContour(dvec3d_t preMcXyzabc_rad, vec3d_t programPolarBegin, vec3d_t programPolarEnd, vec3d_t programPolarCenterOnBeginPlane, vec3d_t centerNormal, int additionalCircleNum, TimeSpan duration, double zCoordinateOffset, PolarModeDirEnum polarDir = PolarModeDirEnum.XC)
Parameters
preMcXyzabc_raddvec3d_tPrevious machine XYZ-ABC coordinates in radians
programPolarBeginvec3d_tArc begin in central polar Rxcz (mm)
programPolarEndvec3d_tArc end in central polar Rxcz (mm)
programPolarCenterOnBeginPlanevec3d_tArc center on the begin plane, central polar Rxcz (mm)
centerNormalvec3d_tPlane normal with rotation sign
additionalCircleNumintNumber of additional full circles
durationTimeSpanDuration of the contour movement
zCoordinateOffsetdoubleDepth-axis (plane normal) offset
polarDirPolarModeDirEnumPolar axis pair (default XC)
Properties
ActDuration
Gets or sets the duration of the action.
public TimeSpan ActDuration { get; set; }
Property Value
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
AdditionalCircleNum
Number of additional full circles (helix).
public int AdditionalCircleNum { get; set; }
Property Value
CenterNormal
Plane normal with rotation sign (XC pair → (0,0,±1)).
public vec3d_t CenterNormal { get; set; }
Property Value
PolarDir
The polar axis pair mapping the triple-space steps onto machine axes (XC unless the machine runs G12.1 on YA/ZB).
public PolarModeDirEnum PolarDir { get; }
Property Value
ProgramPolarBegin
Arc begin in central polar Rxcz coordinates (mm).
public vec3d_t ProgramPolarBegin { get; set; }
Property Value
ProgramPolarCenterOnBeginPlane
Arc center on the begin plane, central polar Rxcz (mm).
public vec3d_t ProgramPolarCenterOnBeginPlane { get; set; }
Property Value
ProgramPolarEnd
Arc end in central polar Rxcz coordinates (mm).
public vec3d_t ProgramPolarEnd { get; set; }
Property Value
Methods
GetActMcXyzabcSteps(IMachiningMotionResolution, double, Action<object>)
Gets the machine XYZABC steps for this contour.
public IEnumerable<ActMcXyzabcStep> GetActMcXyzabcSteps(IMachiningMotionResolution ncResolution, double spindleMountToToolTipLength, Action<object> coordinateConversionFailedAction)
Parameters
ncResolutionIMachiningMotionResolutionThe machining motion resolution to use for step generation.
spindleMountToToolTipLengthdoubleThe length from spindle mount to tool tip, used for computing step numbers.
coordinateConversionFailedActionAction<object>Called when attacher NP to MC conversion fails; the argument is the failed dvec3d_t (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.