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/manual/setup/workpiece.html
T
2026-09-09 17:35:23 +08:00

214 lines
12 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Workpiece | HiAPI-C# 2025 </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Workpiece | HiAPI-C# 2025 ">
<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="">
<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="">
<h1 id="workpiece">Workpiece</h1>
<p>The workpiece is the stock the machine cuts. Setting it up means giving it the shape it starts as
and the shape it should end as, placing it in the machine, choosing how finely it is meshed, and
saying what it is made of.</p>
<h2 id="where-it-is">Where it is</h2>
<p>The General Setup page, at <code>/general-setup</code>, reached from the menu bar's <strong>Page</strong> dropdown. Select
the <strong>Workpiece</strong> branch of the Control Tree (<code>/general-setup?tree=equipment/workpiece</code>). Whichever
node you select opens its editor below the tree in the same dock, and the canvas beside them draws
the workpiece in the shared equipment scene.</p>
<p>A project carries its workpiece with it, so there is nothing to load: the branch root has no load or
save button, and every part of the workpiece is edited through one of its child items. Those children
appear once a project with a workpiece is open; until then the root shows a summary and a caption
asking for a project to be opened or created first — see <a href="../basics/projects.html">Projects</a>.
Attaching it to the machine is the anchor task below.</p>
<p>The branch with the root selected, at <code>/general-setup?tree=equipment/workpiece</code>. The root itself has
no editor — the caption in the middle column says so — while the canvas draws the stock sitting on
its fixture, with the workpiece's two anchors labelled at the corner they are placed on.</p>
<p><img src="workpiece-img/workpiece-in-scene.en.png" alt="The Workpiece branch selected, its stock drawn on the fixture in the equipment scene"></p>
<h2 id="the-two-shapes">The two shapes</h2>
<p>Selecting <strong>Raw Geometry</strong> or <strong>Target Geometry</strong> opens the same <strong>Geometry type</strong> kind picker the
fixture's geometry slot carries — see <a href="fixture.html">Fixture</a> — over a different list of kinds for
each slot.</p>
<table>
<thead>
<tr>
<th>Slot</th>
<th>What it is</th>
<th>Kinds offered</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Raw Geometry</strong><br><code>equipment/workpiece/raw-geometry</code></td>
<td>The stock as it arrives, before the first cut. This is what the run removes material from.</td>
<td><code>Box3d</code>, <code>Cylindroid</code>, <code>StlFile</code>, <code>TransformationGeom</code>, <code>GeomCombination</code>, <code>MeshedGeomFile</code></td>
</tr>
<tr>
<td><strong>Target Geometry</strong><br><code>equipment/workpiece/target-geometry</code></td>
<td>The finished part. The cut result is compared against it when a <a class="xref" href="../../workflows/geometry-validation.html">geometry difference</a> is run after the program.</td>
<td><code>Box3d</code>, <code>Cylindroid</code>, <code>StlFile</code>, <code>TransformationGeom</code></td>
</tr>
</tbody>
</table>
<p><code>MeshedGeomFile</code> is a shape already meshed into a voxel cube-tree, stored as a <code>.wct</code> file. The
target must produce a surface mesh to be compared against, so that kind is not offered there.</p>
<p><strong>A new project has a workpiece but no raw geometry.</strong> Creating one leaves the Raw Geometry slot
empty, so picking a kind there is the first thing this branch needs — until it is done there is
nothing for a run to remove material from. The Target Geometry slot is optional: it is what a
geometry comparison after the run measures against, and a run without one still cuts.</p>
<h2 id="where-it-sits">Where it sits</h2>
<p><strong>Anchor</strong> (<code>equipment/workpiece/anchor</code>) holds the two transforms that place the workpiece.
<strong>Geom To Fixture</strong> (<code>.../anchor/geom-to-fixture</code>) puts the workpiece geometry on the fixture's
workpiece buckle — one of the four named <a class="xref" href="../../technique/mechanism/assembly-anchors.html">assembly anchors</a> the
scene is built on — or, on a project carrying no fixture, straight onto the machine's table buckle.
<strong>Geom To Program Zero</strong> (<code>.../anchor/geom-to-program-zero</code>) places the program zero, the NC origin,
relative to that geometry. Setting them is <a href="anchor.html">Anchor</a>; which direction to align program
zero in — and why that depends on planning a new job versus reproducing a recorded one — is
<a href="program-zero-alignment.html">Program Zero Alignment</a>.</p>
<h2 id="mesh-and-material">Mesh and material</h2>
<p><strong>Mesh</strong> (<code>equipment/workpiece/runtime</code>) carries one field, <strong>Initial Resolution</strong> in mm, chosen
from a fixed powers-of-two ladder running from 0.0009765625 to 16. The panel's hint is that a
smaller resolution means a finer voxel grid and a slower run; what the number actually is and how to
pick it are <a class="xref" href="../../technique/simulation-performance/mesh-resolution.html">Mesh Resolution</a>. It seeds the run's machining
resolution when the project is opened.</p>
<div class="IMPORTANT">
<h5>Important</h5>
<p>Keep the stored value on that ladder. The dropdown only offers ladder values, but a project
arriving from an older generation, a script or a migration can carry something else — 0.4 mm is
the one seen most often. Such a value is not a compromise between two rungs: the run rounds it to
the next finer rung and uses that, so 0.4 mm builds the same 0.25 mm mesh at the same cost while
the project reads as though it were coarser. Set it to the width it actually builds. The number
then means what it says, here and in the Machining Resolution mission row that mirrors it.</p>
</div>
<p><strong>Material</strong> (<code>equipment/workpiece/material</code>) holds two references to pre-prepared files. Each is a
file row whose <strong>Select</strong> dropdown offers <strong>Browse Resource&hellip;</strong> and nothing else — unlike the
coolant row beside it, these two do not offer a plain <strong>Browse&hellip;</strong>, so the picker always opens in
the shipped resource library, already in that resource's own folder. Loading one fills the read-only
<strong>Name</strong> and <strong>Note</strong> below it.</p>
<p><strong>Workpiece Material</strong> selected on a demo project, at
<code>/general-setup?tree=equipment/workpiece/material/workpiece-material</code>. The file row holds the
material the project already carries, and the <strong>Name</strong> below it reads the name out of that file
while the <strong>Note</strong> is empty — both are read-only, because they belong to the file rather than to the
project.</p>
<p><img src="workpiece-img/workpiece-material.en.png" alt="The Workpiece Material item of the Control Tree selected, its panel showing a Select dropdown beside a file path reading Al6061T6.WorkpieceMaterial, a read-only Name field reading Al6061T6 and an empty read-only Note field"></p>
<ul>
<li><strong>Workpiece Material</strong> (<code>.../material/workpiece-material</code>) — a <code>.WorkpieceMaterial</code> file: the
physical properties the cutting-force physics reads.</li>
<li><strong>Cutting Parameter</strong> (<code>.../material/cutting-parameter</code>) — an <code>.mp</code> file: the milling-force
coefficients for that material. One file serves the whole run, whichever cutters it uses.</li>
</ul>
<h2 id="see-also">See Also</h2>
<ul>
<li><a href="anchor.html">Anchor</a> — the two transforms above, and the order to place the machine, fixture and workpiece in</li>
<li><a href="program-zero-alignment.html">Program Zero Alignment</a> — which way to align the program origin once the workpiece is placed</li>
<li><a href="fixture.html">Fixture</a> — what holds this workpiece on the table, and the buckle its Geom To Fixture transform lands on</li>
<li><a class="xref" href="../../technique/simulation-performance/mesh-resolution.html">Mesh Resolution</a> — how to choose the Initial Resolution, and the thin wall a coarse mesh loses entirely</li>
<li><a class="xref" href="../../workflows/force-training.html">Milling Force Parameter Training</a> — where a cutting-parameter file comes from when no shipped one fits</li>
<li><a href="index.html">Setup</a> — the rest of the pre-simulation configuration</li>
</ul>
</article>
<div class="contribution d-print-none">
</div>
<div class="next-article d-print-none border-top" id="nextArticle"></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>