This commit is contained in:
2025-07-25 16:27:29 +08:00
parent 38b27cd481
commit b5cad3c171
1114 changed files with 68009 additions and 23981 deletions
@@ -102,7 +102,7 @@ Class Workpiece
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class Workpiece : IDisplayee, IExpandToBox3d, IDisposable, IGetRootAnchor, IGetAnchoredDisplayeeList, IAnchoredCollidableLeaf, IAnchoredCollidableNode, IAnchoredCollidableBased, ICollidable, IGetCuttingPara, IMakeXmlSource</code></pre>
<pre><code class="lang-csharp hljs">public class Workpiece : IDisplayee, IExpandToBox3d, IDisposable, IGetAnchor, IGetTopoIndex, IGetAnchoredDisplayeeList, IAnchoredCollidableLeaf, IAnchoredCollidableNode, IAnchoredCollidableBased, ICollidable, IGetCuttingPara, IMakeXmlSource</code></pre>
</div>
@@ -122,7 +122,8 @@ Class Workpiece
<div><a class="xref" href="Hi.Disp.IDisplayee.html">IDisplayee</a></div>
<div><a class="xref" href="Hi.Geom.IExpandToBox3d.html">IExpandToBox3d</a></div>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a></div>
<div><a class="xref" href="Hi.Mech.Topo.IGetRootAnchor.html">IGetRootAnchor</a></div>
<div><a class="xref" href="Hi.Mech.Topo.IGetAnchor.html">IGetAnchor</a></div>
<div><a class="xref" href="Hi.Mech.Topo.IGetTopoIndex.html">IGetTopoIndex</a></div>
<div><a class="xref" href="Hi.Mech.Topo.IGetAnchoredDisplayeeList.html">IGetAnchoredDisplayeeList</a></div>
<div><a class="xref" href="Hi.Collision.IAnchoredCollidableLeaf.html">IAnchoredCollidableLeaf</a></div>
<div><a class="xref" href="Hi.Collision.IAnchoredCollidableNode.html">IAnchoredCollidableNode</a></div>
@@ -166,6 +167,15 @@ Class Workpiece
<div>
<a class="xref" href="Hi.Collision.CollisionUtil.html#Hi_Collision_CollisionUtil_Detect_Hi_Collision_ICollidable_Hi_Collision_ICollidable_Hi_Geom_Mat4d_System_Double_System_Int32_">CollisionUtil.Detect(ICollidable, ICollidable, Mat4d, double, int)</a>
</div>
<div>
<a class="xref" href="Hi.Disp.DispUtil.html#Hi_Disp_DispUtil_Display_Hi_Disp_IDisplayee_Hi_Disp_Bind_Hi_Geom_Mat4d_">DispUtil.Display(IDisplayee, Bind, Mat4d)</a>
</div>
<div>
<a class="xref" href="Hi.Mech.Topo.TopoUtil.html#Hi_Mech_Topo_TopoUtil_Display_Hi_Mech_Topo_IGetAnchor_Hi_Disp_Bind_System_Collections_Generic_Dictionary_Hi_Mech_Topo_Anchor_Hi_Geom_Mat4d__">TopoUtil.Display(IGetAnchor, Bind, Dictionary&lt;Anchor, Mat4d&gt;)</a>
</div>
<div>
<a class="xref" href="Hi.Mech.Topo.TopoUtil.html#Hi_Mech_Topo_TopoUtil_ExpandToBox3d_Hi_Mech_Topo_IGetAnchor_Hi_Geom_Box3d_System_Collections_Generic_Dictionary_Hi_Mech_Topo_Anchor_Hi_Geom_Mat4d__">TopoUtil.ExpandToBox3d(IGetAnchor, Box3d, Dictionary&lt;Anchor, Mat4d&gt;)</a>
</div>
<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>
@@ -395,6 +405,103 @@ Class Workpiece
<a id="Hi_NcMech_Workpieces_Workpiece_CuttingPara_" data-uid="Hi.NcMech.Workpieces.Workpiece.CuttingPara*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_CuttingPara" data-uid="Hi.NcMech.Workpieces.Workpiece.CuttingPara">
CuttingPara
</h3>
<div class="markdown level1 summary"><p>Milling parameters.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ICuttingPara CuttingPara { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.MillingForces.Fittings.ICuttingPara.html">ICuttingPara</a></dt>
<dd></dd>
</dl>
<a id="Hi_NcMech_Workpieces_Workpiece_CuttingParaFile_" data-uid="Hi.NcMech.Workpieces.Workpiece.CuttingParaFile*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_CuttingParaFile" data-uid="Hi.NcMech.Workpieces.Workpiece.CuttingParaFile">
CuttingParaFile
</h3>
<div class="markdown level1 summary"><p>File path for milling parameters.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string CuttingParaFile { 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>
<a id="Hi_NcMech_Workpieces_Workpiece_DiffAttachmentBag_" data-uid="Hi.NcMech.Workpieces.Workpiece.DiffAttachmentBag*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_DiffAttachmentBag" data-uid="Hi.NcMech.Workpieces.Workpiece.DiffAttachmentBag">
DiffAttachmentBag
</h3>
<div class="markdown level1 summary"><p>transient object.
For Internal Use.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ConcurrentBag&lt;DiffAttachment&gt; DiffAttachmentBag { 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.collections.concurrent.concurrentbag-1">ConcurrentBag</a>&lt;<a class="xref" href="Hi.Cbtr.DiffAttachment.html">DiffAttachment</a>&gt;</dt>
<dd></dd>
</dl>
<a id="Hi_NcMech_Workpieces_Workpiece_DiffRangeColorRule_" data-uid="Hi.NcMech.Workpieces.Workpiece.DiffRangeColorRule*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_DiffRangeColorRule" data-uid="Hi.NcMech.Workpieces.Workpiece.DiffRangeColorRule">
@@ -619,19 +726,20 @@ Class Workpiece
<a id="Hi_NcMech_Workpieces_Workpiece_IdealGeomFaceDrawing_" data-uid="Hi.NcMech.Workpieces.Workpiece.IdealGeomFaceDrawing*"></a>
<a id="Hi_NcMech_Workpieces_Workpiece_IdealSolid_" data-uid="Hi.NcMech.Workpieces.Workpiece.IdealSolid*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_IdealGeomFaceDrawing" data-uid="Hi.NcMech.Workpieces.Workpiece.IdealGeomFaceDrawing">
IdealGeomFaceDrawing
<h3 id="Hi_NcMech_Workpieces_Workpiece_IdealSolid" data-uid="Hi.NcMech.Workpieces.Workpiece.IdealSolid">
IdealSolid
</h3>
<div class="markdown level1 summary"><p>Gets the drawing representing the ideal geometry faces of the workpiece.</p>
<div class="markdown level1 summary"><p>Gets the drawing representing the ideal geometry faces of the workpiece.
The derived solid from <a class="xref" href="Hi.NcMech.Workpieces.Workpiece.html#Hi_NcMech_Workpieces_Workpiece_IdealGeom">IdealGeom</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Drawing IdealGeomFaceDrawing { get; }</code></pre>
<pre><code class="lang-csharp hljs">public Solid IdealSolid { get; }</code></pre>
</div>
@@ -640,7 +748,7 @@ Class Workpiece
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.Disp.Drawing.html">Drawing</a></dt>
<dt><a class="xref" href="Hi.NcMech.Solids.Solid.html">Solid</a></dt>
<dd></dd>
</dl>
@@ -715,6 +823,38 @@ Class Workpiece
<a id="Hi_NcMech_Workpieces_Workpiece_InitSolid_" data-uid="Hi.NcMech.Workpieces.Workpiece.InitSolid*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_InitSolid" data-uid="Hi.NcMech.Workpieces.Workpiece.InitSolid">
InitSolid
</h3>
<div class="markdown level1 summary"><p>The derived solid from <a class="xref" href="Hi.NcMech.Workpieces.Workpiece.html#Hi_NcMech_Workpieces_Workpiece_InitGeom">InitGeom</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Solid InitSolid { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.NcMech.Solids.Solid.html">Solid</a></dt>
<dd></dd>
</dl>
<a id="Hi_NcMech_Workpieces_Workpiece_IsRuntimeGeomInit_" data-uid="Hi.NcMech.Workpieces.Workpiece.IsRuntimeGeomInit*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_IsRuntimeGeomInit" data-uid="Hi.NcMech.Workpieces.Workpiece.IsRuntimeGeomInit">
@@ -747,70 +887,6 @@ Class Workpiece
<a id="Hi_NcMech_Workpieces_Workpiece_MillingPara_" data-uid="Hi.NcMech.Workpieces.Workpiece.MillingPara*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_MillingPara" data-uid="Hi.NcMech.Workpieces.Workpiece.MillingPara">
MillingPara
</h3>
<div class="markdown level1 summary"><p>Milling parameters.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ICuttingPara MillingPara { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.MillingForces.Fittings.ICuttingPara.html">ICuttingPara</a></dt>
<dd></dd>
</dl>
<a id="Hi_NcMech_Workpieces_Workpiece_MillingParaFile_" data-uid="Hi.NcMech.Workpieces.Workpiece.MillingParaFile*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_MillingParaFile" data-uid="Hi.NcMech.Workpieces.Workpiece.MillingParaFile">
MillingParaFile
</h3>
<div class="markdown level1 summary"><p>File path for milling parameters.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string MillingParaFile { 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>
<a id="Hi_NcMech_Workpieces_Workpiece_ProgramZeroAnchor_" data-uid="Hi.NcMech.Workpieces.Workpiece.ProgramZeroAnchor*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_ProgramZeroAnchor" data-uid="Hi.NcMech.Workpieces.Workpiece.ProgramZeroAnchor">
@@ -843,38 +919,6 @@ Class Workpiece
<a id="Hi_NcMech_Workpieces_Workpiece_RawGeomDrawing_" data-uid="Hi.NcMech.Workpieces.Workpiece.RawGeomDrawing*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_RawGeomDrawing" data-uid="Hi.NcMech.Workpieces.Workpiece.RawGeomDrawing">
RawGeomDrawing
</h3>
<div class="markdown level1 summary"><p>Gets the drawing representing the raw geometry of the workpiece.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Drawing RawGeomDrawing { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.Disp.Drawing.html">Drawing</a></dt>
<dd></dd>
</dl>
<a id="Hi_NcMech_Workpieces_Workpiece_WorkpieceGeomToFixtureBuckleBranch_" data-uid="Hi.NcMech.Workpieces.Workpiece.WorkpieceGeomToFixtureBuckleBranch*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_WorkpieceGeomToFixtureBuckleBranch" data-uid="Hi.NcMech.Workpieces.Workpiece.WorkpieceGeomToFixtureBuckleBranch">
@@ -1321,6 +1365,39 @@ This function is usually used to compute the bounding box of elements.</p>
<a id="Hi_NcMech_Workpieces_Workpiece_GetAnchor_" data-uid="Hi.NcMech.Workpieces.Workpiece.GetAnchor*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_GetAnchor" data-uid="Hi.NcMech.Workpieces.Workpiece.GetAnchor">
GetAnchor()
</h3>
<div class="markdown level1 summary"><p>Get key anchor. (i.e. root anchor)</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Anchor GetAnchor()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.Mech.Topo.Anchor.html">Anchor</a></dt>
<dd><p>key anchor</p>
</dd>
</dl>
<a id="Hi_NcMech_Workpieces_Workpiece_GetAnchoredCollidableNode_" data-uid="Hi.NcMech.Workpieces.Workpiece.GetAnchoredCollidableNode*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_GetAnchoredCollidableNode" data-uid="Hi.NcMech.Workpieces.Workpiece.GetAnchoredCollidableNode">
@@ -1486,39 +1563,6 @@ This function is usually used to compute the bounding box of elements.</p>
<a id="Hi_NcMech_Workpieces_Workpiece_GetRootAnchor_" data-uid="Hi.NcMech.Workpieces.Workpiece.GetRootAnchor*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_GetRootAnchor" data-uid="Hi.NcMech.Workpieces.Workpiece.GetRootAnchor">
GetRootAnchor()
</h3>
<div class="markdown level1 summary"><p>Get root anchor.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Anchor GetRootAnchor()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.Mech.Topo.Anchor.html">Anchor</a></dt>
<dd><p>root anchor.</p>
</dd>
</dl>
<a id="Hi_NcMech_Workpieces_Workpiece_GetRuntimeGeom_" data-uid="Hi.NcMech.Workpieces.Workpiece.GetRuntimeGeom*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_GetRuntimeGeom_System_Threading_CancellationToken_System_IProgress_Hi_Common_NativeProgresses_IProgressReport__" data-uid="Hi.NcMech.Workpieces.Workpiece.GetRuntimeGeom(System.Threading.CancellationToken,System.IProgress{Hi.Common.NativeProgresses.IProgressReport})">
@@ -1563,8 +1607,8 @@ This function is usually used to compute the bounding box of elements.</p>
<a id="Hi_NcMech_Workpieces_Workpiece_MakeXmlSource_" data-uid="Hi.NcMech.Workpieces.Workpiece.MakeXmlSource*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_MakeXmlSource_System_String_System_String_" data-uid="Hi.NcMech.Workpieces.Workpiece.MakeXmlSource(System.String,System.String)">
MakeXmlSource(string, string)
<h3 id="Hi_NcMech_Workpieces_Workpiece_MakeXmlSource_System_String_System_String_System_Boolean_" data-uid="Hi.NcMech.Workpieces.Workpiece.MakeXmlSource(System.String,System.String,System.Boolean)">
MakeXmlSource(string, string, bool)
</h3>
@@ -1574,7 +1618,7 @@ This method may also generate additional resources such as related files.</p>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public XElement MakeXmlSource(string baseDirectory, string relFile)</code></pre>
<pre><code class="lang-csharp hljs">public XElement MakeXmlSource(string baseDirectory, string relFile, bool exhibitionOnly)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -1584,6 +1628,9 @@ This method may also generate additional resources such as related files.</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>
@@ -1600,6 +1647,11 @@ This method may also generate additional resources such as related files.</p>
<h4 class="section" id="Hi_NcMech_Workpieces_Workpiece_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>
@@ -1670,6 +1722,37 @@ This method may also generate additional resources such as related files.</p>
<a id="Hi_NcMech_Workpieces_Workpiece_SetRuntimeGeom_" data-uid="Hi.NcMech.Workpieces.Workpiece.SetRuntimeGeom*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_SetRuntimeGeom_Hi_Cbtr_CubeTree_" data-uid="Hi.NcMech.Workpieces.Workpiece.SetRuntimeGeom(Hi.Cbtr.CubeTree)">
SetRuntimeGeom(CubeTree)
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void SetRuntimeGeom(CubeTree runtimeGeom_)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>runtimeGeom_</code> <a class="xref" href="Hi.Cbtr.CubeTree.html">CubeTree</a></dt>
<dd></dd>
</dl>
<a id="Hi_NcMech_Workpieces_Workpiece_WriteRuntimeGeom_" data-uid="Hi.NcMech.Workpieces.Workpiece.WriteRuntimeGeom*"></a>
<h3 id="Hi_NcMech_Workpieces_Workpiece_WriteRuntimeGeom_System_String_System_Threading_CancellationToken_System_Progress_Hi_Common_NativeProgresses_IProgressReport__" data-uid="Hi.NcMech.Workpieces.Workpiece.WriteRuntimeGeom(System.String,System.Threading.CancellationToken,System.Progress{Hi.Common.NativeProgresses.IProgressReport})">