This repository has been archived on 2026-10-11. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
HiNC-2025-win-desktop-Deploy/App/wwwroot/HiAPI-docsite/api/Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.html
T
2026-09-09 17:35:23 +08:00

709 lines
28 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class FeedPerToothMachiningMotionResolution | HiAPI-C# 2025 </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class FeedPerToothMachiningMotionResolution | HiAPI-C# 2025 ">
<meta name="description" content="Automatic resolution by feed per tooth.">
<link rel="icon" href="../img/HiAPI.favicon.ico">
<link rel="stylesheet" href="../public/docfx.min.css">
<link rel="stylesheet" href="../public/main.css">
<meta name="docfx:navrel" content="../toc.html">
<meta name="docfx:tocrel" content="toc.html">
<meta name="docfx:rel" content="../">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../index.html">
<img id="logo" class="svg" src="../img/HiAPI.logo.png" alt="">
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution">
<h1 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution" class="text-break">
Class FeedPerToothMachiningMotionResolution
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="Hi.html">Hi</a>.<a class="xref" href="Hi.Numerical.html">Numerical</a>.<a class="xref" href="Hi.Numerical.MachiningMotionResolutionUtils.html">MachiningMotionResolutionUtils</a></dd></dl>
<dl><dt>Assembly</dt><dd>HiMech.dll</dd></dl>
</div>
<div class="markdown summary"><p>Automatic resolution by feed per tooth.</p>
</div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class FeedPerToothMachiningMotionResolution : IMachiningMotionResolution, IMakeXmlSource, IToXElement</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">FeedPerToothMachiningMotionResolution</span></div>
</dd>
</dl>
<dl class="typelist implements">
<dt>Implements</dt>
<dd>
<div><a class="xref" href="Hi.Numerical.MachiningMotionResolutionUtils.IMachiningMotionResolution.html">IMachiningMotionResolution</a></div>
<div><a class="xref" href="Hi.Common.XmlUtils.IMakeXmlSource.html">IMakeXmlSource</a></div>
<div><a class="xref" href="Hi.Common.XmlUtils.IToXElement.html">IToXElement</a></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<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">
<dt>Extension Methods</dt>
<dd>
<div>
<a class="xref" href="Hi.Common.DuplicateUtil.html#Hi_Common_DuplicateUtil_TryDuplicate__1___0_System_Object___">DuplicateUtil.TryDuplicate&lt;TSelf&gt;(TSelf, params object[])</a>
</div>
<div>
<a class="xref" href="Hi.Common.InvokeUtil.html#Hi_Common_InvokeUtil_SelfInvoke__1___0_System_Action___0__">InvokeUtil.SelfInvoke&lt;TSrc&gt;(TSrc, Action&lt;TSrc&gt;)</a>
</div>
<div>
<a class="xref" href="Hi.Common.InvokeUtil.html#Hi_Common_InvokeUtil_SelfInvoke__2___0_System_Func___0___1__">InvokeUtil.SelfInvoke&lt;TSrc, TDst&gt;(TSrc, Func&lt;TSrc, TDst&gt;)</a>
</div>
<div>
<a class="xref" href="Hi.Coloring.ColorUtil.html#Hi_Coloring_ColorUtil_GetGloomyColor_System_Object_System_Double_System_Double_">ColorUtil.GetGloomyColor(object, double, double)</a>
</div>
<div>
<a class="xref" href="Hi.Common.NameUtil.html#Hi_Common_NameUtil_GetSelectionName_System_Object_">NameUtil.GetSelectionName(object)</a>
</div>
<div>
<a class="xref" href="Hi.Common.StringUtil.html#Hi_Common_StringUtil_GetPropertyStringIfToStringNotOverloaded_System_Object_System_Boolean_System_Boolean_">StringUtil.GetPropertyStringIfToStringNotOverloaded(object, bool, bool)</a>
</div>
<div>
<a class="xref" href="Hi.Parallels.LockUtil.html#Hi_Parallels_LockUtil_Lock_System_Object_">LockUtil.Lock(object)</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution__ctor_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.#ctor*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution__ctor" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.#ctor">
FeedPerToothMachiningMotionResolution()
</h3>
<div class="markdown level1 summary"><p>Ctor.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public FeedPerToothMachiningMotionResolution()</code></pre>
</div>
<h2 class="section" id="properties">Properties
</h2>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_FluteNum_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.FluteNum*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_FluteNum" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.FluteNum">
FluteNum
</h3>
<div class="markdown level1 summary"><p>Flute count the last <a class="xref" href="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.html#Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_AdjustResolution_System_Int32_System_Double_System_Double_">AdjustResolution(int, double, double)</a> saw.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int FluteNum { 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_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_LinearResolution_mm_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.LinearResolution_mm*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_LinearResolution_mm" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.LinearResolution_mm">
LinearResolution_mm
</h3>
<div class="markdown level1 summary"><p>Linear axis resolution in millimeter.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public double LinearResolution_mm { 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.double">double</a></dt>
<dd></dd>
</dl>
<h4 class="section" id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_LinearResolution_mm_remarks">Remarks</h4>
<div class="markdown level1 remarks"><p>setter is for internal usage</p>
</div>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_RotaryAxisResolution_rad_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.RotaryAxisResolution_rad*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_RotaryAxisResolution_rad" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.RotaryAxisResolution_rad">
RotaryAxisResolution_rad
</h3>
<div class="markdown level1 summary"><p>Resolution in radian for a rotary-axis (A/B/C) swing — the posture
change of the tool. Always finite: a swing is bounded by this angle
whether or not the spindle turns, so a rapid 90° table swing is never
left to a single step.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public double RotaryAxisResolution_rad { 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.double">double</a></dt>
<dd></dd>
</dl>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_RotaryResolution_deg_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.RotaryResolution_deg*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_RotaryResolution_deg" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.RotaryResolution_deg">
RotaryResolution_deg
</h3>
<div class="markdown level1 summary"><p><a class="xref" href="Hi.Numerical.MachiningMotionResolutionUtils.IMachiningMotionResolution.html#Hi_Numerical_MachiningMotionResolutionUtils_IMachiningMotionResolution_RotaryResolution_rad">RotaryResolution_rad</a> in degree.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public double RotaryResolution_deg { 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>
<h4 class="section" id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_RotaryResolution_deg_remarks">Remarks</h4>
<div class="markdown level1 remarks"><p>setter is for internal usage</p>
</div>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_RotaryResolution_rad_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.RotaryResolution_rad*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_RotaryResolution_rad" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.RotaryResolution_rad">
RotaryResolution_rad
</h3>
<div class="markdown level1 summary"><p>Angular resolution in radian for an arc's swept angle (and, on a fixed
resolution, for rotary-axis swings as well — see
<a class="xref" href="Hi.Numerical.MachiningMotionResolutionUtils.IMachiningMotionResolution.html#Hi_Numerical_MachiningMotionResolutionUtils_IMachiningMotionResolution_RotaryAxisResolution_rad">RotaryAxisResolution_rad</a>). A feed-derived resolution
reports infinity here while the spindle turns: an arc is then split by
its length per spindle cycle alone.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public double RotaryResolution_rad { 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.double">double</a></dt>
<dd></dd>
</dl>
<h4 class="section" id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_RotaryResolution_rad_remarks">Remarks</h4>
<div class="markdown level1 remarks"><p>setter is for internal usage</p>
</div>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_SpindleSpeed_radds_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.SpindleSpeed_radds*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_SpindleSpeed_radds" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.SpindleSpeed_radds">
SpindleSpeed_radds
</h3>
<div class="markdown level1 summary"><p>Spindle speed (rad/s) the last <a class="xref" href="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.html#Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_AdjustResolution_System_Int32_System_Double_System_Double_">AdjustResolution(int, double, double)</a> saw.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public double SpindleSpeed_radds { 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.double">double</a></dt>
<dd></dd>
</dl>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_XName_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.XName*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_XName" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.XName">
XName
</h3>
<div class="markdown level1 summary"><p>Name for XML IO.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static string XName { 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.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_AdjustResolution_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.AdjustResolution*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_AdjustResolution_System_Int32_System_Double_System_Double_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.AdjustResolution(System.Int32,System.Double,System.Double)">
AdjustResolution(int, double, double)
</h3>
<div class="markdown level1 summary"><p>Adjusts the resolution based on flute number, feed rate and spindle speed.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void AdjustResolution(int fluteNum, double feedrate_mmds, double spindleSpeed_radds)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>fluteNum</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd><p>Number of flutes in the cutting tool</p>
</dd>
<dt><code>feedrate_mmds</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.double">double</a></dt>
<dd><p>Feed rate in mm per second</p>
</dd>
<dt><code>spindleSpeed_radds</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.double">double</a></dt>
<dd><p>Spindle speed in radians per second</p>
</dd>
</dl>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_GetStepNumByDuration_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.GetStepNumByDuration*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_GetStepNumByDuration_System_TimeSpan_System_Double_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.GetStepNumByDuration(System.TimeSpan,System.Double)">
GetStepNumByDuration(TimeSpan, double)
</h3>
<div class="markdown level1 summary"><p>Step count the time criterion assigns to an act of the given duration,
or null when this resolution has no time criterion — a fixed geometric
resolution, or a feed-derived one while the spindle is not turning.
Feed per cycle means one step per spindle revolution, feed per tooth
one per tooth pass; the value is the revolutions (or tooth passes) the
act spans, scaled by the resolution's own knobs.</p>
<p>
This is the criterion a rotary-bearing act uses instead of
"tool-tip travel ÷ <a class="xref" href="Hi.Numerical.MachiningMotionResolutionUtils.IMachiningMotionResolution.html#Hi_Numerical_MachiningMotionResolutionUtils_IMachiningMotionResolution_LinearResolution_mm">LinearResolution_mm</a>". The linear
resolution is derived from the controller's commanded CL feedrate, but
the real tool tip (the equipped tool, possibly not the length the
controller's H describes) travels with the posture change while that
CL point may stand still; dividing the one by the other mixes two
motions, and for a pure RTCP rapid swing it saturated the step count
to <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32.maxvalue">MaxValue</a> (a customer program, 2026-09-08). Counting spindle
cycles over the act's duration is the same number whenever tip and CL
point coincide, and the honest one when they do not.
</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int? GetStepNumByDuration(TimeSpan duration, double travel_mm)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>duration</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.timespan">TimeSpan</a></dt>
<dd><p>The act's duration.</p>
</dd>
<dt><code>travel_mm</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.double">double</a></dt>
<dd><p>The real tool-tip travel of the act in mm, or
NaN when unknown; a resolution with a user floor on per-step travel
caps the count so a step never covers less than that floor.</p>
</dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>?</dt>
<dd></dd>
</dl>
<h4 class="section" id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_GetStepNumByDuration_System_TimeSpan_System_Double__remarks">Remarks</h4>
<div class="markdown level1 remarks"><p>One step per tooth pass (revolutions × flutes) over the act;
null while the spindle is not turning, the flute count is unknown or the act has no duration.</p>
</div>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_MakeXmlSource_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.MakeXmlSource*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_MakeXmlSource_System_String_System_String_System_Boolean_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.MakeXmlSource(System.String,System.String,System.Boolean)">
MakeXmlSource(string, string, bool)
</h3>
<div class="markdown level1 summary"><p>Creates an XML representation of the object.
This method may also generate additional resources such as related files.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public XElement MakeXmlSource(string baseDirectory, string relFile, bool exhibitionOnly)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>baseDirectory</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd><p>The base directory for resolving relative paths</p>
</dd>
<dt><code>relFile</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd><p>The relative file path for the XML source</p>
</dd>
<dt><code>exhibitionOnly</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd><p>if true, the extended file creation is suppressed.</p>
</dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.xml.linq.xelement">XElement</a></dt>
<dd><p>An XML element representing the object's state</p>
</dd>
</dl>
<h4 class="section" id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_MakeXmlSource_System_String_System_String_System_Boolean__remarks">Remarks</h4>
<div class="markdown level1 remarks"><p>For the demand of easy moving source folder (especially project folder) without configuration file path corruption, the relative file path is applied.
The <code class="paramref">baseDirectory</code> is typically the folder at the nearest configuration file folder.
Since the folder can be moving with the configuration file.</p>
</div>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_Reg_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.Reg*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_Reg_Hi_Common_XmlUtils_XFactory_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.Reg(Hi.Common.XmlUtils.XFactory)">
Reg(XFactory)
</h3>
<div class="markdown level1 summary"><p>Registers this type's deserializer with the given <a class="xref" href="Hi.Common.XmlUtils.XFactory.html">XFactory</a>
and chains <code>Reg(factory)</code> on dependents. Idempotent.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static void Reg(XFactory factory = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>factory</code> <a class="xref" href="Hi.Common.XmlUtils.XFactory.html">XFactory</a></dt>
<dd></dd>
</dl>
<a id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_ToXElement_" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.ToXElement*"></a>
<h3 id="Hi_Numerical_MachiningMotionResolutionUtils_FeedPerToothMachiningMotionResolution_ToXElement" data-uid="Hi.Numerical.MachiningMotionResolutionUtils.FeedPerToothMachiningMotionResolution.ToXElement">
ToXElement()
</h3>
<div class="markdown level1 summary"><p>Get the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.xml.linq.xelement">XElement</a> to represent the object.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public XElement ToXElement()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.xml.linq.xelement">XElement</a></dt>
<dd><p><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.xml.linq.xelement">XElement</a> to represent the object.</p>
</dd>
</dl>
</article>
<div class="contribution d-print-none">
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<span> Copyright © 2025 <a href='https://superhightech.com.tw'>Tech Coordinate</a>. All rights reserved. <a href='https://superhightech.com.tw'>超級高科技股份有限公司</a> © 2025 版權所有 </span>
</div>
</div>
</footer>
</body>
</html>