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/anatomy/execution/execution-extended-renderingcanvas-tool-bar.html
T
2026-09-12 18:16:27 +08:00

171 lines
11 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Execution Extended RenderingCanvas Tool Bar | HiAPI-C# 2025 </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Execution Extended RenderingCanvas Tool Bar | 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="Anatomy-ExecutionExtendedToolBar">
<h1 id="execution-extended-renderingcanvas-tool-bar">Execution Extended RenderingCanvas Tool Bar</h1>
<p>The run-specific half of the canvas header on the <a href="index.html">Execution Page</a>: what the scene shows, and how the tool path is drawn. The generic view controls live next to it on the <a class="xref" href="../widget/renderingcanvas-tool-bar.html">RenderingCanvas Tool Bar</a>.</p>
<p>The model of the tool bar is <a class="xref" href="../../api/Hi.Disp.DispEngine.html">DispEngine</a>, assigned from the RenderingCanvas of the <a href="index.html">Execution Page</a>. The content of <a class="xref" href="../../api/Hi.Disp.DispEngine.html#Hi_Disp_DispEngine_Displayee">Displayee</a> here is the project displayee, whose key content is <a class="xref" href="../../api/Hi.MachiningProcs.MachiningProject.html">MachiningProject</a>.</p>
<h2 id="layout">Layout</h2>
<ul>
<li><code>Execution Extended RenderingCanvas Tool Bar</code>
<ul>
<li><p><code>Tool Path</code> — shows or hides the CL strip.</p>
</li>
<li><p><code>Path Points</code> — the CL-strip dot markers. Editable only while <a class="xref" href="../../api/Hi.MachiningProcs.RenderingFlag.html#Hi_MachiningProcs_RenderingFlag_ClStrip">ClStrip</a> is set in the displayee's rendering-flag bit array.</p>
</li>
<li><p><code>Scene ▾</code> — <a class="xref" href="../../api/Hi.MachiningProcs.RenderingFlag.html">RenderingFlag</a>-based checkboxes over that same bit array, in three groups:</p>
<ul>
<li><strong>Solid</strong> — Machine, Tool, Workpiece, Fixture</li>
<li><strong>Coordinate</strong> — Program Zero, ISO Coordinate, Heidenhain Coordinate</li>
<li><strong>Display Aids</strong> — Dimension Bar, Color Scale Bar</li>
</ul>
<p>The ClStrip flag is not offered here; the <code>Tool Path</code> button owns it. Heidenhain Coordinate appears only when <a class="xref" href="../../api/Hi.MachiningProcs.MachiningProject.html">MachiningProject</a>.<a class="xref" href="../../api/Hi.MachiningProcs.MachiningProject.html#Hi_MachiningProcs_MachiningProject_NcEnv">NcEnv</a>.<a class="xref" href="../../api/Hi.Numerical.HardNcEnv.html#Hi_Numerical_HardNcEnv_CncBrand">CncBrand</a> is <a class="xref" href="../../api/Hi.Numerical.CncBrand.html#Hi_Numerical_CncBrand_Heidenhain">Heidenhain</a> — the tool bar reads that value through <code>GET /api/Controller/cnc-brand</code>, and the Execution displayee applies the same test before it draws the Heidenhain coordinate, so the row is offered exactly when the scene can show it. Mind which brand that is: the legacy HardNcEnv model's, loaded with the project, not the runner brand chosen on the General Setup page's Controller branch — switching the runner to Heidenhain does not reveal the row. Since the Legacy Controller page was removed on 2026-09-11 no screen writes the value: it comes from the project's <code>NcEnv</code> element, or from the still-mounted REST face — the <code>PUT</code> half of the same route, or a whole-model swap through <code>POST /api/Controller/update</code>. The menu is a shared component because other canvases use it too — see the <a class="xref" href="../widget/renderingcanvas-tool-bar.html">RenderingCanvas Tool Bar</a>.</p>
</li>
<li><p><code>Meshed Geom ▾</code> — the workpiece's rendering cache and geometry-diff settings: the <a class="xref" href="graphic-cache-menu.html">Graphic-Cache SubMenu</a> and Diff Visual Radius, with a <code>Diff</code> badge when a difference is present.</p>
</li>
</ul>
</li>
</ul>
<p><strong>Fit View is not on this tool bar.</strong> It moved to the strip-chart group bar, which is where the whole-program time axis it fits against lives; see <a href="strip-charts.html">Strip Charts</a>.</p>
<h2 id="shipped-default-flags">Shipped Default Flags</h2>
<p>The displayee opens with four bits set — <code>DimensionBar</code>, <code>WorkpieceGeom</code>, <code>Fixture</code> and <code>ClStrip</code> — so a page that has just loaded draws the workpiece, the fixture, the dimension bar and the tool path, and draws neither the machine nor the tool until the operator ticks them. <code>Mech</code> is present in the initializer as a commented-out line rather than absent, so the default is a decision rather than an omission: a machine at its home view fills the frame and hides the cut. The flags live on the displayee, not in the project, so they are session state and every new rendering session starts from this set.</p>
<div class="TIP">
<h5>Tip</h5>
<p>The checkboxes in the <code>Scene ▾</code> menu are grouped by the category of <a class="xref" href="../../api/Hi.MachiningProcs.RenderingFlag.html">RenderingFlag</a> — follow the link for the categories.</p>
</div>
<h2 id="behavior-of-the-tool-path-buttons">Behavior of the Tool-Path Buttons</h2>
<p>Apply the displayee's rendering-flag bit array to set the project rendering items.</p>
<div class="TIP">
<h5>Tip</h5>
<p>Extract the <a class="xref" href="../../api/Hi.MachiningProcs.MachiningProject.html">MachiningProject</a> from the project displayee and use it to drive the behaviors.</p>
</div>
<h2 id="behavior-of-the-scene-menu">Behavior of the <code>Scene</code> Menu</h2>
<p>See the <code>DemoRenderingMachiningProcessAndStripPosSelection</code> sample in the <a class="xref" href="../../technique/api-foundations/packages-and-samples.html">Hi.Sample.Wpf repository</a> for code that completes the behavior of the buttons.</p>
<h2 id="source-code-path">Source Code Path</h2>
<p>See <a class="xref" href="../index.html">HiNC App Anatomy</a> for git repository links.</p>
<p>HiNC-2025-webservice (Quasar CLI SPA):</p>
<ul>
<li><code>wwwroot-src/src/components/execution/ExecutionExtendedToolBar.vue</code> — the tool bar itself.</li>
<li><code>wwwroot-src/src/components/widgets/DisplayOptionsMenu.vue</code> — the shared <code>Scene ▾</code> menu.</li>
<li><code>wwwroot-src/src/components/preference/GraphicCacheMenu.vue</code> — the Graphic Cache entry under <code>Meshed Geom ▾</code>.</li>
<li><code>Execution/ExecutionController.cs</code> — <code>GET /api/Execution/cl-strip-dots</code> and <code>POST /api/Execution/update-cl-strip-dots</code>.</li>
<li><code>Common/RenderingFlagsController.cs</code> — the rendering-flag reads and writes behind the <code>Scene ▾</code> checkboxes.</li>
</ul>
<h2 id="see-also">See Also</h2>
<ul>
<li><a href="index.html">Execution Page</a> — the page whose canvas this tool bar decorates</li>
<li><a class="xref" href="../widget/renderingcanvas-tool-bar.html">RenderingCanvas Tool Bar</a> — the generic view controls beside it</li>
<li><a href="strip-charts.html">Strip Charts</a> — where Fit View now lives</li>
<li><a href="../../manual/run/watching-the-run.html">Watching the Run</a> — the task these controls serve, and what the canvas draws by default</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>