Table of Contents

Interface ICannedCycleDef

Namespace
Hi.NcParsers.Keywords
Assembly
HiMech.dll

Canned cycle modal state (Group 09). Captures which cycle is currently active, its return mode (G98/G99), and the resolved absolute parameter set used for modal lookback.

Written by CannedCycleResolveSyntax on every block that belongs to the canned-cycle group: cycle code present (G81/G82/G83/G73/G84/G74/G85/G86/G89/G76/G87), modal repeat (cycle still active, only coordinates given), or explicit cancel (G80).

Term = "G80" is the explicit-cancel sentinel used by FindPreviousActiveCycle(LazyLinkedListNode<SyntaxPiece>, string[]) to terminate modal lookback without ambiguity; regular blocks (e.g. G00 X.. Y..) simply omit the section entirely.

public interface ICannedCycleDef
Extension Methods

Examples

// Active G81 block
"CannedCycle": {
  "Term": "G81",
  "ReturnMode": "G98",
  "Params": { "X": 20, "Y": 52, "Z": -31, "R": 3, "F": 600 }
}
// Explicit cancel block (G80 alone)
"CannedCycle": { "Term": "G80" }

Properties

Params

Resolved absolute cycle parameters: X, Y, Z, R, Q, F, P, K. Used for modal lookback so the next repeat block can merge its own overrides with the previously-resolved values. Absent on G80 blocks.

JsonObject Params { get; set; }

Property Value

JsonObject

ReturnMode

Return level mode: “G98” (initial Z) or “G99” (R-point). Only meaningful when Term is an active cycle code; absent on G80 blocks.

string ReturnMode { get; set; }

Property Value

string

Term

NC term of the canned-cycle-group code on this block (“G81”, “G82”, ..., “G89”, or “G80” for explicit cancel). Modal-repeat blocks carry the same term as the most recent active cycle.

string Term { get; set; }

Property Value

string