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
@@ -216,6 +216,183 @@ Class Positioning
<h3 id="Hi_NcParsers_Keywords_Positioning_CodedAbsolute" data-uid="Hi.NcParsers.Keywords.Positioning.CodedAbsolute">
CodedAbsolute
</h3>
<div class="markdown level1 summary"><p>Coded-position absolute mode name (Siemens <code>CAC()</code>): the word
value is an indexing position <b>number</b>, not a coordinate — the
write-stage consumers (<a class="xref" href="Hi.NcParsers.LogicSyntaxs.McAbcSyntax.html">McAbcSyntax</a> /
<a class="xref" href="Hi.NcParsers.LogicSyntaxs.IncrementalResolveSyntax.html">IncrementalResolveSyntax</a>) look the number
up in the machine's indexing table
(<a class="xref" href="Hi.NcParsers.Dependencys.IIndexingPositionConfig.html">IIndexingPositionConfig</a>) and rewrite the
entry to the plain counterpart (<a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_Absolute">Absolute</a>) once the
coordinate is resolved, so the
<a class="xref" href="Hi.NcParsers.LogicSyntaxs.McAbcCyclicPathSyntax.html">McAbcCyclicPathSyntax</a> tail-pass never
sees a coded value. Per-word
<a class="xref" href="Hi.NcParsers.Keywords.PositioningOverride.html">PositioningOverride</a> value only.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string CodedAbsolute = &quot;CodedAbsolute&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Positioning_CodedIncremental" data-uid="Hi.NcParsers.Keywords.Positioning.CodedIncremental">
CodedIncremental
</h3>
<div class="markdown level1 summary"><p>Coded-position incremental mode name (Siemens <code>CIC()</code>): the
word value counts indexing positions to advance (positive) or
retreat (negative) from the current position; <code>0</code> does not
traverse. Resolved and rewritten by the same consumers as
<a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_CodedAbsolute">CodedAbsolute</a> — on a cyclic indexing axis the sign
becomes a <a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_PositiveOnly">PositiveOnly</a> / <a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_NegativeOnly">NegativeOnly</a>
approach so the swing keeps the programmed direction.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string CodedIncremental = &quot;CodedIncremental&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Positioning_CodedNegativeOnly" data-uid="Hi.NcParsers.Keywords.Positioning.CodedNegativeOnly">
CodedNegativeOnly
</h3>
<div class="markdown level1 summary"><p>Coded-position negative-direction-only mode name (Siemens
<code>CACN()</code>) — the mirror of <a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_CodedPositiveOnly">CodedPositiveOnly</a>,
rewritten to <a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_NegativeOnly">NegativeOnly</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string CodedNegativeOnly = &quot;CodedNegativeOnly&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Positioning_CodedPositiveOnly" data-uid="Hi.NcParsers.Keywords.Positioning.CodedPositiveOnly">
CodedPositiveOnly
</h3>
<div class="markdown level1 summary"><p>Coded-position positive-direction-only mode name (Siemens
<code>CACP()</code>) — <a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_CodedAbsolute">CodedAbsolute</a> lookup rewritten to
<a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_PositiveOnly">PositiveOnly</a>. Rotary indexing axes only.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string CodedPositiveOnly = &quot;CodedPositiveOnly&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Positioning_CodedShortest" data-uid="Hi.NcParsers.Keywords.Positioning.CodedShortest">
CodedShortest
</h3>
<div class="markdown level1 summary"><p>Coded-position shortest-path mode name (Siemens <code>CDC()</code>) —
<a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_CodedAbsolute">CodedAbsolute</a> lookup rewritten to
<a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_Shortest">Shortest</a>. Rotary indexing axes only.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string CodedShortest = &quot;CodedShortest&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Positioning_Incremental" data-uid="Hi.NcParsers.Keywords.Positioning.Incremental">
Incremental
@@ -246,6 +423,118 @@ Class Positioning
<h3 id="Hi_NcParsers_Keywords_Positioning_NegativeOnly" data-uid="Hi.NcParsers.Keywords.Positioning.NegativeOnly">
NegativeOnly
</h3>
<div class="markdown level1 summary"><p>Rotary negative-direction-only approach mode name (Siemens
<code>ACN()</code>) — the mirror of <a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_PositiveOnly">PositiveOnly</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string NegativeOnly = &quot;NegativeOnly&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Positioning_PositiveOnly" data-uid="Hi.NcParsers.Keywords.Positioning.PositiveOnly">
PositiveOnly
</h3>
<div class="markdown level1 summary"><p>Rotary positive-direction-only approach mode name (Siemens
<code>ACP()</code>): absolute target approached by rotating in the
positive axis direction, even when that is the longer way around.
Per-word <a class="xref" href="Hi.NcParsers.Keywords.PositioningOverride.html">PositioningOverride</a> value only. Write-stage
consumers fall through to the absolute write; the directional
window swap happens in
<a class="xref" href="Hi.NcParsers.LogicSyntaxs.McAbcCyclicPathSyntax.html">McAbcCyclicPathSyntax</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string PositiveOnly = &quot;PositiveOnly&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_NcParsers_Keywords_Positioning_Shortest" data-uid="Hi.NcParsers.Keywords.Positioning.Shortest">
Shortest
</h3>
<div class="markdown level1 summary"><p>Rotary shortest-path mode name (Siemens <code>DC()</code>): absolute
target reached by the shortest cyclic swing. Only meaningful as a
per-word <a class="xref" href="Hi.NcParsers.Keywords.PositioningOverride.html">PositioningOverride</a> value, never as the
modal <a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_Mode">Mode</a>. The write-stage consumers
(<a class="xref" href="Hi.NcParsers.LogicSyntaxs.McAbcSyntax.html">McAbcSyntax</a> /
<a class="xref" href="Hi.NcParsers.LogicSyntaxs.IncrementalResolveSyntax.html">IncrementalResolveSyntax</a>) deliberately
treat every non-<a class="xref" href="Hi.NcParsers.Keywords.Positioning.html#Hi_NcParsers_Keywords_Positioning_Incremental">Incremental</a> value as an absolute
write; the shortest swing itself is the
<a class="xref" href="Hi.NcParsers.LogicSyntaxs.McAbcCyclicPathSyntax.html">McAbcCyclicPathSyntax</a> tail-pass default
for modular rotary axes, so this value changes no consumer
behavior — it preserves the DC-vs-AC distinction on the block and
lets the tail-pass warn when the axis is not modular rotary (where
the shortest-path promise cannot be honored).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const string Shortest = &quot;Shortest&quot;</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="properties">Properties
</h2>