update ISO coordinate rendering for 3+2axis machine.

This commit is contained in:
2026-04-06 15:08:59 +08:00
parent 8dd5309e0e
commit 0fe9497552
219 changed files with 23941 additions and 12629 deletions
@@ -95,15 +95,48 @@
Classes
</h3>
<dl class="jumplist">
<dt><a class="xref" href="Hi.NcParsers.Semantics.MachineCoordinateStepSemantic.html">MachineCoordinateStepSemantic</a></dt>
<dd><p>Read MachineCoordinate from <a class="xref" href="Hi.NcParsers.Keywords.IMachineCoordinateDef.html#Hi_NcParsers_Keywords_IMachineCoordinateDef_MachineCoordinate">MachineCoordinate</a> in JsonObject
and produce <a class="xref" href="Hi.Numerical.Acts.ActMcXyzStep.html">ActMcXyzStep</a>.
Requires <a class="xref" href="Hi.NcParsers.LogicSyntaxs.ProgramXyzSyntax.html">ProgramXyzSyntax</a> to have computed McXyz first.</p>
<dt><a class="xref" href="Hi.NcParsers.Semantics.CompoundMotionSemantic.html">CompoundMotionSemantic</a></dt>
<dd><p>Resolves <a class="xref" href="Hi.NcParsers.Keywords.ICompoundMotionDef.html">ICompoundMotionDef</a> into acts
by delegating <a class="xref" href="Hi.NcParsers.Keywords.CompoundMotion.html#Hi_NcParsers_Keywords_CompoundMotion_ItemsKey">ItemsKey</a> to
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.text.json.nodes.jsonarray">ResolveItems(JsonArray, JsonObject, Vec3d, IRapidFeedrateConfig)</a>.</p>
</dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="Hi.NcParsers.Semantics.SemanticPiece.html">SemanticPiece</a></dt>
<dd></dd>
<dt><a class="xref" href="Hi.NcParsers.Semantics.MachineCoordinateStepSemantic.html">MachineCoordinateStepSemantic</a></dt>
<dd><p>Read MachineCoordinate from <a class="xref" href="Hi.NcParsers.Keywords.IMachineCoordinateDef.html#Hi_NcParsers_Keywords_IMachineCoordinateDef_MachineCoordinate">MachineCoordinate</a> in JsonObject
and produce <a class="xref" href="Hi.Numerical.Acts.ActMcXyzStep.html">ActMcXyzStep</a>.
Requires ProgramXyzSyntax to have computed McXyz first.</p>
</dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="Hi.NcParsers.Semantics.McArcMotionSemantic.html">McArcMotionSemantic</a></dt>
<dd><p>Resolves <a class="xref" href="Hi.NcParsers.Keywords.Generic.MotionForm.html#Hi_NcParsers_Keywords_Generic_MotionForm_McArc">McArc</a> motion into
<a class="xref" href="Hi.Numerical.Acts.ActFeedrate.html">ActFeedrate</a> + <a class="xref" href="Hi.Numerical.Acts.ActMcXyzSpiralContour.html">ActMcXyzSpiralContour</a>.
Reads arc center, plane normal, and direction from the
<a class="xref" href="Hi.Motion.html">Hi.Motion</a> section written by
<a class="xref" href="Hi.NcParsers.LogicSyntaxs.CircularMotionSyntax.html">CircularMotionSyntax</a>.</p>
</dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="Hi.NcParsers.Semantics.McLinearMotionSemantic.html">McLinearMotionSemantic</a></dt>
<dd><p>Resolves <a class="xref" href="Hi.NcParsers.Keywords.Generic.MotionForm.html#Hi_NcParsers_Keywords_Generic_MotionForm_McLinear">McLinear</a> motion into
<a class="xref" href="Hi.Numerical.Acts.ActFeedrate.html">ActFeedrate</a>/<a class="xref" href="Hi.Numerical.Acts.ActRapid.html">ActRapid</a> +
<a class="xref" href="Hi.Numerical.Acts.ActMcXyzLinearContour.html">ActMcXyzLinearContour</a> or <a class="xref" href="Hi.Numerical.Acts.ActMcXyzabcLinearContour.html">ActMcXyzabcLinearContour</a>.</p>
<p>
Discriminates by checking whether rotary axis values (A/B/C) are present
in <a class="xref" href="Hi.NcParsers.Keywords.IMachineCoordinateDef.html#Hi_NcParsers_Keywords_IMachineCoordinateDef_MachineCoordinate">MachineCoordinate</a>:
<ul><li>XYZ only → <a class="xref" href="Hi.Numerical.Acts.ActMcXyzLinearContour.html">ActMcXyzLinearContour</a></li><li>XYZABC → <a class="xref" href="Hi.Numerical.Acts.ActMcXyzabcLinearContour.html">ActMcXyzabcLinearContour</a> with Fanuc
composite feedrate: <code>d = √(ΔX² + ΔY² + ΔZ² + ΔA_deg² + ΔB_deg² + ΔC_deg²)</code></li></ul>
</dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="Hi.NcParsers.Semantics.SpindleSpeedSemantic.html">SpindleSpeedSemantic</a></dt>
<dd><p>Resolves <a class="xref" href="Hi.NcParsers.Keywords.ISpindleSpeedDef.html">ISpindleSpeedDef</a> section into
<a class="xref" href="Hi.Numerical.Acts.ActSpindleSpeed.html">ActSpindleSpeed</a> and <a class="xref" href="Hi.Numerical.Acts.ActSpindleDirection.html">ActSpindleDirection</a>.
Only emits when spindle speed or direction actually changes
from the previous block.</p>
</dd>
</dl>
<h3 id="interfaces">
Interfaces