Table of Contents

Interface IMachineCoordinateStateDef

Namespace
Hi.NcParsers.Keywords
Assembly
HiMech.dll

Modal machine-coordinate state — absolute six-axis machine position after the block has executed. Written on every block by motion-related LogicSyntaxs (McAbcSyntax, McAbcXyzFallbackSyntax, McXyzSyntax, MachineCoordSelectSyntax, G53p1RotaryPositionSyntax, ReferenceReturnSyntax); seeded on the init block by HomeMcInitializer; carried across non-motion blocks — and per-key completed on partially-written blocks (an XYZ-only motion block receives the carried modal rotary values) — by ModalCarrySyntax.

Only configured axes appear as keys (X/Y/Z/A/B/C). Non-existent axes (e.g., A/B/C on a 3-axis machine) are omitted rather than written as NaN sentinels.

After the PostLogic carry the section is a MODAL record: key presence means "state known", never "this block commanded the axis". Consumers needing "commanded" must read the block's Parsing words or compare values against the previous block (see LinearMotionUtil.HasRotaryMotion). The only presence-as-commanded carve-out is CompoundMotion.Items[*] item-level sections, which the carry never touches.

public interface IMachineCoordinateStateDef
Extension Methods

Examples

"MachineCoordinateState": { "X": 100.0, "Y": 50.0, "Z": -20.0 }
"MachineCoordinateState": { "X": 100.0, "Y": 50.0, "Z": -20.0, "A": 0.0, "B": 30.0 }

Properties

MachineCoordinateState

JSON object with per-axis absolute machine coordinate. Configured axes are present; unconfigured axes are omitted.

JsonObject MachineCoordinateState { get; set; }

Property Value

JsonObject