Table of Contents

Interface ITransformationDef

Namespace
Hi.NcParsers.Keywords
Assembly
HiMech.dll

Chain of named ProgramXyz → MachineCoordinate transformation entries, evaluated at the block endpoint. Stored as a JsonArray of entries, each with “Source” and “Mat4d” keys. Each contributing INcSyntax adds or replaces its own entry by source name. GetComposedTransform(JsonObject) composes entries in order: McXyz = ProgramXyz * T[0] * T[1] * ... * T[n].

"EndPoint" semantic — each Mat4d is a snapshot valid only for this block's endpoint state (endpoint ABC, endpoint tool orientation, etc.). For RTCP blocks where rotary axes change across the block, intermediate CL-point positions cannot be derived by applying this matrix to an interpolated ProgramXyz — the semantic layer (ClLinearMotionSemantic) handles per-step IK separately. Consumers must not treat the composed matrix as globally applicable across a rotary contour.

public interface ITransformationDef
Extension Methods

Examples

"EndPointProgramToMcTransform": [
  {"Source": "TiltTransform", "Mat4d": [1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,1]},
  {"Source": "ToolHeightCompensation", "Mat4d": [1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,99.98,1]},
  {"Source": "CoordinateOffset", "Mat4d": [1,0,0,0, 0,1,0,0, 0,0,1,0, 10,20,-100,1]},
  {"Source": "PivotTransform", "Mat4d": [cosC,sinC,0,0, -sinC,cosC,0,0, 0,0,1,0, px,py,pz,1]}
]

Properties

EndPointProgramToMcTransform

JsonArray EndPointProgramToMcTransform { get; set; }

Property Value

JsonArray