Table of Contents

Class CoordinateOffsetUtil

Namespace
Hi.NcParsers.LogicSyntaxs
Assembly
HiMech.dll

Shared utilities for all coordinate offset syntaxes (ISO, Siemens, Heidenhain). Handles section IO, backward lookback, and ProgramToMcTransform composition.

public static class CoordinateOffsetUtil
Inheritance
CoordinateOffsetUtil
Inherited Members

Fields

TransformSource

public const string TransformSource = "CoordinateOffset"

Field Value

string

Methods

ComposeTranslation(JsonObject, Vec3d)

public static void ComposeTranslation(JsonObject json, Vec3d offset)

Parameters

json JsonObject
offset Vec3d

FindPreviousCoordinateId(LazyLinkedListNode<SyntaxPiece>)

public static string FindPreviousCoordinateId(LazyLinkedListNode<SyntaxPiece> node)

Parameters

node LazyLinkedListNode<SyntaxPiece>

Returns

string

GetCurrentCoordinateId(JsonObject)

Gets CoordinateId from the current node's existing CoordinateOffset section (e.g., set by StaticInitializer).

public static string GetCurrentCoordinateId(JsonObject json)

Parameters

json JsonObject

Returns

string

ResolveOffset(IEnumerable<INcDependency>, string)

Resolves the offset for coordId by scanning every IIsoCoordinateConfig in ncDependencyList and returning the first non-null result. Returns null when no provider has data for this id (callers should fall back to Zero).

Multi-provider iteration lets a brand parameter table cover the hardware-mapped subset (e.g. Fanuc G54–G59, G54.1 P1–P48 backed by real parameter numbers) while a standalone IsoCoordinateTable covers HiNC-extension ids the brand table does not handle (e.g. G59.1–G59.9).

public static Vec3d ResolveOffset(IEnumerable<INcDependency> ncDependencyList, string coordId)

Parameters

ncDependencyList IEnumerable<INcDependency>
coordId string

Returns

Vec3d

WriteSection(JsonObject, string, Vec3d)

public static void WriteSection(JsonObject json, string coordId, Vec3d offset)

Parameters

json JsonObject
coordId string
offset Vec3d