This commit is contained in:
2026-01-24 18:13:05 +08:00
parent e3e9b0fddf
commit c85e714f55
50 changed files with 803 additions and 992 deletions
@@ -6,7 +6,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class NcArgCycle800 | HiAPI-C# 2025 ">
<meta name="description" content="Represents parameters for the Cycle 800 (Plane Tilting) in Heidenhain controls.">
<meta name="description" content="Represents parameters for Siemens CYCLE800 (Plane Tilting / Swivel).">
<link rel="icon" href="../img/HiAPI.favicon.ico">
<link rel="stylesheet" href="../public/docfx.min.css">
<link rel="stylesheet" href="../public/main.css">
@@ -97,7 +97,7 @@ Class NcArgCycle800
<dl><dt>Assembly</dt><dd>HiUniNc.dll</dd></dl>
</div>
<div class="markdown summary"><p>Represents parameters for the Cycle 800 (Plane Tilting) in Heidenhain controls.</p>
<div class="markdown summary"><p>Represents parameters for Siemens CYCLE800 (Plane Tilting / Swivel).</p>
</div>
<div class="markdown conceptual"></div>
@@ -145,9 +145,6 @@ Class NcArgCycle800
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
</dd></dl>
<dl class="typelist extensionMethods">
@@ -178,6 +175,10 @@ Class NcArgCycle800
<h2 id="Hi_Numerical_NcArgs_NcArgCycle800_remarks">Remarks</h2>
<div class="markdown level0 remarks"><p>CYCLE800 is used for 5-axis machining to define tilted working planes.
The MODE parameter controls how angles A, B, C are interpreted.</p>
</div>
<h2 class="section" id="properties">Properties
@@ -191,10 +192,12 @@ Class NcArgCycle800
</h3>
<div class="markdown level1 summary"><ol>
<li>Axis angle (axial, projection angle swivel modes)</li>
<li>Angle of rotation about the Z axis in XY plane(solid angle swivel mode)</li>
</ol>
<div class="markdown level1 summary"><p>First rotation angle in degrees.
Interpretation depends on MODE:</p>
<ul>
<li>Solid angle mode: Rotation about Z axis in XY plane</li>
<li>Axial mode: Rotation of first rotary axis (typically A)</li>
</ul>
</div>
<div class="markdown level1 conceptual"></div>
@@ -219,6 +222,105 @@ Class NcArgCycle800
<a id="Hi_Numerical_NcArgs_NcArgCycle800_AxisForA_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.AxisForA*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_AxisForA" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.AxisForA">
AxisForA
</h3>
<div class="markdown level1 summary"><p>Gets the rotation axis for parameter A from bits 1-0.
01=X, 10=Y, 11=Z (00 is invalid/not used)</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int AxisForA { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="Hi_Numerical_NcArgs_NcArgCycle800_AxisForB_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.AxisForB*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_AxisForB" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.AxisForB">
AxisForB
</h3>
<div class="markdown level1 summary"><p>Gets the rotation axis for parameter B from bits 3-2.
01=X, 10=Y, 11=Z (00 is invalid/not used)</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int AxisForB { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="Hi_Numerical_NcArgs_NcArgCycle800_AxisForC_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.AxisForC*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_AxisForC" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.AxisForC">
AxisForC
</h3>
<div class="markdown level1 summary"><p>Gets the rotation axis for parameter C from bits 5-4.
01=X, 10=Y, 11=Z (00 is invalid/not used)</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int AxisForC { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="Hi_Numerical_NcArgs_NcArgCycle800_B_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.B*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_B" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.B">
@@ -226,10 +328,12 @@ Class NcArgCycle800
</h3>
<div class="markdown level1 summary"><ol>
<li>Axis angle (axial, projection angle swivel modes)</li>
<li>Angle of rotation in space about the Y axis(swivel mode &lsquo;solid angle&rsquo;)</li>
</ol>
<div class="markdown level1 summary"><p>Second rotation angle in degrees.
Interpretation depends on MODE:</p>
<ul>
<li>Solid angle mode: Rotation about Y axis in space</li>
<li>Axial mode: Rotation of second rotary axis (typically B)</li>
</ul>
</div>
<div class="markdown level1 conceptual"></div>
@@ -261,7 +365,11 @@ Class NcArgCycle800
</h3>
<div class="markdown level1 summary"><p>Axis angle (axial, projection angle swivel modes).</p>
<div class="markdown level1 summary"><p>Third rotation angle in degrees.
Interpretation depends on MODE:</p>
<ul>
<li>Axial mode: Rotation of third rotary axis (typically C)</li>
</ul>
</div>
<div class="markdown level1 conceptual"></div>
@@ -325,11 +433,11 @@ Class NcArgCycle800
</h3>
<div class="markdown level1 summary"><p>Retract.
<div class="markdown level1 summary"><p>Retract mode.
Values:
0: No retraction
1: Retract Z axis(default)
2: Retract Z, X, Y axis1)
1: Retract Z axis (default)
2: Retract Z, X, Y axes
4: Maximum retraction in tool direction
5: Incremental retraction in tool direction</p>
</div>
@@ -356,6 +464,166 @@ Values:
<a id="Hi_Numerical_NcArgs_NcArgCycle800_FR_I_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.FR_I*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_FR_I" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.FR_I">
FR_I
</h3>
<div class="markdown level1 summary"><p>Value of incremental retraction in tool direction.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public double FR_I { 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.double">double</a></dt>
<dd></dd>
</dl>
<a id="Hi_Numerical_NcArgs_NcArgCycle800_IsAxisByAxisMode_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.IsAxisByAxisMode*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_IsAxisByAxisMode" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.IsAxisByAxisMode">
IsAxisByAxisMode
</h3>
<div class="markdown level1 summary"><p>Gets whether this is Axis by Axis mode (bits 7-6 = 00).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsAxisByAxisMode { get; }</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_Numerical_NcArgs_NcArgCycle800_IsDirectRotaryAxisMode_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.IsDirectRotaryAxisMode*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_IsDirectRotaryAxisMode" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.IsDirectRotaryAxisMode">
IsDirectRotaryAxisMode
</h3>
<div class="markdown level1 summary"><p>Gets whether this is Direct Rotary Axis mode (bits 7-6 = 11).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsDirectRotaryAxisMode { get; }</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_Numerical_NcArgs_NcArgCycle800_IsProjectionAngleMode_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.IsProjectionAngleMode*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_IsProjectionAngleMode" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.IsProjectionAngleMode">
IsProjectionAngleMode
</h3>
<div class="markdown level1 summary"><p>Gets whether this is Projection Angle mode (bits 7-6 = 10).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsProjectionAngleMode { get; }</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_Numerical_NcArgs_NcArgCycle800_IsSolidAngleMode_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.IsSolidAngleMode*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_IsSolidAngleMode" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.IsSolidAngleMode">
IsSolidAngleMode
</h3>
<div class="markdown level1 summary"><p>Gets whether this is Solid Angle mode (bits 7-6 = 01).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsSolidAngleMode { get; }</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_Numerical_NcArgs_NcArgCycle800_MODE_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.MODE*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_MODE" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.MODE">
@@ -363,9 +631,15 @@ Values:
</h3>
<div class="markdown level1 summary"><p>Swivel mode.</p>
<p>Evaluation of angle:
Decimal parameter mode, binary coding.</p>
<div class="markdown level1 summary"><p>Swivel mode - controls angle interpretation.
Binary coded decimal parameter:
Bit 0 (1): 0=new, 1=additive
Bit 1 (2): Reserved
Bit 2 (4): Reserved<br>
Bit 3 (8): 0=solid angles (Euler), 1=RPY angles
Bit 4 (16): 0=direct, 1=indirect
Bit 5 (32): 0=XYZ rotation sequence, 1=ZYX rotation sequence
Bit 6 (64): 0=angle refers to rotary axis, 1=angle refers to workpiece</p>
</div>
<div class="markdown level1 conceptual"></div>
@@ -397,10 +671,10 @@ Decimal parameter mode, binary coding.</p>
</h3>
<div class="markdown level1 summary"><p>Swivel plane.
<div class="markdown level1 summary"><p>Swivel plane mode.
UNITS DIGIT:
0: New
1: Additive</p>
0: New (absolute)
1: Additive (relative to current)</p>
</div>
<div class="markdown level1 conceptual"></div>
@@ -425,6 +699,39 @@ UNITS DIGIT:
<a id="Hi_Numerical_NcArgs_NcArgCycle800_SwivelModeType_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.SwivelModeType*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_SwivelModeType" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.SwivelModeType">
SwivelModeType
</h3>
<div class="markdown level1 summary"><p>Gets the swivel mode type from bits 7-6.
00 = Axis by Axis, 01 = Solid Angle, 10 = Projection Angle, 11 = Direct Rotary Axis</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int SwivelModeType { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="Hi_Numerical_NcArgs_NcArgCycle800_TC_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.TC*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_TC" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.TC">
@@ -432,8 +739,8 @@ UNITS DIGIT:
</h3>
<div class="markdown level1 summary"><p>Name of swivel data record
&ldquo;0&rdquo; Deselection of data record</p>
<div class="markdown level1 summary"><p>Name of swivel data record.
&ldquo;0&rdquo; = Deselection of data record (cancels swivel)</p>
</div>
<div class="markdown level1 conceptual"></div>
@@ -465,7 +772,7 @@ UNITS DIGIT:
</h3>
<div class="markdown level1 summary"><p>Reference point prior to rotation.</p>
<div class="markdown level1 summary"><p>Reference point prior to rotation (absolute coordinates).</p>
</div>
<div class="markdown level1 conceptual"></div>
@@ -497,7 +804,7 @@ UNITS DIGIT:
</h3>
<div class="markdown level1 summary"><p>Zero point after rotation</p>
<div class="markdown level1 summary"><p>Zero point offset after rotation.</p>
</div>
<div class="markdown level1 conceptual"></div>
@@ -522,6 +829,75 @@ UNITS DIGIT:
<h2 class="section" id="methods">Methods
</h2>
<a id="Hi_Numerical_NcArgs_NcArgCycle800_GetTableToFeatureMat4d_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.GetTableToFeatureMat4d*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_GetTableToFeatureMat4d" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.GetTableToFeatureMat4d">
GetTableToFeatureMat4d()
</h3>
<div class="markdown level1 summary"><p>Gets the transformation matrix for this CYCLE800 swivel.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Mat4d GetTableToFeatureMat4d()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.Geom.Mat4d.html">Mat4d</a></dt>
<dd><p>The 4x4 transformation matrix from base to tilted coordinate system.</p>
</dd>
</dl>
<a id="Hi_Numerical_NcArgs_NcArgCycle800_ToString_" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.ToString*"></a>
<h3 id="Hi_Numerical_NcArgs_NcArgCycle800_ToString" data-uid="Hi.Numerical.NcArgs.NcArgCycle800.ToString">
ToString()
</h3>
<div class="markdown level1 summary"><p>Returns a string representation of this CYCLE800 argument.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override string ToString()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
</article>