deploy webservice static-file routing for docsite folder URLs, per-instance step-cache db, and constant-height panel title bars.

This commit is contained in:
2026-08-27 14:51:37 +08:00
parent 1fc510af5e
commit 2a98ae7556
1468 changed files with 182837 additions and 18888 deletions
@@ -102,7 +102,7 @@ a motion command, regardless of whether the resulting displacement is non-zero.
A redundant <code>G01 X10</code> on a block already at X10 still gets a
<a class="xref" href="Hi.NcParsers.Keywords.MotionEvent.html">MotionEvent</a>; the motion semantics
(<a class="xref" href="Hi.NcParsers.Semantics.McLinearMotionSemantic.html">McLinearMotionSemantic</a>,
<a class="xref" href="Hi.NcParsers.Semantics.McArcMotionSemantic.html">McArcMotionSemantic</a>, <a class="xref" href="Hi.NcParsers.Semantics.ClLinearMotionSemantic.html">ClLinearMotionSemantic</a>)
<a class="xref" href="Hi.NcParsers.Semantics.McArcMotionSemantic.html">McArcMotionSemantic</a>, <a class="xref" href="Hi.NcParsers.Semantics.ClLinearMcMotionSemantic.html">ClLinearMcMotionSemantic</a>)
then early-return on <code>distance &lt;= 0</code> and emit no
<a class="xref" href="Hi.Numerical.Acts.IAct.html">IAct</a>. NOT carried forward across blocks.</p>
<p>
@@ -160,6 +160,21 @@ Property names are used as JSON keys via <code>nameof</code>.
<pre><code class="lang-csharp">"MotionEvent": { "Form": "McLinear", "IsRapid": false }</code></pre>
<h2 id="Hi_NcParsers_Keywords_IMotionEventDef_remarks">Remarks</h2>
<div class="markdown level0 remarks"><p>
<a class="xref" href="Hi.NcParsers.Keywords.IMotionEventDef.html#Hi_NcParsers_Keywords_IMotionEventDef_Term">Term</a> source-precedence rule: modal motion (G00/G01/G02/G03)
leaves <a class="xref" href="Hi.NcParsers.Keywords.IMotionEventDef.html#Hi_NcParsers_Keywords_IMotionEventDef_Term">Term</a> unset because the source G-code is already
latched in the sibling <a class="xref" href="Hi.NcParsers.Keywords.MotionState.html">MotionState</a>.<a class="xref" href="Hi.NcParsers.Keywords.IMotionStateDef.html#Hi_NcParsers_Keywords_IMotionStateDef_Term">Term</a>.
Non-modal one-shots that drive the block's motion themselves — currently
<code>G53.1</code> (rapid rotary positioning to align with the active tilted
plane), and the same pattern is the intended fit for any future
non-modal motion command — set <a class="xref" href="Hi.NcParsers.Keywords.IMotionEventDef.html#Hi_NcParsers_Keywords_IMotionEventDef_Term">Term</a> to record the
originating G-code. When <a class="xref" href="Hi.NcParsers.Keywords.IMotionEventDef.html#Hi_NcParsers_Keywords_IMotionEventDef_Term">Term</a> is non-null, readers should
treat it as the authoritative source for this block; the modal
<a class="xref" href="Hi.NcParsers.Keywords.MotionState.html">MotionState</a> in this case is inherited context, not the
block's actual motion driver.
</p>
</div>
<h2 class="section" id="properties">Properties
@@ -230,6 +245,83 @@ Property names are used as JSON keys via <code>nameof</code>.
<a id="Hi_NcParsers_Keywords_IMotionEventDef_PoseStated_" data-uid="Hi.NcParsers.Keywords.IMotionEventDef.PoseStated*"></a>
<h3 id="Hi_NcParsers_Keywords_IMotionEventDef_PoseStated" data-uid="Hi.NcParsers.Keywords.IMotionEventDef.PoseStated">
PoseStated
</h3>
<div class="markdown level1 summary"><p>True when the writer solved and STATED the full six-axis pose on this
block's <a class="xref" href="Hi.NcParsers.Keywords.IMachineCoordinateStateDef.html#Hi_NcParsers_Keywords_IMachineCoordinateStateDef_MachineCoordinateState">MachineCoordinateState</a>
and wants the pose-carrying act (currently the
<code>ClToMcTransformSyntax</code> constant-posture downgrade: its acts are
expanded pose-first, so even an unchanged rotary state must ride the
act). Absent/false for NC blocks: there
<code>McLinearMotionSemantic</code> discriminates by rotary VALUE change —
key presence stopped meaning &ldquo;commanded&rdquo; once
<a class="xref" href="Hi.NcParsers.PostLogicSyntaxs.ModalCarrySyntax.html">ModalCarrySyntax</a> completes every
section with carried modal values.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">bool PoseStated { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="Hi_NcParsers_Keywords_IMotionEventDef_Term_" data-uid="Hi.NcParsers.Keywords.IMotionEventDef.Term*"></a>
<h3 id="Hi_NcParsers_Keywords_IMotionEventDef_Term" data-uid="Hi.NcParsers.Keywords.IMotionEventDef.Term">
Term
</h3>
<div class="markdown level1 summary"><p>Source G-code term, set <b>only</b> when a non-modal one-shot drove
this block's motion (e.g. <code>&ldquo;G53.1&rdquo;</code>). Null/absent for modal motion
blocks (G00/G01/G02/G03) whose source is recorded on the sibling
<a class="xref" href="Hi.NcParsers.Keywords.IMotionStateDef.html#Hi_NcParsers_Keywords_IMotionStateDef_Term">Term</a>. See type-level remarks for the
precedence rule.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">string Term { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
</article>