Table of Contents

Class NcOptSplitionPlan

Namespace
Hi.NcOpt
Assembly
HiMech.dll

Complete splition rewrite plan of one source piece: the ordered fragment specs (one per segment step) plus the pack-level modal-token strip list. Keyed by the source piece's SentenceIndex in SplitionPlansBySentenceIndex.

public class NcOptSplitionPlan
Inheritance
NcOptSplitionPlan
Inherited Members
Extension Methods

Remarks

SoftNc dual of the HardNc oracle's splition branch (HiNc/NcOpt/NcOptProc.cs lines 2165-2401), with the plan/apply split: SoftNcOptProc computes every decision (feed chains, essential filter, endpoint tolerances, arc geometry, log notes) during its orchestrator walk; the converter only replays the recorded text operations onto copies of the source block text.

Fields

ModalFlagTokenCandidates

Modal NC flag token names, dotted/longer names first, that the plan builder probes on the source text to fill StripModalTokens.

public static readonly string[] ModalFlagTokenCandidates

Field Value

string[]

Remarks

SoftNc collapse of the oracle's RebuildFlagSyntaxToNcLine (frozen baseline, HiNc/NcOpt/NcOptProc.cs lines 1965-1993): the oracle iterates every NcLifeCycleMode.Modal flag (HiUniNc/Numerical/NcFlag.cs) and removes the token when the flag is ON and identical on the previous OUTPUT line (IsFlagKeeping, HardNcUtil.cs:610-631). Fragments of one splition pack all share the source line's modal state, so for the non-first emitted fragments “kept-same ON modal flag” collapses to “modal flag token literally present on the source text” — one-shot tokens (G04/G28/G53/L/LN/M03/M06/M08…), N numbers and other co-loaded words survive on every fragment, exactly like the oracle. The list is the Modal-lifecycle NC names of NcFlag; names that can never appear as text (attribute-less enum identifiers such as SpindleCw/Cooling) are omitted, and G95 is deliberately absent because the oracle has no G95 flag (its token survives fragmenting there too). The G54-series composed names (oracle lines 1976-1982) are covered by the literal G54/…/G59/G54.1/G59.x tokens.

Properties

Fragments

Ordered fragment specs, one per step of the pack's StepIndexSegment (dropped fragments included, see IsEmitted).

public List<NcOptSplitionFragmentPlan> Fragments { get; set; }

Property Value

List<NcOptSplitionFragmentPlan>

StripModalTokens

The modal flag tokens literally present on the source block text (outside comments), probed once per pack in ModalFlagTokenCandidates order; removed from every emitted fragment after the first emitted one (StripModalFlagTokens).

public List<string> StripModalTokens { get; set; }

Property Value

List<string>