tune
This commit is contained in:
+2
-9
@@ -90,8 +90,7 @@
|
||||
<p>This guide provides detailed implementation information for creating your own <code>RenderingCanvas</code> using the <a class="xref" href="../../../../../api/Hi.Disp.DispEngine.html">DispEngine</a>. By understanding these implementation details, you can customize the rendering component for specific application needs or create implementations for other UI frameworks.</p>
|
||||
<div class="NOTE">
|
||||
<h5>Note</h5>
|
||||
<p><strong>For Windows Applications</strong>: If you are developing for Windows systems, it is recommended to directly use the existing <code>RenderingCanvas</code> implementations in the <code>Hi.WinForm</code> or <code>Hi.Wpf</code> packages, rather than creating your own. These implementations are fully tested, optimized, and maintained.
|
||||
<strong>For Webapi Applications</strong>: Using <code>Hi.Webapi</code>.</p>
|
||||
<p><strong>For Windows Applications</strong>: If you are developing for Windows systems, it is recommended to directly use the existing <code>RenderingCanvas</code> implementations in the <code>Hi.WinForm</code> or <code>Hi.Wpf</code> packages, rather than creating your own. These implementations are fully tested, optimized, and maintained.</p>
|
||||
<p>The implementation details provided in this document are primarily for educational purposes or for developers who need to port RenderingCanvas to other platforms/frameworks.</p>
|
||||
</div>
|
||||
<h2 id="basic-dispengine-usage">Basic DispEngine Usage</h2>
|
||||
@@ -458,8 +457,7 @@ public RenderingCanvas()
|
||||
Content = DisplayerPane;
|
||||
}
|
||||
</code></pre><h3 id="rendering-pipeline-1">Rendering Pipeline</h3>
|
||||
<pre><code class="lang-csharp" name="RenderingCanvas">private byte[] PreImageBgra { get; set; }
|
||||
/// <summary>
|
||||
<pre><code class="lang-csharp" name="RenderingCanvas">/// <summary>
|
||||
/// Handles the buffer swapped event from DispEngine
|
||||
/// </summary>
|
||||
private unsafe void RenderingCanvas_BufferSwapped(byte* data, int w, int h)
|
||||
@@ -467,12 +465,7 @@ private unsafe void RenderingCanvas_BufferSwapped(byte* data, int w, int h)
|
||||
if (data == null)
|
||||
return;
|
||||
|
||||
//since the treatment is different from Razor version,
|
||||
//the image checking mechanism cannot be set in DispEngine.
|
||||
Span<byte> bgra = new Span<byte>(data, w * h * 4);
|
||||
if (PreImageBgra != null && bgra.SequenceEqual(PreImageBgra))
|
||||
return;
|
||||
PreImageBgra = bgra.ToArray();
|
||||
|
||||
// Copy pixel data from DispEngine
|
||||
int n = w * h * 4;
|
||||
|
||||
@@ -93,7 +93,6 @@
|
||||
<ul>
|
||||
<li><code>Hi.WinForm</code> for Windows Forms applications</li>
|
||||
<li><code>Hi.Wpf</code> for WPF applications</li>
|
||||
<li><code>Hi.Webapi</code> for Webapi applications</li>
|
||||
</ul>
|
||||
<p>All implementations share a common architecture centered around the <a class="xref" href="../../../../../api/Hi.Disp.DispEngine.html">DispEngine</a> class, enabling consistent rendering and interaction across platforms.</p>
|
||||
<h2 id="core-concept-dispengine-and-idisplayee">Core Concept: DispEngine and IDisplayee</h2>
|
||||
@@ -174,8 +173,6 @@ canvas.DispEngine.Displayee = displayee;
|
||||
// Add to a container
|
||||
myGrid.Children.Add(canvas);
|
||||
</code></pre>
|
||||
<h2 id="apply-hiwebapi">Apply Hi.Webapi</h2>
|
||||
<p>See <a href="webapi-rendering-canvas.html">Using Rendering Canvas By Hi.Webapi</a>.</p>
|
||||
<h2 id="switching-displayees-at-runtime">Switching Displayees at Runtime</h2>
|
||||
<p>You can dynamically change what's being displayed:</p>
|
||||
<pre><code class="lang-csharp">// Switch to a different displayee
|
||||
|
||||
@@ -228,6 +228,7 @@ See Rendering Items SubMenu from <a href="../player/player-extended-renderingcan
|
||||
<li>X, Y, Z coordinate values</li>
|
||||
<li>Action buttons to set the entry to program zero or machine zero</li>
|
||||
</ul>
|
||||
<p>Row selection updates <a class="xref" href="../../../../api/Hi.Numerical.IsoCoordinateEntryDisplayee.html#Hi_Numerical_IsoCoordinateEntryDisplayee_IsoCoordinateId">IsoCoordinateId</a> through <xref:HiNC_2025_webapi.Common.ProjectDisplayeeService.MachiningProjectDisplayee>.</p>
|
||||
<h3 id="datum-preset-and-shift-tables-heidenhain">Datum Preset and Shift Tables (Heidenhain)</h3>
|
||||
<p>These tables are specific to <a class="xref" href="../../../../api/Hi.Numerical.CncBrand.html#Hi_Numerical_CncBrand_Heidenhain">Heidenhain</a> controllers and provide interfaces for:</p>
|
||||
<ul>
|
||||
@@ -278,9 +279,23 @@ See Rendering Items SubMenu from <a href="../player/player-extended-renderingcan
|
||||
</ul>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/controller/controller-panel.js</li>
|
||||
<li>wwwroot/controller/controller-extended-toolbar.js</li>
|
||||
<li>Controller/Controller/ControllerController.cs</li>
|
||||
<li>Controller/ControllerController.cs - Backend API controller</li>
|
||||
<li>wwwroot/controller/controller-panel.html - Main HTML structure</li>
|
||||
<li>wwwroot/controller/controller-panel.js - Main Vue.js component</li>
|
||||
<li>wwwroot/controller/controller-panel.css - Main styling</li>
|
||||
<li>wwwroot/controller/controller-extended-toolbar.js - Extended toolbar Vue.js component</li>
|
||||
<li>wwwroot/controller/controller-extended-toolbar.css - Toolbar styling</li>
|
||||
<li>wwwroot/controller/tabs/*.js - Individual tab components:
|
||||
<ul>
|
||||
<li>coordinate-table-tab.js</li>
|
||||
<li>datum-preset-tab.js</li>
|
||||
<li>datum-shift-tab.js</li>
|
||||
<li>offset-table-tab.js</li>
|
||||
<li>machine-tab.js</li>
|
||||
<li>brand-tab.js</li>
|
||||
<li>config-tab.js</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
+273
@@ -0,0 +1,273 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Controller Page Web Implementation | HiAPI-C# 2025 </title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="title" content="Controller Page Web Implementation | 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 "{query}"">
|
||||
<meta name="loc:searchNoResults" content="No results for "{query}"">
|
||||
<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="controller-page-web-implementation">Controller Page Web Implementation</h1>
|
||||
|
||||
<p>This document describes the web implementation of the Controller Page in the HiNC-2025-webapi project.</p>
|
||||
<h2 id="overview">Overview</h2>
|
||||
<p>The Controller Page web implementation consists of:</p>
|
||||
<ul>
|
||||
<li>Backend API controller (<code>ControllerController.cs</code>)</li>
|
||||
<li>Frontend HTML, JavaScript, and CSS files</li>
|
||||
<li>Integration with the rendering canvas and toolbar components</li>
|
||||
</ul>
|
||||
<h2 id="backend-implementation">Backend Implementation</h2>
|
||||
<h3 id="controllercontrollercs">ControllerController.cs</h3>
|
||||
<p>Located at <code>Controller/ControllerController.cs</code>, this API controller provides endpoints for managing CNC controller settings:</p>
|
||||
<h4 id="endpoints">Endpoints</h4>
|
||||
<ul>
|
||||
<li><code>GET /api/controller/cnc-brand</code> - Gets the current CNC brand</li>
|
||||
<li><code>PUT /api/controller/cnc-brand</code> - Updates the CNC brand</li>
|
||||
<li><code>GET /api/controller/machine-config</code> - Gets machine configuration</li>
|
||||
<li><code>PUT /api/controller/machine-config</code> - Updates machine configuration</li>
|
||||
<li><code>GET /api/controller/general-config</code> - Gets general configuration settings</li>
|
||||
<li><code>PUT /api/controller/general-config</code> - Updates general configuration</li>
|
||||
<li><code>GET /api/controller/iso-coordinate-table</code> - Gets the ISO coordinate table</li>
|
||||
<li><code>PUT /api/controller/iso-coordinate-table/{index}</code> - Updates an ISO coordinate entry</li>
|
||||
<li><code>GET /api/controller/heidenhain-datum-preset-table</code> - Gets the Heidenhain datum preset table</li>
|
||||
<li><code>PUT /api/controller/heidenhain-datum-preset-table/{index}</code> - Updates a Heidenhain datum preset entry</li>
|
||||
<li><code>GET /api/controller/heidenhain-datum-shift-table</code> - Gets the Heidenhain datum shift table</li>
|
||||
<li><code>PUT /api/controller/heidenhain-datum-shift-table/{index}</code> - Updates a Heidenhain datum shift entry</li>
|
||||
<li><code>GET /api/controller/milling-tool-offset-table</code> - Gets the milling tool offset table</li>
|
||||
<li><code>PUT /api/controller/milling-tool-offset-table</code> - Updates the milling tool offset table</li>
|
||||
<li><code>GET /api/controller/ideal-offset-dependent</code> - Gets the ideal offset dependent setting</li>
|
||||
<li><code>PUT /api/controller/ideal-offset-dependent</code> - Updates the ideal offset dependent setting</li>
|
||||
<li><code>POST /api/controller/set-ideal-offset-from-toolhouse</code> - Sets ideal offset based on tool house</li>
|
||||
<li><code>POST /api/controller/initialize-display</code> - Initializes the display engine for rendering</li>
|
||||
</ul>
|
||||
<h2 id="frontend-implementation">Frontend Implementation</h2>
|
||||
<h3 id="html-structure">HTML Structure</h3>
|
||||
<p>The main HTML file (<code>wwwroot/controller/controller-panel.html</code>) contains:</p>
|
||||
<ul>
|
||||
<li>Management panel with tabs for different configuration sections</li>
|
||||
<li>Viewer panel with rendering canvas for 3D visualization</li>
|
||||
<li>Responsive layout with resizable panels</li>
|
||||
</ul>
|
||||
<h3 id="javascript-components">JavaScript Components</h3>
|
||||
<p>The frontend uses Vue.js framework with ES modules for component-based architecture.</p>
|
||||
<h4 id="controller-paneljs">controller-panel.js</h4>
|
||||
<p>Main Vue.js component that orchestrates the controller page:</p>
|
||||
<ul>
|
||||
<li>Imports and registers all sub-components (tabs, toolbars, rendering canvas)</li>
|
||||
<li>Manages global state (CNC brand, rendering connection)</li>
|
||||
<li>Handles tab switching and dynamic component loading</li>
|
||||
<li>Initializes display engine and rendering connections</li>
|
||||
</ul>
|
||||
<p>Key features:</p>
|
||||
<ul>
|
||||
<li>Component-based architecture using Vue.js</li>
|
||||
<li>Dynamic tab components loaded from separate files</li>
|
||||
<li>Brand-specific UI updates (showing/hiding Heidenhain tabs)</li>
|
||||
<li>Integration with rendering canvas and toolbars</li>
|
||||
</ul>
|
||||
<h4 id="tab-components">Tab Components</h4>
|
||||
<p>Each configuration tab is implemented as a separate Vue.js component:</p>
|
||||
<ul>
|
||||
<li><code>coordinate-table-tab.js</code> - ISO coordinate table management</li>
|
||||
<li><code>datum-preset-tab.js</code> - Heidenhain datum preset table (brand-specific)</li>
|
||||
<li><code>datum-shift-tab.js</code> - Heidenhain datum shift table (brand-specific)</li>
|
||||
<li><code>offset-table-tab.js</code> - Tool offset table with ideal offset settings</li>
|
||||
<li><code>machine-tab.js</code> - Machine configuration with axis limits (degrees for rotary axes)</li>
|
||||
<li><code>brand-tab.js</code> - CNC brand selection</li>
|
||||
<li><code>config-tab.js</code> - General configuration settings</li>
|
||||
</ul>
|
||||
<h4 id="controller-extended-toolbarjs">controller-extended-toolbar.js</h4>
|
||||
<p>Vue.js component for the extended toolbar that provides:</p>
|
||||
<ul>
|
||||
<li>Rendering flags dropdown menu (similar to WPF's RenderingFlagSubmenu)</li>
|
||||
<li>Controller-specific rendering options (Machine, Coordinates, ISO, Datum, etc.)</li>
|
||||
<li>Brand-aware rendering flags (Heidenhain-specific options)</li>
|
||||
<li>Integration with display engine for real-time updates</li>
|
||||
</ul>
|
||||
<h3 id="css-styling">CSS Styling</h3>
|
||||
<p>Two CSS files provide styling:</p>
|
||||
<ul>
|
||||
<li><code>controller-panel.css</code> - Main panel layout and component styles
|
||||
<ul>
|
||||
<li>Two-column responsive layout using flexbox</li>
|
||||
<li>Tab navigation and content styling</li>
|
||||
<li>Form controls with special handling for checkboxes</li>
|
||||
<li>Overrides global styles for proper checkbox display</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><code>controller-extended-toolbar.css</code> - Toolbar-specific styles
|
||||
<ul>
|
||||
<li>Dropdown menu styling</li>
|
||||
<li>Button and icon styling</li>
|
||||
<li>Consistent with player toolbar design</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2 id="integration-points">Integration Points</h2>
|
||||
<h3 id="with-main-application">With Main Application</h3>
|
||||
<p>The controller page is integrated into the main application through:</p>
|
||||
<ul>
|
||||
<li>Navigation menu in <code>index.html</code></li>
|
||||
<li>Route handling in <code>main.js</code></li>
|
||||
<li>Iframe embedding for isolated functionality</li>
|
||||
</ul>
|
||||
<h3 id="with-project-service">With Project Service</h3>
|
||||
<p>The controller utilizes the <code>IProjectService</code> to:</p>
|
||||
<ul>
|
||||
<li>Access the current <a class="xref" href="../../../../api/Hi.MachiningProcs.MachiningProject.html">MachiningProject</a></li>
|
||||
<li>Retrieve and update <a class="xref" href="../../../../api/Hi.Numerical.NcEnv.html">NcEnv</a> settings</li>
|
||||
<li>Save changes to the project</li>
|
||||
</ul>
|
||||
<h3 id="with-rendering-engine">With Rendering Engine</h3>
|
||||
<p>The controller page integrates with:</p>
|
||||
<ul>
|
||||
<li><a class="xref" href="../../../../api/Hi.Disp.DispEngine.html">DispEngine</a> for 3D visualization</li>
|
||||
<li><a class="xref" href="../../../../api/Hi.MachiningProcs.MachiningProjectDisplayee.html">MachiningProjectDisplayee</a> for rendering project data</li>
|
||||
<li>Custom rendering flags for controller-specific visualizations</li>
|
||||
</ul>
|
||||
<h2 id="key-differences-from-wpf-implementation">Key Differences from WPF Implementation</h2>
|
||||
<ol>
|
||||
<li><strong>Asynchronous Operations</strong>: All data operations are asynchronous using fetch API</li>
|
||||
<li><strong>Component Architecture</strong>: Vue.js components instead of WPF UserControls</li>
|
||||
<li><strong>Web-based Rendering</strong>: Uses WebGL-based rendering canvas instead of WPF controls</li>
|
||||
<li><strong>Responsive Design</strong>: Two-column layout with CSS flexbox for better screen utilization</li>
|
||||
<li><strong>Unit Conversion</strong>: Frontend handles degree/radian conversion for rotary axes</li>
|
||||
<li><strong>Granular API</strong>: Split NcEnv into multiple focused endpoints instead of single large DTO</li>
|
||||
<li><strong>Toolbar Integration</strong>: Reuses rendering flag patterns from player section</li>
|
||||
</ol>
|
||||
<h2 id="implementation-details">Implementation Details</h2>
|
||||
<h3 id="data-transfer-objects-dtos">Data Transfer Objects (DTOs)</h3>
|
||||
<p>The backend uses several DTOs to simplify complex object serialization:</p>
|
||||
<ul>
|
||||
<li><code>IsoCoordinateTableEntry</code> - For ISO coordinate table entries</li>
|
||||
<li><code>DatumTableEntry</code> - For Heidenhain datum tables</li>
|
||||
<li><code>MachineConfigDto</code> - For machine configuration settings</li>
|
||||
<li><code>GeneralConfigDto</code> - For general configuration settings</li>
|
||||
</ul>
|
||||
<h3 id="unit-handling">Unit Handling</h3>
|
||||
<ul>
|
||||
<li>Backend stores rotary axis values in radians (following HiAPI conventions)</li>
|
||||
<li>Frontend displays and accepts input in degrees for user-friendliness</li>
|
||||
<li>Conversion happens in the Vue.js components (<code>radToDeg</code> and <code>degToRad</code> functions)</li>
|
||||
</ul>
|
||||
<h3 id="rendering-flag-management">Rendering Flag Management</h3>
|
||||
<p>The controller uses specific rendering flags for visualization:</p>
|
||||
<ul>
|
||||
<li>Flag indices follow the <code>RenderingFlag</code> enum structure</li>
|
||||
<li>Controller-specific flags include: Coordinate, HeidenhainDatumPreset, HeidenhainDatumShift, Stock, AxisLimits</li>
|
||||
<li>Flags are synchronized between frontend state and display engine</li>
|
||||
</ul>
|
||||
<h2 id="future-enhancements">Future Enhancements</h2>
|
||||
<ul>
|
||||
<li>Implement ObjectManagementMenuButton component for file management</li>
|
||||
<li>Add undo/redo functionality</li>
|
||||
<li>Implement keyboard shortcuts</li>
|
||||
<li>Add client-side validation for numeric inputs</li>
|
||||
<li>Implement batch updates for better performance</li>
|
||||
<li>Add tooltips for configuration options</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>
|
||||
@@ -129,6 +129,8 @@ catch (Exception ex)
|
||||
<p>Dispose the <a class="xref" href="../../../api/Hi.Common.LooseRunner.html">LooseRunner</a> on owner disposing to ensure the tryrun action is well-managed.</p>
|
||||
<h2 id="gui-file-path-assignment">GUI File Path Assignment</h2>
|
||||
<p>See <a href="widget/gui-file-path-assignment.html">GUI File Path Assignment</a>.</p>
|
||||
<h2 id="numeric-inputoutput-handling">Numeric Input/Output Handling</h2>
|
||||
<p>For handling floating-point values in web forms, use the utilities in <code>numeric-utils.js</code> which properly manages special values like Infinity, -Infinity, and NaN. This ensures consistent display formatting and parsing across the application, preventing JSON serialization issues. See <a href="widget/numeric-io-utilities.html">Numeric Input/Output Utilities</a> for implementation details.</p>
|
||||
<h2 id="translation-remarks">Translation Remarks</h2>
|
||||
<p>See <a href="translation-remarks.html">Translation Remarks</a>.</p>
|
||||
|
||||
|
||||
@@ -92,6 +92,7 @@
|
||||
<p>The source code of HiNC-2025-win-desktop project is at the git repository:</p>
|
||||
<p><a href="https://superhightech-gitea.webredirect.org/HiNC-Deploy/HiNC-2025-win-desktop.git">https://superhightech-gitea.webredirect.org/HiNC-Deploy/HiNC-2025-win-desktop.git</a></p>
|
||||
<h2 id="web-page-application-source-code">Web Page Application Source Code</h2>
|
||||
<p>HiNC-2025-webapi apply vue.</p>
|
||||
<p>The source code of HiNC-2025-webapi project is at the git repository:</p>
|
||||
<p><a href="https://superhightech-gitea.webredirect.org/HiNC-Deploy/HiNC-2025-webapi.git">https://superhightech-gitea.webredirect.org/HiNC-Deploy/HiNC-2025-webapi.git</a></p>
|
||||
<h2 id="step-by-step-program-construction-check-list">Step by Step Program Construction Check List</h2>
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
<li>Key Model
|
||||
<ul>
|
||||
<li>WPF Single-User Desktop Application: Self-hosted <a class="xref" href="../../../api/Hi.MachiningProcs.LocalProjectService.html">LocalProjectService</a></li>
|
||||
<li>Web Page Application: Service inherits from <a class="xref" href="../../../api/Hi.MachiningProcs.IPathedMachiningProjectHost.html">IPathedMachiningProjectHost</a></li>
|
||||
<li>Web Page Application: Service inherits from <xref:Hi.MachiningProcs.IPathedMachiningProjectHost></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Other Model: <a class="xref" href="../../../api/Hi.HiNcKits.AppService.html">AppService</a></li>
|
||||
@@ -130,7 +130,15 @@ Open <a href="mission/index.html">Mission Page</a></li>
|
||||
Link to <a href="player/index.html">Player Panel</a>
|
||||
(Not exist on WPF app.)</li>
|
||||
<li>Player Belonged Tool Bars. See <a href="player/index.html">Player Panel</a>. Shows only if the Main Panel content is Player Panel.</li>
|
||||
<li><a href="preference/index.html">Preference Menu Dropdown</a></li>
|
||||
<li><a href="preference/index.html">Preference Menu Dropdown</a>
|
||||
<ul>
|
||||
<li>Log MenuItem
|
||||
Open Log Viewer to display application logs for the current day.
|
||||
The Log Viewer provides real-time access to system logs with filtering and download capabilities.
|
||||
It reads log files from the server's log directory and presents them in a formatted, searchable interface.
|
||||
Users can refresh the log content or download the current day's log file for offline analysis.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Central <code>Page Panel</code></li>
|
||||
@@ -170,9 +178,11 @@ Read document of <a class="xref" href="../../../api/Hi.Common.Messages.MessageKi
|
||||
</ul>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>Controllers/PreferenceController.cs</li>
|
||||
<li>wwwroot/main.js</li>
|
||||
<li>Environments/PreferenceController.cs</li>
|
||||
<li>Environments/ProjectController.cs</li>
|
||||
<li>wwwroot/app.js</li>
|
||||
<li>wwwroot/index.html</li>
|
||||
<li>wwwroot/preference/log-viewer.js</li>
|
||||
</ul>
|
||||
<h3 id="web-page-application-specification-1">Web Page Application Specification</h3>
|
||||
<p>The page and URL are bi-directional.</p>
|
||||
|
||||
@@ -90,7 +90,7 @@
|
||||
<p>The page triggers by <a href="../main-panel.html">Main Panel</a>.</p>
|
||||
<p>The key model is <a class="xref" href="../../../../api/Hi.NcMech.Fixtures.Fixture.html">Fixture</a> and <a class="xref" href="../../../../api/Hi.NcMech.Fixtures.FixtureEditorDisplayeeConfig.html">FixtureEditorDisplayeeConfig</a>.
|
||||
Fixture is assigned from the Main Panel's <a class="xref" href="../../../../api/Hi.MachiningProcs.MachiningProject.html">MachiningProject</a>.<a class="xref" href="../../../../api/Hi.MachiningProcs.MachiningProject.html#Hi_MachiningProcs_MachiningProject_MachiningEquipment">MachiningEquipment</a>.<a class="xref" href="../../../../api/Hi.Machining.MachiningEquipmentUtils.MachiningEquipment.html#Hi_Machining_MachiningEquipmentUtils_MachiningEquipment_Fixture">Fixture</a>.</p>
|
||||
<p><a class="xref" href="../../../../api/Hi.NcMech.Fixtures.FixtureEditorDisplayeeConfig.html">FixtureEditorDisplayeeConfig</a> is from <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html">UserEnv</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a> which assigned from the parent component.</p>
|
||||
<p><a class="xref" href="../../../../api/Hi.NcMech.Fixtures.FixtureEditorDisplayeeConfig.html">FixtureEditorDisplayeeConfig</a> is from <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html">AppService</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a> which assigned from the parent component.</p>
|
||||
<h2 id="layout">Layout</h2>
|
||||
<ul>
|
||||
<li>Fixture Page
|
||||
|
||||
@@ -90,7 +90,7 @@
|
||||
<p>The page triggers by <a href="../main-panel.html">Main Panel</a>.</p>
|
||||
<p>The key model is <a class="xref" href="../../../../api/Hi.NcMech.Workpieces.Workpiece.html">Workpiece</a> and <a class="xref" href="../../../../api/Hi.NcMech.Workpieces.WorkpieceEditorDisplayeeConfig.html">WorkpieceEditorDisplayeeConfig</a>.
|
||||
Which is assigned from the Main Panel's <a class="xref" href="../../../../api/Hi.MachiningProcs.MachiningProject.html">MachiningProject</a>.<a class="xref" href="../../../../api/Hi.MachiningProcs.MachiningProject.html#Hi_MachiningProcs_MachiningProject_Workpiece">Workpiece</a>.</p>
|
||||
<p><a class="xref" href="../../../../api/Hi.NcMech.Fixtures.FixtureEditorDisplayeeConfig.html">FixtureEditorDisplayeeConfig</a> is from <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html">UserEnv</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a> which assigned from the parent component.</p>
|
||||
<p><a class="xref" href="../../../../api/Hi.NcMech.Fixtures.FixtureEditorDisplayeeConfig.html">FixtureEditorDisplayeeConfig</a> is from <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html">AppService</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a> which assigned from the parent component.</p>
|
||||
<h2 id="layout">Layout</h2>
|
||||
<ul>
|
||||
<li>Workpiece Page
|
||||
@@ -165,7 +165,7 @@ Apply <a href="../geom/runtime-geom-panel.html">Runtime Geometry Panel</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Material Tab
|
||||
Visible if <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html">UserEnv</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html#Hi_HiNcKits_UserEnv_EnablePhysics">EnablePhysics</a> is true.
|
||||
Visible if <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html">AppService</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html#Hi_HiNcKits_AppService_EnablePhysics">EnablePhysics</a> is true.
|
||||
<ul>
|
||||
<li>Workpiece Material File Selector
|
||||
<ul>
|
||||
|
||||
@@ -209,11 +209,19 @@ The boxes are draggable for re-order.
|
||||
</div>
|
||||
<h2 id="features">Features</h2>
|
||||
<p>Update the Title Label if the Command is updated by the Command Content Panel.</p>
|
||||
<h2 id="wpf-application-source-code-path">WPF Application Source Code Path</h2>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>Mission/ListCommandPanel</li>
|
||||
</ul>
|
||||
<p>see <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/mission/panels/list-command-panel.html (Component HTML)</li>
|
||||
<li>wwwroot/mission/panels/list-command-panel.css (Component styles)</li>
|
||||
<li>wwwroot/mission/panels/list-command-panel.js (JavaScript component with full ListCommand logic)</li>
|
||||
<li>Controller/MissionController.cs (REST API - ListCommand CRUD operations)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
|
||||
+43
-47
@@ -2,18 +2,18 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Using Rendering Canvas By Hi.Webapi | HiAPI-C# 2025 </title>
|
||||
<title>NcCodeCommand Panel | HiAPI-C# 2025 </title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="title" content="Using Rendering Canvas By Hi.Webapi | HiAPI-C# 2025 ">
|
||||
<meta name="title" content="NcCodeCommand Panel | 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">
|
||||
<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="docfx:rel" content="../../../../">
|
||||
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
<meta name="loc:copy" content="Copy">
|
||||
<meta name="loc:downloadPdf" content="Download PDF">
|
||||
|
||||
<script type="module" src="./../../../../../public/docfx.min.js"></script>
|
||||
<script type="module" src="./../../../../public/docfx.min.js"></script>
|
||||
|
||||
<script>
|
||||
const theme = localStorage.getItem('theme') || 'auto'
|
||||
@@ -43,8 +43,8 @@
|
||||
<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 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">
|
||||
@@ -85,56 +85,52 @@
|
||||
</div>
|
||||
|
||||
<article data-uid="">
|
||||
<h1 id="using-rendering-canvas-by-hiwebapi">Using Rendering Canvas By Hi.Webapi</h1>
|
||||
<h1 id="nccodecommand-panel">NcCodeCommand Panel</h1>
|
||||
|
||||
<p>Hi.Webapi git repo:</p>
|
||||
<p>The Rendering Canvas implementation is located on the Hi.Webapi project (See<a href="../../../index.html">HiAPI Overview</a> to get git repository):</p>
|
||||
<p>The key model is <a class="xref" href="../../../../api/Hi.ShellCommands.NcCodeCommand.html">NcCodeCommand</a>.</p>
|
||||
<h2 id="layout">Layout</h2>
|
||||
<ul>
|
||||
<li>wwwroot/disp/rendering-canvas.js
|
||||
<li>Head Line
|
||||
<ul>
|
||||
<li>Pure js implementation.</li>
|
||||
<li>NC Code Label</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>wwwroot/disp/rendering-canvas-vue.js
|
||||
<li>NC Code Editor Area
|
||||
<ul>
|
||||
<li>vue implementation.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>wwwroot/disp/rendering-canvas.css</li>
|
||||
</ul>
|
||||
<h2 id="usage-demonstration-by-hisamplewebapi-project">Usage Demonstration by Hi.Sample.Webapi Project</h2>
|
||||
<p>The usage is illustrated by the sample code in Hi.Sample.Webapi project (See<a href="../../../index.html">HiAPI Overview</a> to get git repository).</p>
|
||||
<p>The project applies Hi.Webapi nuget package (See<a href="../../../index.html">HiAPI Overview</a> to get git repository).</p>
|
||||
<p>Following pathes are based on the Hi.Sample.Webapi project.</p>
|
||||
<ul>
|
||||
<li>A sample GUI to controll the rendering view
|
||||
<ul>
|
||||
<li>wwwroot/disp/rendering-canvas-view-dropdown.js</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Set Rendering Content (<a class="xref" href="../../../../../api/Hi.Disp.IDisplayee.html">IDisplayee</a>) to the Rendering Canvas
|
||||
<ul>
|
||||
<li>Controllers/RenderingController.cs</li>
|
||||
<li>The model is <xref:Hi.ShellCommands.NcCodeCommand.NcCode>.</li>
|
||||
<li>Multi-line text editor for NC code input</li>
|
||||
<li>Monospace font for better code readability</li>
|
||||
<li>Line numbers display (optional)</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2 id="component-usage">Component Usage</h2>
|
||||
<h2 id="features">Features</h2>
|
||||
<ul>
|
||||
<li>wwwroot/demo.html
|
||||
<ul>
|
||||
<li>apply rendering-canvas.js from Hi.Webapi package.</li>
|
||||
<li>Direct NC code input without file</li>
|
||||
<li>Syntax highlighting for NC code (optional)</li>
|
||||
<li>Real-time validation (optional)</li>
|
||||
<li>Code statistics (line count, character count)</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>wwwroot/demo-vue.html
|
||||
<div class="TIP">
|
||||
<h5>Tip</h5>
|
||||
<p>The NC Code editor should expand to fill available space in the panel.</p>
|
||||
</div>
|
||||
<div class="NOTE">
|
||||
<h5>Note</h5>
|
||||
<p>Unlike NcFileCommand, this command stores the NC code directly in memory.</p>
|
||||
</div>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>apply rendering-canvas-vue.js from Hi.Webapi package.</li>
|
||||
<li>Mission/NcCodeCommandPanel</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>wwwroot/demo-plain-inline.html
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>Hard code implementation without re-using js file.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>wwwroot/mission/panels/nccode-command-panel.html (Component HTML)</li>
|
||||
<li>wwwroot/mission/panels/nccode-command-panel.css (Component styles)</li>
|
||||
<li>wwwroot/mission/panels/nccode-command-panel.js (JavaScript component)</li>
|
||||
<li>Controller/MissionController.cs (REST API - NcCode command endpoints)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
+10
-2
@@ -139,11 +139,19 @@ Auto-Save the file if the content changed.
|
||||
<p>Fix the height of NC Code TextArea to the panel bottom.
|
||||
Set NC Code TextArea height resizable.</p>
|
||||
</div>
|
||||
<h2 id="wpf-application-source-code-path">WPF Application Source Code Path</h2>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>Mission/NcFileCommandPanel</li>
|
||||
</ul>
|
||||
<p>see <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/mission/panels/ncfile-command-panel.html (Component HTML)</li>
|
||||
<li>wwwroot/mission/panels/ncfile-command-panel.css (Component styles)</li>
|
||||
<li>wwwroot/mission/panels/ncfile-command-panel.js (JavaScript component)</li>
|
||||
<li>Controller/MissionController.cs (REST API - NcFile command endpoints)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
|
||||
@@ -204,11 +204,19 @@
|
||||
<h5>Tip</h5>
|
||||
<p>Use XmlConvert.ToDouble and FromDouble to parse the <code>double</code> value for dealing with the inf value.</p>
|
||||
</div>
|
||||
<h2 id="wpf-application-source-code-path">WPF Application Source Code Path</h2>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>NcOpt/NcOptOptionPanel</li>
|
||||
</ul>
|
||||
<p>see <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/mission/panels/ncoptoption-command-panel.html (Component HTML)</li>
|
||||
<li>wwwroot/mission/panels/ncoptoption-command-panel.css (Component styles)</li>
|
||||
<li>wwwroot/mission/panels/ncoptoption-command-panel.js (JavaScript component)</li>
|
||||
<li>Controller/MissionController.cs (REST API - NcOptOption command endpoints)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
|
||||
+10
-2
@@ -174,11 +174,19 @@ Visible if <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html">Ap
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2 id="wpf-application-source-code-path">WPF Application Source Code Path</h2>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>Mission/PostExecutionCommandPanel</li>
|
||||
</ul>
|
||||
<p>see <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/mission/panels/postexecution-command-panel.html (Component HTML)</li>
|
||||
<li>wwwroot/mission/panels/postexecution-command-panel.css (Component styles)</li>
|
||||
<li>wwwroot/mission/panels/postexecution-command-panel.js (JavaScript component)</li>
|
||||
<li>Controller/MissionController.cs (REST API - PostExecution command endpoints)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
|
||||
+10
-2
@@ -172,11 +172,19 @@ If <a class="xref" href="../../../../api/Hi.ShellCommands.PreSettingCommand.html
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2 id="wpf-application-source-code-path">WPF Application Source Code Path</h2>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>Mission/PreSettingCommandPanel</li>
|
||||
</ul>
|
||||
<p>see <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/mission/panels/presetting-command-panel.html (Component HTML)</li>
|
||||
<li>wwwroot/mission/panels/presetting-command-panel.css (Component styles)</li>
|
||||
<li>wwwroot/mission/panels/presetting-command-panel.js (JavaScript component)</li>
|
||||
<li>Controller/MissionController.cs (REST API - PreSetting command endpoints)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
|
||||
@@ -140,12 +140,20 @@
|
||||
</ol>
|
||||
</li>
|
||||
</ol>
|
||||
<h2 id="wpf-application-source-code-path">WPF Application Source Code Path</h2>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>Mission/MissionWindow</li>
|
||||
<li>Mission/MissionPanel</li>
|
||||
</ul>
|
||||
<p>see <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/mission/mission-panel.html (Main panel HTML)</li>
|
||||
<li>wwwroot/mission/mission-panel.css (Styles)</li>
|
||||
<li>wwwroot/mission/mission-panel.js (JavaScript component)</li>
|
||||
<li>Controller/MissionController.cs (REST API endpoints)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
|
||||
+10
-2
@@ -102,11 +102,19 @@
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2 id="wpf-application-source-code-path">WPF Application Source Code Path</h2>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>Mission/ScriptCommandPanel</li>
|
||||
</ul>
|
||||
<p>see <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/mission/panels/script-command-panel.html (Component HTML)</li>
|
||||
<li>wwwroot/mission/panels/script-command-panel.css (Component styles)</li>
|
||||
<li>wwwroot/mission/panels/script-command-panel.js (JavaScript component with Ace.js integration)</li>
|
||||
<li>Controller/MissionController.cs (REST API - Script command endpoints)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
|
||||
@@ -137,7 +137,14 @@
|
||||
<h3 id="webapi-application-source-code-path">Webapi Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/player/player-panel.js</li>
|
||||
<li>Controller/Player/PlayerController.cs</li>
|
||||
<li>wwwroot/player/player-panel.html</li>
|
||||
<li>Players/PlayerController.cs</li>
|
||||
<li>Players/PlayerStatusHub.cs</li>
|
||||
<li>Players/PlayerStatusService.cs</li>
|
||||
<li>Players/SessionMessageHub.cs</li>
|
||||
<li>Players/SessionMessageService.cs</li>
|
||||
<li>Players/SelectedStepInfoHub.cs</li>
|
||||
<li>Players/SelectedStepInfoService.cs</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
+2
-2
@@ -126,8 +126,8 @@ Create the submenu component class since the other GUI component also use it. Se
|
||||
</ul>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/player-extended-toolbar.js</li>
|
||||
<li>Controller/Player/PlayerController.cs</li>
|
||||
<li>wwwroot/player/player-extended-toolbar.js</li>
|
||||
<li>Players/PlayerController.cs</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
@@ -113,7 +113,9 @@
|
||||
<li>Pause</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Add and remove the event to the <a class="xref" href="../../../../api/Hi.MachiningProcs.MachiningProject.html#Hi_MachiningProcs_MachiningProject_PacePlayer">PacePlayer</a> on <code>Player Tool Bar</code> initialization and finalization. The events update the <code>Status Text Field</code>.</li>
|
||||
<li>Both webapi and win-desktop applications use <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html">LocalProjectService</a> events for monitoring <a class="xref" href="../../../../api/Hi.MachiningProcs.MachiningProject.html#Hi_MachiningProcs_MachiningProject_PacePlayer">PacePlayer</a> status changes.</li>
|
||||
<li>In webapi applications, the <code>PlayerStatusService</code> subscribes to these <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html">LocalProjectService</a> events and broadcasts status changes via <code>PlayerStatusHub</code> using SignalR for real-time communication.</li>
|
||||
<li>Win-desktop applications can directly subscribe to <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html">LocalProjectService</a> events for status updates.</li>
|
||||
<li>Alter the background color of the <code>Status Text Field</code> if the status changed.
|
||||
<ul>
|
||||
<li>Warning style color
|
||||
@@ -155,8 +157,12 @@
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/player/player-tool-bar.js</li>
|
||||
<li>Controller/Player/PlayerController.cs</li>
|
||||
<li>Players/PlayerController.cs</li>
|
||||
<li>Players/PlayerStatusHub.cs</li>
|
||||
<li>Players/PlayerStatusService.cs</li>
|
||||
</ul>
|
||||
<h4 id="signalr-implementation-webapi-only">SignalR Implementation (Webapi Only)</h4>
|
||||
<p><code>PlayerStatusHub</code> provides real-time player status updates, with methods <code>GetPlayerStatus()</code> and event <code>PlayerStatusUpdated</code>. <code>PlayerStatusService</code> monitors <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html">LocalProjectService</a> events (<a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html#Hi_MachiningProcs_LocalProjectService_PacePlayer_IsRunningChangedEvent">PacePlayer_IsRunningChangedEvent</a>, <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html#Hi_MachiningProcs_LocalProjectService_PacePlayer_IsLockedChangedEvent">PacePlayer_IsLockedChangedEvent</a>, <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html#Hi_MachiningProcs_LocalProjectService_PacePlayer_IsFinishedChangedEvent">PacePlayer_IsFinishedChangedEvent</a>, <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html#Hi_MachiningProcs_LocalProjectService_PacePlayer_ResetedEvent">PacePlayer_ResetedEvent</a>) and broadcasts changes via SignalR. The JavaScript component connects to <code>/playerStatusHub</code> and listens for status updates. API endpoints include <code>/api/player/start</code>, <code>/api/player/pause</code>, <code>/api/player/resume</code>, <code>/api/player/run-line</code>, <code>/api/player/run-step</code>, <code>/api/player/stop</code>, and <code>/api/player/reset</code>.</p>
|
||||
<h3 id="razor-page-source-code">Razor Page Source Code</h3>
|
||||
<pre><code class="lang-csharp" name="SampleCode-razor">@using Hi.Common.PathUtils;
|
||||
@using Hi.HiNcKits;
|
||||
|
||||
+8
-5
@@ -105,7 +105,9 @@
|
||||
Console.WriteLine($"{present.ShortName}: {valueText} {present.TailUnitString} ({present.Name} [{entry.Key}])");
|
||||
}
|
||||
}
|
||||
</code></pre><h2 id="source-code-path">Source Code Path</h2>
|
||||
</code></pre><h2 id="signalr-implementation-webapi-only">SignalR Implementation (Webapi Only)</h2>
|
||||
<p><code>SelectedStepInfoHub</code> provides real-time step updates with method <code>GetSelectedStepInfo()</code> and event <code>SelectedStepInfoUpdated</code>. <code>SelectedStepInfoService</code> monitors <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html#Hi_MachiningProcs_LocalProjectService_ClStrip_PosSelected">ClStrip_PosSelected</a> and <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html#Hi_MachiningProcs_LocalProjectService_ClStrip_MachiningStepSelected">ClStrip_MachiningStepSelected</a> events and broadcasts updates. The JavaScript component connects to <code>/selectedStepInfoHub</code> to receive step change notifications and update the UI accordingly.</p>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
<ul>
|
||||
@@ -113,10 +115,11 @@
|
||||
</ul>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/selected-step-info-panel.js (Vue component)</li>
|
||||
<li>wwwroot/selected-step-info-panel.css (Styles)</li>
|
||||
<li>Controllers/PlayerController.cs (REST API)</li>
|
||||
<li>Hubs/PlayerHub.cs (SignalR Hub for real-time updates)</li>
|
||||
<li>wwwroot/player/selected-step-info-panel.js (Vue component)</li>
|
||||
<li>wwwroot/player/selected-step-info-panel.css (Styles)</li>
|
||||
<li>Players/PlayerController.cs (REST API - GetSelectedStepInfo endpoint)</li>
|
||||
<li>Players/SelectedStepInfoService.cs (Business logic)</li>
|
||||
<li>Players/SelectedStepInfoHub.cs (SignalR Hub for real-time updates)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
+4
-4
@@ -88,7 +88,7 @@
|
||||
<h1 id="graphic-cache-submenu">Graphic-Cache SubMenu</h1>
|
||||
|
||||
<p>The submenu locates on the <a href="index.html">Preference Menu Dropdown</a>.</p>
|
||||
<p>The model <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html">UserEnv</a> is from its parent component.</p>
|
||||
<p>The model <xref:Hi.HiNcKits.UserEnv> is from its parent component.</p>
|
||||
<h2 id="layout">Layout</h2>
|
||||
<ul>
|
||||
<li>Graphic-Cache SubMenu
|
||||
@@ -101,7 +101,7 @@
|
||||
</li>
|
||||
</ul>
|
||||
<h2 id="behavior">Behavior</h2>
|
||||
<p><code>Graphic-Cache Input Text Field</code> and <code>Graphic-Cache Slider</code> bind the <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html#Hi_HiNcKits_UserConfig_GraphicCacheMb">GraphicCacheMb</a>. The limit text fields also bind to the properties of <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a>.</p>
|
||||
<p><code>Graphic-Cache Input Text Field</code> and <code>Graphic-Cache Slider</code> bind the <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html#Hi_HiNcKits_AppConfig_GraphicCacheMb">GraphicCacheMb</a>. The limit text fields also bind to the properties of <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a>.</p>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
@@ -110,8 +110,8 @@
|
||||
</ul>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/preference/preference-menu.js</li>
|
||||
<li>Controller/Preference/PreferenceController.cs</li>
|
||||
<li>wwwroot/player/player-extended-toolbar.js (includes graphic cache dropdown)</li>
|
||||
<li>Environments/PreferenceController.cs</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
@@ -87,8 +87,8 @@
|
||||
<article data-uid="">
|
||||
<h1 id="preference-menu-dropdown">Preference Menu Dropdown</h1>
|
||||
|
||||
<p>The model of the UI is <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html">UserEnv</a>.
|
||||
<a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html">UserEnv</a> contains <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a>, which is rapidly used in the GUI.</p>
|
||||
<p>The model of the UI is <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html">AppService</a>.
|
||||
<a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html">AppService</a> contains <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a>, which is rapidly used in the GUI.</p>
|
||||
<p>The dropdown is on the <a href="../main-panel.html">Main Panel</a>.</p>
|
||||
<h2 id="layout">Layout</h2>
|
||||
<ul>
|
||||
@@ -99,8 +99,8 @@
|
||||
<li><a href="language-selection-submenu.html">Language Selection SubMenu</a></li>
|
||||
<li>Show Physics Options CheckBox
|
||||
<ul>
|
||||
<li>The model is <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html#Hi_HiNcKits_UserConfig_ShowPhysicsOptions">ShowPhysicsOptions</a>.</li>
|
||||
<li>The checkbox is disabled and unchecked if <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html#Hi_HiNcKits_UserEnv_IsPhysicsLicensed">IsPhysicsLicensed</a> is false.</li>
|
||||
<li>The model is <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html#Hi_HiNcKits_AppConfig_ShowPhysicsOptions">ShowPhysicsOptions</a>.</li>
|
||||
<li>The checkbox is disabled and unchecked if <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html#Hi_HiNcKits_AppService_IsPhysicsLicensed">IsPhysicsLicensed</a> is false.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Show Log Button
|
||||
@@ -109,9 +109,6 @@ The button does not exist on WPF application.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2 id="single-user-application">Single User Application</h2>
|
||||
<p>In single user application, access global <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html">UserEnv</a> and <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html">AppConfig</a> by the <a class="xref" href="../../../../api/Hi.HiNcKits.LocalApp.html">LocalApp</a>.</p>
|
||||
<p>Apply <a class="xref" href="../../../../api/Hi.HiNcKits.LocalApp.html">LocalApp</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.LocalApp.html#Hi_HiNcKits_LocalApp_SaveUserConfig">SaveUserConfig()</a> or <a class="xref" href="../../../../api/Hi.HiNcKits.LocalApp.html">LocalApp</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.LocalApp.html#Hi_HiNcKits_LocalApp_LooseSaveUserConfig">LooseSaveUserConfig()</a> (save config in <a href="../general-rules.html">Loose Manner</a>) if config changed.</p>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
@@ -121,7 +118,7 @@ The button does not exist on WPF application.</li>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/preference/preference-menu.js</li>
|
||||
<li>Controller/Preference/PreferenceController.cs</li>
|
||||
<li>Environments/PreferenceController.cs</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
+7
-7
@@ -87,9 +87,9 @@
|
||||
<article data-uid="">
|
||||
<h1 id="step-present-preference-page">Step Present Preference Page</h1>
|
||||
|
||||
<p>The model <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html">UserEnv</a> is from its parent component. The <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html">UserEnv</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html#Hi_HiNcKits_UserEnv_UserConfig">AppConfig</a> is rapidly used.</p>
|
||||
<p>The model of Candidate Keys Panel is <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html#Hi_HiNcKits_UserEnv_CandidateStepPresentKeyList">CandidateStepPresentKeyList</a>.
|
||||
The model of Displayed Keys Panel is <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html#Hi_HiNcKits_UserConfig_DisplayedStepPresentKeyList">DisplayedStepPresentKeyList</a>.</p>
|
||||
<p>The model <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html">AppService</a> is from its parent component. The <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html">AppService</a>.<a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html#Hi_HiNcKits_AppService_AppConfig">AppConfig</a> is rapidly used.</p>
|
||||
<p>The model of Candidate Keys Panel is <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html#Hi_HiNcKits_AppService_CandidateStepPresentKeyList">CandidateStepPresentKeyList</a>.
|
||||
The model of Displayed Keys Panel is <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html#Hi_HiNcKits_AppConfig_DisplayedStepPresentKeyList">DisplayedStepPresentKeyList</a>.</p>
|
||||
<h2 id="layout">Layout</h2>
|
||||
<ul>
|
||||
<li>Step Present Preference Page (or window)
|
||||
@@ -124,9 +124,9 @@ The model of Displayed Keys Panel is <a class="xref" href="../../../../api/Hi.Hi
|
||||
</ul>
|
||||
<p>The categories are not defined for programming logic but only for user experience. So decide and define the categories in the GUI here only.</p>
|
||||
<p>Since the Keys are not all come from the properties of <a class="xref" href="../../../../api/Hi.MachiningSteps.MachiningStep.html">MachiningStep</a>, a category panel (Category Other Panel) for the uncategoried keys is required.</p>
|
||||
<p>The keys in the Displayed Keys Panel is in sequence of <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html#Hi_HiNcKits_UserConfig_DisplayedStepPresentKeyList">DisplayedStepPresentKeyList</a>. User tune the sequence and remove key by the Displayed Keys Panel. User add and remove the key from the ToggleButtons in Candidate Keys Panel. Those UI control items are required.</p>
|
||||
<p>The keys in the Displayed Keys Panel is in sequence of <a class="xref" href="../../../../api/Hi.HiNcKits.AppConfig.html#Hi_HiNcKits_AppConfig_DisplayedStepPresentKeyList">DisplayedStepPresentKeyList</a>. User tune the sequence and remove key by the Displayed Keys Panel. User add and remove the key from the ToggleButtons in Candidate Keys Panel. Those UI control items are required.</p>
|
||||
<p>To both Candidate Keys Panel and Displayed Keys Panel:
|
||||
Apply <a class="xref" href="../../../../api/Hi.MachiningSteps.PresentAttribute.html">PresentAttribute</a>.<a class="xref" href="../../../../api/Hi.MachiningSteps.PresentAttribute.html#Hi_MachiningSteps_PresentAttribute_Name">Name</a> as Key label by <a class="xref" href="../../../../api/Hi.HiNcKits.UserEnv.html#Hi_HiNcKits_UserEnv_StepPresentAccessDictionary">StepPresentAccessDictionary</a>. Apply the key to the button tooltip.</p>
|
||||
Apply <a class="xref" href="../../../../api/Hi.MachiningSteps.PresentAttribute.html">PresentAttribute</a>.<a class="xref" href="../../../../api/Hi.MachiningSteps.PresentAttribute.html#Hi_MachiningSteps_PresentAttribute_Name">Name</a> as Key label by <a class="xref" href="../../../../api/Hi.HiNcKits.AppService.html#Hi_HiNcKits_AppService_StepPresentAccessDictionary">StepPresentAccessDictionary</a>. Apply the key to the button tooltip.</p>
|
||||
<p>The resx of <a class="xref" href="../../../../api/Hi.MachiningSteps.MachiningStep.html">MachiningStep</a> contains the translation of <a class="xref" href="../../../../api/Hi.MachiningSteps.PresentAttribute.html">PresentAttribute</a>.<a class="xref" href="../../../../api/Hi.MachiningSteps.PresentAttribute.html#Hi_MachiningSteps_PresentAttribute_Name">Name</a>, apply the translation to the GUI. If the translation not existed, use the original value.</p>
|
||||
<h3 id="categories">Categories</h3>
|
||||
<p>Refer the code to design Categories:</p>
|
||||
@@ -441,7 +441,7 @@ Apply <a class="xref" href="../../../../api/Hi.MachiningSteps.PresentAttribute.h
|
||||
</code></pre>
|
||||
<p>Refer the code to apply <a class="xref" href="../../../../api/Hi.MachiningSteps.PresentAttribute.html">PresentAttribute</a>.</p>
|
||||
<pre><code class="lang-csharp" name="SampleCode-ShowStepPresent">internal static void ShowStepPresent(
|
||||
UserEnv userEnv, MachiningStep machiningStep)
|
||||
AppService userEnv, MachiningStep machiningStep)
|
||||
{
|
||||
foreach (var entry in userEnv.DisplayedStepPresentAccessList)
|
||||
{
|
||||
@@ -459,7 +459,7 @@ Apply <a class="xref" href="../../../../api/Hi.MachiningSteps.PresentAttribute.h
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/preference/step-present-preference.js</li>
|
||||
<li>Controller/Preference/PreferenceController.cs</li>
|
||||
<li>Environments/PreferenceController.cs</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
@@ -119,11 +119,15 @@ DispEngine.TurnBackView();
|
||||
<li>Disp/RenderingCanvasToolBar</li>
|
||||
</ul>
|
||||
<h3 id="webapi-application-source-code-path">Webapi Application Source Code Path</h3>
|
||||
<p>Frontend:</p>
|
||||
<ul>
|
||||
<li>wwwroot/disp/rendering-canvas-tool-bar.js</li>
|
||||
<li>wwwroot/disp/rendering-canvas-tool-bar.css</li>
|
||||
</ul>
|
||||
<p>To build it, you can refer <a href="https://superhightech-gitea.webredirect.org/HiNC-Deploy/Hi.Sample.Webapi/raw/branch/master/wwwroot/disp/rendering-canvas-view-dropdown.js">Hi.Sample.Webapi/wwwroot/disp/rendering-canvas-view-dropdown.js</a>.</p>
|
||||
<p>Backend (C#):</p>
|
||||
<ul>
|
||||
<li>Disp/RenderingHub.cs - Contains the <code>SetView</code> method that handles view changes from the toolbar</li>
|
||||
<li>Disp/RenderingService.cs - Manages DispEngine instances</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
|
||||
@@ -161,6 +161,8 @@
|
||||
</div>
|
||||
<h2 id="behavior-of-export-button">Behavior of Export Button</h2>
|
||||
<p>Export ALL filtered elements in the <a class="xref" href="../../../../api/Hi.MachiningProcs.SessionMessageHost.html#Hi_MachiningProcs_SessionMessageHost_MessageCollection">MessageCollection</a> by <a class="xref" href="../../../../api/Hi.MachiningProcs.SessionMessageHost.html#Hi_MachiningProcs_SessionMessageHost_GetFliteredList_Hi_MachiningProcs_SessionMessageHost_FilterFlag_System_String_">GetFliteredList(FilterFlag, string)</a>.</p>
|
||||
<h2 id="signalr-implementation-webapi-only">SignalR Implementation (Webapi Only)</h2>
|
||||
<p><code>SessionMessageHub</code> provides real-time message updates with method <code>GetSessionMessages(string filterFlags, string filterText, int limit)</code> and event <code>SessionMessagesUpdated</code>. <code>SessionMessageService</code> monitors <a class="xref" href="../../../../api/Hi.MachiningProcs.LocalProjectService.html#Hi_MachiningProcs_LocalProjectService_SessionMessageHost_CollectionItemChanged">SessionMessageHost_CollectionItemChanged</a> and broadcasts updates. The service uses <xref:Hi.MachiningProcs.LooseRunner> for non-blocking async operations. The JavaScript component connects to <code>/sessionMessageHub</code> to receive real-time message updates.</p>
|
||||
<h2 id="source-code-path">Source Code Path</h2>
|
||||
<p>See <a href="../index.html">this page</a> for git repository.</p>
|
||||
<h3 id="wpf-application-source-code-path">WPF Application Source Code Path</h3>
|
||||
@@ -169,8 +171,10 @@
|
||||
</ul>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<ul>
|
||||
<li>wwwroot/player-panel.js (include in Player Panel)</li>
|
||||
<li>Controller/Player/PlayerController.cs</li>
|
||||
<li>wwwroot/player/session-message-panel.js (Vue component)</li>
|
||||
<li>Players/PlayerController.cs (REST API - GetSessionMessages endpoint)</li>
|
||||
<li>Players/SessionMessageService.cs (Business logic)</li>
|
||||
<li>Players/SessionMessageHub.cs (SignalR Hub for real-time updates)</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
+26
-31
@@ -2,18 +2,18 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Namespace Sample.Controllers | HiAPI-C# 2025 </title>
|
||||
<title>Numeric Input/Output Utilities | HiAPI-C# 2025 </title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="title" content="Namespace Sample.Controllers | HiAPI-C# 2025 ">
|
||||
<meta name="title" content="Numeric Input/Output Utilities | 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">
|
||||
<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="docfx:rel" content="../../../../">
|
||||
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
<meta name="loc:copy" content="Copy">
|
||||
<meta name="loc:downloadPdf" content="Download PDF">
|
||||
|
||||
<script type="module" src="./../../public/docfx.min.js"></script>
|
||||
<script type="module" src="./../../../../public/docfx.min.js"></script>
|
||||
|
||||
<script>
|
||||
const theme = localStorage.getItem('theme') || 'auto'
|
||||
@@ -39,12 +39,12 @@
|
||||
|
||||
</head>
|
||||
|
||||
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
|
||||
<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 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">
|
||||
@@ -84,32 +84,27 @@
|
||||
<nav id="breadcrumb"></nav>
|
||||
</div>
|
||||
|
||||
<article data-uid="Sample.Controllers">
|
||||
|
||||
<h1 id="Sample_Controllers" data-uid="Sample.Controllers" class="text-break">Namespace Sample.Controllers</h1>
|
||||
<div class="markdown level0 summary"></div>
|
||||
<div class="markdown level0 conceptual"></div>
|
||||
<div class="markdown level0 remarks"></div>
|
||||
|
||||
<h3 id="classes">
|
||||
Classes
|
||||
</h3>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Sample.Controllers.RenderingController.html">RenderingController</a></dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
<dl class="jumplist">
|
||||
<dt><a class="xref" href="Sample.Controllers.TestDisplayee.html">TestDisplayee</a></dt>
|
||||
<dd><p>測試用的顯示對象</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<article data-uid="">
|
||||
<h1 id="numeric-inputoutput-utilities">Numeric Input/Output Utilities</h1>
|
||||
|
||||
<p>The <code>numeric-utils.js</code> module provides essential utilities for handling numeric input/output in web forms, especially for floating-point values with special cases.</p>
|
||||
<h2 id="purpose">Purpose</h2>
|
||||
<p>The utilities solve the common problem of handling special numeric values (Infinity, -Infinity, NaN) in JSON serialization and user interfaces. JavaScript's JSON.stringify converts these special values to null or strings, which can cause issues when communicating with C# backend APIs. This module provides consistent conversion between numeric values and display strings, ensuring proper handling across the full stack. It also formats regular numbers with appropriate precision for display while avoiding unnecessary trailing zeros.</p>
|
||||
<h2 id="key-features">Key Features</h2>
|
||||
<ul>
|
||||
<li>Converts Infinity to “INF”, -Infinity to “-INF”, and NaN to “NaN” for display</li>
|
||||
<li>Parses these special strings back to their numeric equivalents</li>
|
||||
<li>Formats regular numbers with appropriate precision (4 significant digits)</li>
|
||||
<li>Provides a Vue mixin for easy integration in components</li>
|
||||
<li>Handles both numeric and string inputs from JSON responses</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
<div class="contribution d-print-none">
|
||||
</div>
|
||||
|
||||
<div class="next-article d-print-none border-top" id="nextArticle"></div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -110,7 +110,6 @@
|
||||
|
||||
HiDisp --> Hi.WinForm
|
||||
HiDisp --> Hi.Wpf
|
||||
HiDisp --> Hi.Webapi
|
||||
|
||||
style HiNc fill:#d3d,stroke:#333,stroke-width:2px
|
||||
</code></pre>
|
||||
@@ -119,7 +118,6 @@
|
||||
<ul>
|
||||
<li>For Windows Forms applications, use the <code>Hi.WinForm</code> package.</li>
|
||||
<li>For WPF applications, use the <code>Hi.Wpf</code> package.</li>
|
||||
<li>For Webapi applications, use <code>Hi.Webapi</code> package.</li>
|
||||
</ul>
|
||||
<div class="NOTE">
|
||||
<h5>Note</h5>
|
||||
@@ -137,11 +135,6 @@
|
||||
<li><a href="https://superhightech-gitea.webredirect.org/HiNC-Deploy/Hi.Wpf.git">https://superhightech-gitea.webredirect.org/HiNC-Deploy/Hi.WinForm.git</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Hi.Webapi
|
||||
<ul>
|
||||
<li><a href="https://superhightech-gitea.webredirect.org/HiNC-Deploy/Hi.Webapi.git">https://superhightech-gitea.webredirect.org/HiNC-Deploy/Hi.Webapi.git</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2 id="hiapi-sample-code">HiAPI Sample Code</h2>
|
||||
<p>See <a href="../sample/Sample.Machining.html">Sample Code</a> or download the repositories to get more samples. The following sample repository demonstrate various aspects of using HiAPI for machining simulation:</p>
|
||||
@@ -158,12 +151,6 @@
|
||||
<li>The repository generally contains the sample code that requires rendering canvas.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Hi.Sample.Webapi
|
||||
<ul>
|
||||
<li><a href="https://superhightech-gitea.webredirect.org/HiNC-Deploy/Hi.Sample.Webapi.git">https://superhightech-gitea.webredirect.org/HiNC-Deploy/Hi.Sample.Webapi.git</a></li>
|
||||
<li>The repository shows how to use Hi.Webapi nuget package.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
|
||||
@@ -80,7 +80,26 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/widget/vec3d/index.html" name="" title="Vec3d Control">Vec3d Control</a>
|
||||
<span class="expand-stub"></span>
|
||||
<a href="build-hinc/index.html" name="" title="Widget">Widget</a>
|
||||
|
||||
<ul class="nav level3">
|
||||
<li>
|
||||
<a href="build-hinc/widget/vec3d/index.html" name="" title="Vec3d Control">Vec3d Control</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/widget/object-management-menu-button.html" name="" title="Object Management Menu Button">Object Management Menu Button</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/widget/gui-file-path-assignment.html" name="" title="GUI File Path Assignment">GUI File Path Assignment</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/widget/polar-resolution-2d-panel.html" name="" title="Polar Resolution 2D Panel">Polar Resolution 2D Panel</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/widget/numeric-io-utilities.html" name="" title="Numeric Input/Output Utilities">Numeric Input/Output Utilities</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<span class="expand-stub"></span>
|
||||
@@ -129,6 +148,34 @@
|
||||
<li>
|
||||
<a href="build-hinc/controller/index.html" name="" title="Controller Page">Controller Page</a>
|
||||
</li>
|
||||
<li>
|
||||
<span class="expand-stub"></span>
|
||||
<a href="build-hinc/mission/index.html" name="" title="Mission Page">Mission Page</a>
|
||||
|
||||
<ul class="nav level3">
|
||||
<li>
|
||||
<a href="build-hinc/mission/script-command-panel.html" name="" title="Script Command Panel">Script Command Panel</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/mission/ListCommand-panel.html" name="" title="List Command Panel">List Command Panel</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/mission/PreSettingCommand-panel.html" name="" title="PreSetting Command Panel">PreSetting Command Panel</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/mission/NcOptOption-panel.html" name="" title="NcOptOption Panel">NcOptOption Panel</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/mission/NcFileCommand-panel.html" name="" title="NcFile Command Panel">NcFile Command Panel</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/mission/NcCodeCommand-panel.html" name="" title="NcCode Command Panel">NcCode Command Panel</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="build-hinc/mission/PostExecutionCommand-panel.html" name="" title="PostExecution Command Panel">PostExecution Command Panel</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1,815 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Class RenderingController | HiAPI-C# 2025 </title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="title" content="Class RenderingController | 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 "{query}"">
|
||||
<meta name="loc:searchNoResults" content="No results for "{query}"">
|
||||
<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="Sample.Controllers.RenderingController">
|
||||
|
||||
|
||||
|
||||
<h1 id="Sample_Controllers_RenderingController" data-uid="Sample.Controllers.RenderingController" class="text-break">
|
||||
Class RenderingController
|
||||
</h1>
|
||||
|
||||
<div class="facts text-secondary">
|
||||
<dl><dt>Namespace</dt><dd><a class="xref" href="Sample.html">Sample</a>.<a class="xref" href="Sample.Controllers.html">Controllers</a></dd></dl>
|
||||
<dl><dt>Assembly</dt><dd>Hi.Sample.Webapi.dll</dd></dl>
|
||||
</div>
|
||||
|
||||
<div class="markdown summary"></div>
|
||||
<div class="markdown conceptual"></div>
|
||||
|
||||
<div class="codewrapper">
|
||||
<pre><code class="lang-csharp hljs">[ApiController]
|
||||
[Route("api/[controller]")]
|
||||
public class RenderingController : ControllerBase</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><a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase">ControllerBase</a></div>
|
||||
<div><span class="xref">RenderingController</span></div>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
<dl class="typelist inheritedMembers">
|
||||
<dt>Inherited Members</dt>
|
||||
<dd>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.statuscode#microsoft-aspnetcore-mvc-controllerbase-statuscode(system-int32)">ControllerBase.StatusCode(int)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.statuscode#microsoft-aspnetcore-mvc-controllerbase-statuscode(system-int32-system-object)">ControllerBase.StatusCode(int, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.content#microsoft-aspnetcore-mvc-controllerbase-content(system-string)">ControllerBase.Content(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.content#microsoft-aspnetcore-mvc-controllerbase-content(system-string-system-string)">ControllerBase.Content(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.content#microsoft-aspnetcore-mvc-controllerbase-content(system-string-system-string-system-text-encoding)">ControllerBase.Content(string, string, Encoding)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.content#microsoft-aspnetcore-mvc-controllerbase-content(system-string-microsoft-net-http-headers-mediatypeheadervalue)">ControllerBase.Content(string, MediaTypeHeaderValue)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.nocontent">ControllerBase.NoContent()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.ok#microsoft-aspnetcore-mvc-controllerbase-ok">ControllerBase.Ok()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.ok#microsoft-aspnetcore-mvc-controllerbase-ok(system-object)">ControllerBase.Ok(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirect">ControllerBase.Redirect(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirectpermanent">ControllerBase.RedirectPermanent(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirectpreservemethod">ControllerBase.RedirectPreserveMethod(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirectpermanentpreservemethod">ControllerBase.RedirectPermanentPreserveMethod(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.localredirect">ControllerBase.LocalRedirect(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.localredirectpermanent">ControllerBase.LocalRedirectPermanent(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.localredirectpreservemethod">ControllerBase.LocalRedirectPreserveMethod(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.localredirectpermanentpreservemethod">ControllerBase.LocalRedirectPermanentPreserveMethod(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoaction#microsoft-aspnetcore-mvc-controllerbase-redirecttoaction">ControllerBase.RedirectToAction()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoaction#microsoft-aspnetcore-mvc-controllerbase-redirecttoaction(system-string)">ControllerBase.RedirectToAction(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoaction#microsoft-aspnetcore-mvc-controllerbase-redirecttoaction(system-string-system-object)">ControllerBase.RedirectToAction(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoaction#microsoft-aspnetcore-mvc-controllerbase-redirecttoaction(system-string-system-string)">ControllerBase.RedirectToAction(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoaction#microsoft-aspnetcore-mvc-controllerbase-redirecttoaction(system-string-system-string-system-object)">ControllerBase.RedirectToAction(string, string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoaction#microsoft-aspnetcore-mvc-controllerbase-redirecttoaction(system-string-system-string-system-string)">ControllerBase.RedirectToAction(string, string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoaction#microsoft-aspnetcore-mvc-controllerbase-redirecttoaction(system-string-system-string-system-object-system-string)">ControllerBase.RedirectToAction(string, string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoactionpreservemethod">ControllerBase.RedirectToActionPreserveMethod(string, string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoactionpermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoactionpermanent(system-string)">ControllerBase.RedirectToActionPermanent(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoactionpermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoactionpermanent(system-string-system-object)">ControllerBase.RedirectToActionPermanent(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoactionpermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoactionpermanent(system-string-system-string)">ControllerBase.RedirectToActionPermanent(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoactionpermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoactionpermanent(system-string-system-string-system-string)">ControllerBase.RedirectToActionPermanent(string, string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoactionpermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoactionpermanent(system-string-system-string-system-object)">ControllerBase.RedirectToActionPermanent(string, string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoactionpermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoactionpermanent(system-string-system-string-system-object-system-string)">ControllerBase.RedirectToActionPermanent(string, string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoactionpermanentpreservemethod">ControllerBase.RedirectToActionPermanentPreserveMethod(string, string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroute#microsoft-aspnetcore-mvc-controllerbase-redirecttoroute(system-string)">ControllerBase.RedirectToRoute(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroute#microsoft-aspnetcore-mvc-controllerbase-redirecttoroute(system-object)">ControllerBase.RedirectToRoute(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroute#microsoft-aspnetcore-mvc-controllerbase-redirecttoroute(system-string-system-object)">ControllerBase.RedirectToRoute(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroute#microsoft-aspnetcore-mvc-controllerbase-redirecttoroute(system-string-system-string)">ControllerBase.RedirectToRoute(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroute#microsoft-aspnetcore-mvc-controllerbase-redirecttoroute(system-string-system-object-system-string)">ControllerBase.RedirectToRoute(string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroutepreservemethod">ControllerBase.RedirectToRoutePreserveMethod(string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroutepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoroutepermanent(system-string)">ControllerBase.RedirectToRoutePermanent(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroutepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoroutepermanent(system-object)">ControllerBase.RedirectToRoutePermanent(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroutepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoroutepermanent(system-string-system-object)">ControllerBase.RedirectToRoutePermanent(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroutepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoroutepermanent(system-string-system-string)">ControllerBase.RedirectToRoutePermanent(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroutepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttoroutepermanent(system-string-system-object-system-string)">ControllerBase.RedirectToRoutePermanent(string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttoroutepermanentpreservemethod">ControllerBase.RedirectToRoutePermanentPreserveMethod(string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopage#microsoft-aspnetcore-mvc-controllerbase-redirecttopage(system-string)">ControllerBase.RedirectToPage(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopage#microsoft-aspnetcore-mvc-controllerbase-redirecttopage(system-string-system-object)">ControllerBase.RedirectToPage(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopage#microsoft-aspnetcore-mvc-controllerbase-redirecttopage(system-string-system-string)">ControllerBase.RedirectToPage(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopage#microsoft-aspnetcore-mvc-controllerbase-redirecttopage(system-string-system-string-system-object)">ControllerBase.RedirectToPage(string, string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopage#microsoft-aspnetcore-mvc-controllerbase-redirecttopage(system-string-system-string-system-string)">ControllerBase.RedirectToPage(string, string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopage#microsoft-aspnetcore-mvc-controllerbase-redirecttopage(system-string-system-string-system-object-system-string)">ControllerBase.RedirectToPage(string, string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopagepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttopagepermanent(system-string)">ControllerBase.RedirectToPagePermanent(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopagepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttopagepermanent(system-string-system-object)">ControllerBase.RedirectToPagePermanent(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopagepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttopagepermanent(system-string-system-string)">ControllerBase.RedirectToPagePermanent(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopagepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttopagepermanent(system-string-system-string-system-string)">ControllerBase.RedirectToPagePermanent(string, string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopagepermanent#microsoft-aspnetcore-mvc-controllerbase-redirecttopagepermanent(system-string-system-string-system-object-system-string)">ControllerBase.RedirectToPagePermanent(string, string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopagepreservemethod">ControllerBase.RedirectToPagePreserveMethod(string, string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.redirecttopagepermanentpreservemethod">ControllerBase.RedirectToPagePermanentPreserveMethod(string, string, object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-byte()-system-string)">ControllerBase.File(byte[], string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-byte()-system-string-system-boolean)">ControllerBase.File(byte[], string, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-byte()-system-string-system-string)">ControllerBase.File(byte[], string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-byte()-system-string-system-string-system-boolean)">ControllerBase.File(byte[], string, string, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-byte()-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue)">ControllerBase.File(byte[], string, DateTimeOffset?, EntityTagHeaderValue)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-byte()-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue-system-boolean)">ControllerBase.File(byte[], string, DateTimeOffset?, EntityTagHeaderValue, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-byte()-system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue)">ControllerBase.File(byte[], string, string, DateTimeOffset?, EntityTagHeaderValue)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-byte()-system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue-system-boolean)">ControllerBase.File(byte[], string, string, DateTimeOffset?, EntityTagHeaderValue, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-io-stream-system-string)">ControllerBase.File(Stream, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-io-stream-system-string-system-boolean)">ControllerBase.File(Stream, string, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-io-stream-system-string-system-string)">ControllerBase.File(Stream, string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-io-stream-system-string-system-string-system-boolean)">ControllerBase.File(Stream, string, string, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-io-stream-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue)">ControllerBase.File(Stream, string, DateTimeOffset?, EntityTagHeaderValue)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-io-stream-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue-system-boolean)">ControllerBase.File(Stream, string, DateTimeOffset?, EntityTagHeaderValue, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-io-stream-system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue)">ControllerBase.File(Stream, string, string, DateTimeOffset?, EntityTagHeaderValue)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-io-stream-system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue-system-boolean)">ControllerBase.File(Stream, string, string, DateTimeOffset?, EntityTagHeaderValue, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-string-system-string)">ControllerBase.File(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-string-system-string-system-boolean)">ControllerBase.File(string, string, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-string-system-string-system-string)">ControllerBase.File(string, string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-string-system-string-system-string-system-boolean)">ControllerBase.File(string, string, string, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue)">ControllerBase.File(string, string, DateTimeOffset?, EntityTagHeaderValue)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue-system-boolean)">ControllerBase.File(string, string, DateTimeOffset?, EntityTagHeaderValue, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-string-system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue)">ControllerBase.File(string, string, string, DateTimeOffset?, EntityTagHeaderValue)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.file#microsoft-aspnetcore-mvc-controllerbase-file(system-string-system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue-system-boolean)">ControllerBase.File(string, string, string, DateTimeOffset?, EntityTagHeaderValue, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.physicalfile#microsoft-aspnetcore-mvc-controllerbase-physicalfile(system-string-system-string)">ControllerBase.PhysicalFile(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.physicalfile#microsoft-aspnetcore-mvc-controllerbase-physicalfile(system-string-system-string-system-boolean)">ControllerBase.PhysicalFile(string, string, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.physicalfile#microsoft-aspnetcore-mvc-controllerbase-physicalfile(system-string-system-string-system-string)">ControllerBase.PhysicalFile(string, string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.physicalfile#microsoft-aspnetcore-mvc-controllerbase-physicalfile(system-string-system-string-system-string-system-boolean)">ControllerBase.PhysicalFile(string, string, string, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.physicalfile#microsoft-aspnetcore-mvc-controllerbase-physicalfile(system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue)">ControllerBase.PhysicalFile(string, string, DateTimeOffset?, EntityTagHeaderValue)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.physicalfile#microsoft-aspnetcore-mvc-controllerbase-physicalfile(system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue-system-boolean)">ControllerBase.PhysicalFile(string, string, DateTimeOffset?, EntityTagHeaderValue, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.physicalfile#microsoft-aspnetcore-mvc-controllerbase-physicalfile(system-string-system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue)">ControllerBase.PhysicalFile(string, string, string, DateTimeOffset?, EntityTagHeaderValue)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.physicalfile#microsoft-aspnetcore-mvc-controllerbase-physicalfile(system-string-system-string-system-string-system-nullable((system-datetimeoffset))-microsoft-net-http-headers-entitytagheadervalue-system-boolean)">ControllerBase.PhysicalFile(string, string, string, DateTimeOffset?, EntityTagHeaderValue, bool)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.unauthorized#microsoft-aspnetcore-mvc-controllerbase-unauthorized">ControllerBase.Unauthorized()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.unauthorized#microsoft-aspnetcore-mvc-controllerbase-unauthorized(system-object)">ControllerBase.Unauthorized(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.notfound#microsoft-aspnetcore-mvc-controllerbase-notfound">ControllerBase.NotFound()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.notfound#microsoft-aspnetcore-mvc-controllerbase-notfound(system-object)">ControllerBase.NotFound(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.badrequest#microsoft-aspnetcore-mvc-controllerbase-badrequest">ControllerBase.BadRequest()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.badrequest#microsoft-aspnetcore-mvc-controllerbase-badrequest(system-object)">ControllerBase.BadRequest(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.badrequest#microsoft-aspnetcore-mvc-controllerbase-badrequest(microsoft-aspnetcore-mvc-modelbinding-modelstatedictionary)">ControllerBase.BadRequest(ModelStateDictionary)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.unprocessableentity#microsoft-aspnetcore-mvc-controllerbase-unprocessableentity">ControllerBase.UnprocessableEntity()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.unprocessableentity#microsoft-aspnetcore-mvc-controllerbase-unprocessableentity(system-object)">ControllerBase.UnprocessableEntity(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.unprocessableentity#microsoft-aspnetcore-mvc-controllerbase-unprocessableentity(microsoft-aspnetcore-mvc-modelbinding-modelstatedictionary)">ControllerBase.UnprocessableEntity(ModelStateDictionary)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.conflict#microsoft-aspnetcore-mvc-controllerbase-conflict">ControllerBase.Conflict()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.conflict#microsoft-aspnetcore-mvc-controllerbase-conflict(system-object)">ControllerBase.Conflict(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.conflict#microsoft-aspnetcore-mvc-controllerbase-conflict(microsoft-aspnetcore-mvc-modelbinding-modelstatedictionary)">ControllerBase.Conflict(ModelStateDictionary)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.problem#microsoft-aspnetcore-mvc-controllerbase-problem(system-string-system-string-system-nullable((system-int32))-system-string-system-string)">ControllerBase.Problem(string, string, int?, string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.problem#microsoft-aspnetcore-mvc-controllerbase-problem(system-string-system-string-system-nullable((system-int32))-system-string-system-string-system-collections-generic-idictionary((system-string-system-object)))">ControllerBase.Problem(string, string, int?, string, string, IDictionary<string, object>)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.validationproblem#microsoft-aspnetcore-mvc-controllerbase-validationproblem(microsoft-aspnetcore-mvc-validationproblemdetails)">ControllerBase.ValidationProblem(ValidationProblemDetails)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.validationproblem#microsoft-aspnetcore-mvc-controllerbase-validationproblem(microsoft-aspnetcore-mvc-modelbinding-modelstatedictionary)">ControllerBase.ValidationProblem(ModelStateDictionary)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.validationproblem#microsoft-aspnetcore-mvc-controllerbase-validationproblem">ControllerBase.ValidationProblem()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.validationproblem#microsoft-aspnetcore-mvc-controllerbase-validationproblem(system-string-system-string-system-nullable((system-int32))-system-string-system-string-microsoft-aspnetcore-mvc-modelbinding-modelstatedictionary)">ControllerBase.ValidationProblem(string, string, int?, string, string, ModelStateDictionary)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.validationproblem#microsoft-aspnetcore-mvc-controllerbase-validationproblem(system-string-system-string-system-nullable((system-int32))-system-string-system-string-microsoft-aspnetcore-mvc-modelbinding-modelstatedictionary-system-collections-generic-idictionary((system-string-system-object)))">ControllerBase.ValidationProblem(string, string, int?, string, string, ModelStateDictionary, IDictionary<string, object>)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.created#microsoft-aspnetcore-mvc-controllerbase-created">ControllerBase.Created()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.created#microsoft-aspnetcore-mvc-controllerbase-created(system-string-system-object)">ControllerBase.Created(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.created#microsoft-aspnetcore-mvc-controllerbase-created(system-uri-system-object)">ControllerBase.Created(Uri, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.createdataction#microsoft-aspnetcore-mvc-controllerbase-createdataction(system-string-system-object)">ControllerBase.CreatedAtAction(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.createdataction#microsoft-aspnetcore-mvc-controllerbase-createdataction(system-string-system-object-system-object)">ControllerBase.CreatedAtAction(string, object, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.createdataction#microsoft-aspnetcore-mvc-controllerbase-createdataction(system-string-system-string-system-object-system-object)">ControllerBase.CreatedAtAction(string, string, object, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.createdatroute#microsoft-aspnetcore-mvc-controllerbase-createdatroute(system-string-system-object)">ControllerBase.CreatedAtRoute(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.createdatroute#microsoft-aspnetcore-mvc-controllerbase-createdatroute(system-object-system-object)">ControllerBase.CreatedAtRoute(object, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.createdatroute#microsoft-aspnetcore-mvc-controllerbase-createdatroute(system-string-system-object-system-object)">ControllerBase.CreatedAtRoute(string, object, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.accepted#microsoft-aspnetcore-mvc-controllerbase-accepted">ControllerBase.Accepted()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.accepted#microsoft-aspnetcore-mvc-controllerbase-accepted(system-object)">ControllerBase.Accepted(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.accepted#microsoft-aspnetcore-mvc-controllerbase-accepted(system-uri)">ControllerBase.Accepted(Uri)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.accepted#microsoft-aspnetcore-mvc-controllerbase-accepted(system-string)">ControllerBase.Accepted(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.accepted#microsoft-aspnetcore-mvc-controllerbase-accepted(system-string-system-object)">ControllerBase.Accepted(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.accepted#microsoft-aspnetcore-mvc-controllerbase-accepted(system-uri-system-object)">ControllerBase.Accepted(Uri, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedataction#microsoft-aspnetcore-mvc-controllerbase-acceptedataction(system-string)">ControllerBase.AcceptedAtAction(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedataction#microsoft-aspnetcore-mvc-controllerbase-acceptedataction(system-string-system-string)">ControllerBase.AcceptedAtAction(string, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedataction#microsoft-aspnetcore-mvc-controllerbase-acceptedataction(system-string-system-object)">ControllerBase.AcceptedAtAction(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedataction#microsoft-aspnetcore-mvc-controllerbase-acceptedataction(system-string-system-string-system-object)">ControllerBase.AcceptedAtAction(string, string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedataction#microsoft-aspnetcore-mvc-controllerbase-acceptedataction(system-string-system-object-system-object)">ControllerBase.AcceptedAtAction(string, object, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedataction#microsoft-aspnetcore-mvc-controllerbase-acceptedataction(system-string-system-string-system-object-system-object)">ControllerBase.AcceptedAtAction(string, string, object, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedatroute#microsoft-aspnetcore-mvc-controllerbase-acceptedatroute(system-object)">ControllerBase.AcceptedAtRoute(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedatroute#microsoft-aspnetcore-mvc-controllerbase-acceptedatroute(system-string)">ControllerBase.AcceptedAtRoute(string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedatroute#microsoft-aspnetcore-mvc-controllerbase-acceptedatroute(system-string-system-object)">ControllerBase.AcceptedAtRoute(string, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedatroute#microsoft-aspnetcore-mvc-controllerbase-acceptedatroute(system-object-system-object)">ControllerBase.AcceptedAtRoute(object, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.acceptedatroute#microsoft-aspnetcore-mvc-controllerbase-acceptedatroute(system-string-system-object-system-object)">ControllerBase.AcceptedAtRoute(string, object, object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.challenge#microsoft-aspnetcore-mvc-controllerbase-challenge">ControllerBase.Challenge()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.challenge#microsoft-aspnetcore-mvc-controllerbase-challenge(system-string())">ControllerBase.Challenge(params string[])</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.challenge#microsoft-aspnetcore-mvc-controllerbase-challenge(microsoft-aspnetcore-authentication-authenticationproperties)">ControllerBase.Challenge(AuthenticationProperties)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.challenge#microsoft-aspnetcore-mvc-controllerbase-challenge(microsoft-aspnetcore-authentication-authenticationproperties-system-string())">ControllerBase.Challenge(AuthenticationProperties, params string[])</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.forbid#microsoft-aspnetcore-mvc-controllerbase-forbid">ControllerBase.Forbid()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.forbid#microsoft-aspnetcore-mvc-controllerbase-forbid(system-string())">ControllerBase.Forbid(params string[])</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.forbid#microsoft-aspnetcore-mvc-controllerbase-forbid(microsoft-aspnetcore-authentication-authenticationproperties)">ControllerBase.Forbid(AuthenticationProperties)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.forbid#microsoft-aspnetcore-mvc-controllerbase-forbid(microsoft-aspnetcore-authentication-authenticationproperties-system-string())">ControllerBase.Forbid(AuthenticationProperties, params string[])</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.signin#microsoft-aspnetcore-mvc-controllerbase-signin(system-security-claims-claimsprincipal)">ControllerBase.SignIn(ClaimsPrincipal)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.signin#microsoft-aspnetcore-mvc-controllerbase-signin(system-security-claims-claimsprincipal-system-string)">ControllerBase.SignIn(ClaimsPrincipal, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.signin#microsoft-aspnetcore-mvc-controllerbase-signin(system-security-claims-claimsprincipal-microsoft-aspnetcore-authentication-authenticationproperties)">ControllerBase.SignIn(ClaimsPrincipal, AuthenticationProperties)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.signin#microsoft-aspnetcore-mvc-controllerbase-signin(system-security-claims-claimsprincipal-microsoft-aspnetcore-authentication-authenticationproperties-system-string)">ControllerBase.SignIn(ClaimsPrincipal, AuthenticationProperties, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.signout#microsoft-aspnetcore-mvc-controllerbase-signout">ControllerBase.SignOut()</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.signout#microsoft-aspnetcore-mvc-controllerbase-signout(microsoft-aspnetcore-authentication-authenticationproperties)">ControllerBase.SignOut(AuthenticationProperties)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.signout#microsoft-aspnetcore-mvc-controllerbase-signout(system-string())">ControllerBase.SignOut(params string[])</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.signout#microsoft-aspnetcore-mvc-controllerbase-signout(microsoft-aspnetcore-authentication-authenticationproperties-system-string())">ControllerBase.SignOut(AuthenticationProperties, params string[])</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryupdatemodelasync#microsoft-aspnetcore-mvc-controllerbase-tryupdatemodelasync-1(-0)">ControllerBase.TryUpdateModelAsync<TModel>(TModel)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryupdatemodelasync#microsoft-aspnetcore-mvc-controllerbase-tryupdatemodelasync-1(-0-system-string)">ControllerBase.TryUpdateModelAsync<TModel>(TModel, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryupdatemodelasync#microsoft-aspnetcore-mvc-controllerbase-tryupdatemodelasync-1(-0-system-string-microsoft-aspnetcore-mvc-modelbinding-ivalueprovider)">ControllerBase.TryUpdateModelAsync<TModel>(TModel, string, IValueProvider)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryupdatemodelasync#microsoft-aspnetcore-mvc-controllerbase-tryupdatemodelasync-1(-0-system-string-system-linq-expressions-expression((system-func((-0-system-object))))())">ControllerBase.TryUpdateModelAsync<TModel>(TModel, string, params Expression<Func<TModel, object>>[])</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryupdatemodelasync#microsoft-aspnetcore-mvc-controllerbase-tryupdatemodelasync-1(-0-system-string-system-func((microsoft-aspnetcore-mvc-modelbinding-modelmetadata-system-boolean)))">ControllerBase.TryUpdateModelAsync<TModel>(TModel, string, Func<ModelMetadata, bool>)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryupdatemodelasync#microsoft-aspnetcore-mvc-controllerbase-tryupdatemodelasync-1(-0-system-string-microsoft-aspnetcore-mvc-modelbinding-ivalueprovider-system-linq-expressions-expression((system-func((-0-system-object))))())">ControllerBase.TryUpdateModelAsync<TModel>(TModel, string, IValueProvider, params Expression<Func<TModel, object>>[])</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryupdatemodelasync#microsoft-aspnetcore-mvc-controllerbase-tryupdatemodelasync-1(-0-system-string-microsoft-aspnetcore-mvc-modelbinding-ivalueprovider-system-func((microsoft-aspnetcore-mvc-modelbinding-modelmetadata-system-boolean)))">ControllerBase.TryUpdateModelAsync<TModel>(TModel, string, IValueProvider, Func<ModelMetadata, bool>)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryupdatemodelasync#microsoft-aspnetcore-mvc-controllerbase-tryupdatemodelasync(system-object-system-type-system-string)">ControllerBase.TryUpdateModelAsync(object, Type, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryupdatemodelasync#microsoft-aspnetcore-mvc-controllerbase-tryupdatemodelasync(system-object-system-type-system-string-microsoft-aspnetcore-mvc-modelbinding-ivalueprovider-system-func((microsoft-aspnetcore-mvc-modelbinding-modelmetadata-system-boolean)))">ControllerBase.TryUpdateModelAsync(object, Type, string, IValueProvider, Func<ModelMetadata, bool>)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryvalidatemodel#microsoft-aspnetcore-mvc-controllerbase-tryvalidatemodel(system-object)">ControllerBase.TryValidateModel(object)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.tryvalidatemodel#microsoft-aspnetcore-mvc-controllerbase-tryvalidatemodel(system-object-system-string)">ControllerBase.TryValidateModel(object, string)</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.httpcontext">ControllerBase.HttpContext</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.request">ControllerBase.Request</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.response">ControllerBase.Response</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.routedata">ControllerBase.RouteData</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.modelstate">ControllerBase.ModelState</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.controllercontext">ControllerBase.ControllerContext</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.metadataprovider">ControllerBase.MetadataProvider</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.modelbinderfactory">ControllerBase.ModelBinderFactory</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.url">ControllerBase.Url</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.objectvalidator">ControllerBase.ObjectValidator</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.problemdetailsfactory">ControllerBase.ProblemDetailsFactory</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.user">ControllerBase.User</a>
|
||||
</div>
|
||||
<div>
|
||||
<a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.controllerbase.empty">ControllerBase.Empty</a>
|
||||
</div>
|
||||
<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>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h2 class="section" id="constructors">Constructors
|
||||
</h2>
|
||||
|
||||
|
||||
<a id="Sample_Controllers_RenderingController__ctor_" data-uid="Sample.Controllers.RenderingController.#ctor*"></a>
|
||||
|
||||
<h3 id="Sample_Controllers_RenderingController__ctor_Hi_Webapi_Services_RenderingService_Microsoft_Extensions_Logging_ILogger_Sample_Controllers_RenderingController__" data-uid="Sample.Controllers.RenderingController.#ctor(Hi.Webapi.Services.RenderingService,Microsoft.Extensions.Logging.ILogger{Sample.Controllers.RenderingController})">
|
||||
RenderingController(RenderingService, ILogger<RenderingController>)
|
||||
|
||||
</h3>
|
||||
|
||||
<div class="markdown level1 summary"></div>
|
||||
<div class="markdown level1 conceptual"></div>
|
||||
|
||||
<div class="codewrapper">
|
||||
<pre><code class="lang-csharp hljs">public RenderingController(RenderingService renderingService, ILogger<RenderingController> logger)</code></pre>
|
||||
</div>
|
||||
|
||||
<h4 class="section">Parameters</h4>
|
||||
<dl class="parameters">
|
||||
<dt><code>renderingService</code> <a class="xref" href="../../api/Hi.Webapi.Services.RenderingService.html">RenderingService</a></dt>
|
||||
<dd></dd>
|
||||
<dt><code>logger</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.extensions.logging.ilogger-1">ILogger</a><<a class="xref" href="Sample.Controllers.RenderingController.html">RenderingController</a>></dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h2 class="section" id="methods">Methods
|
||||
</h2>
|
||||
|
||||
|
||||
<a id="Sample_Controllers_RenderingController_CreateTestObjects_" data-uid="Sample.Controllers.RenderingController.CreateTestObjects*"></a>
|
||||
|
||||
<h3 id="Sample_Controllers_RenderingController_CreateTestObjects_System_String_" data-uid="Sample.Controllers.RenderingController.CreateTestObjects(System.String)">
|
||||
CreateTestObjects(string)
|
||||
|
||||
</h3>
|
||||
|
||||
<div class="markdown level1 summary"><p>創建測試用的 3D 對象</p>
|
||||
</div>
|
||||
<div class="markdown level1 conceptual"></div>
|
||||
|
||||
<div class="codewrapper">
|
||||
<pre><code class="lang-csharp hljs">[HttpPost("test-objects/{sessionId}")]
|
||||
public IActionResult CreateTestObjects(string sessionId)</code></pre>
|
||||
</div>
|
||||
|
||||
<h4 class="section">Parameters</h4>
|
||||
<dl class="parameters">
|
||||
<dt><code>sessionId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
<h4 class="section">Returns</h4>
|
||||
<dl class="parameters">
|
||||
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.iactionresult">IActionResult</a></dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a id="Sample_Controllers_RenderingController_GetActiveEngineCount_" data-uid="Sample.Controllers.RenderingController.GetActiveEngineCount*"></a>
|
||||
|
||||
<h3 id="Sample_Controllers_RenderingController_GetActiveEngineCount" data-uid="Sample.Controllers.RenderingController.GetActiveEngineCount">
|
||||
GetActiveEngineCount()
|
||||
|
||||
</h3>
|
||||
|
||||
<div class="markdown level1 summary"><p>獲取當前活動的渲染引擎數量</p>
|
||||
</div>
|
||||
<div class="markdown level1 conceptual"></div>
|
||||
|
||||
<div class="codewrapper">
|
||||
<pre><code class="lang-csharp hljs">[HttpGet("engines/count")]
|
||||
public IActionResult GetActiveEngineCount()</code></pre>
|
||||
</div>
|
||||
|
||||
|
||||
<h4 class="section">Returns</h4>
|
||||
<dl class="parameters">
|
||||
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.mvc.iactionresult">IActionResult</a></dt>
|
||||
<dd></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>
|
||||
@@ -1,283 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Class TestDisplayee | HiAPI-C# 2025 </title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="title" content="Class TestDisplayee | HiAPI-C# 2025 ">
|
||||
|
||||
<meta name="description" content="測試用的顯示對象">
|
||||
<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 "{query}"">
|
||||
<meta name="loc:searchNoResults" content="No results for "{query}"">
|
||||
<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="Sample.Controllers.TestDisplayee">
|
||||
|
||||
|
||||
|
||||
<h1 id="Sample_Controllers_TestDisplayee" data-uid="Sample.Controllers.TestDisplayee" class="text-break">
|
||||
Class TestDisplayee
|
||||
</h1>
|
||||
|
||||
<div class="facts text-secondary">
|
||||
<dl><dt>Namespace</dt><dd><a class="xref" href="Sample.html">Sample</a>.<a class="xref" href="Sample.Controllers.html">Controllers</a></dd></dl>
|
||||
<dl><dt>Assembly</dt><dd>Hi.Sample.Webapi.dll</dd></dl>
|
||||
</div>
|
||||
|
||||
<div class="markdown summary"><p>測試用的顯示對象</p>
|
||||
</div>
|
||||
<div class="markdown conceptual"></div>
|
||||
|
||||
<div class="codewrapper">
|
||||
<pre><code class="lang-csharp hljs">public class TestDisplayee : IDisplayee, IExpandToBox3d</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">TestDisplayee</span></div>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl class="typelist implements">
|
||||
<dt>Implements</dt>
|
||||
<dd>
|
||||
<div><a class="xref" href="../../api/Hi.Disp.IDisplayee.html">IDisplayee</a></div>
|
||||
<div><a class="xref" href="../../api/Hi.Geom.IExpandToBox3d.html">IExpandToBox3d</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>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h2 class="section" id="constructors">Constructors
|
||||
</h2>
|
||||
|
||||
|
||||
<a id="Sample_Controllers_TestDisplayee__ctor_" data-uid="Sample.Controllers.TestDisplayee.#ctor*"></a>
|
||||
|
||||
<h3 id="Sample_Controllers_TestDisplayee__ctor" data-uid="Sample.Controllers.TestDisplayee.#ctor">
|
||||
TestDisplayee()
|
||||
|
||||
</h3>
|
||||
|
||||
<div class="markdown level1 summary"></div>
|
||||
<div class="markdown level1 conceptual"></div>
|
||||
|
||||
<div class="codewrapper">
|
||||
<pre><code class="lang-csharp hljs">public TestDisplayee()</code></pre>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h2 class="section" id="methods">Methods
|
||||
</h2>
|
||||
|
||||
|
||||
<a id="Sample_Controllers_TestDisplayee_Display_" data-uid="Sample.Controllers.TestDisplayee.Display*"></a>
|
||||
|
||||
<h3 id="Sample_Controllers_TestDisplayee_Display_Hi_Disp_Bind_" data-uid="Sample.Controllers.TestDisplayee.Display(Hi.Disp.Bind)">
|
||||
Display(Bind)
|
||||
|
||||
</h3>
|
||||
|
||||
<div class="markdown level1 summary"><p>Display function called in <a class="xref" href="../../api/Hi.Disp.DispEngine.html">DispEngine</a> rendering loop.</p>
|
||||
</div>
|
||||
<div class="markdown level1 conceptual"></div>
|
||||
|
||||
<div class="codewrapper">
|
||||
<pre><code class="lang-csharp hljs">public void Display(Bind bind)</code></pre>
|
||||
</div>
|
||||
|
||||
<h4 class="section">Parameters</h4>
|
||||
<dl class="parameters">
|
||||
<dt><code>bind</code> <a class="xref" href="../../api/Hi.Disp.Bind.html">Bind</a></dt>
|
||||
<dd><p>Bind with <a class="xref" href="../../api/Hi.Disp.DispEngine.html">DispEngine</a>. See <a class="xref" href="../../api/Hi.Disp.Bind.html">Bind</a>.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a id="Sample_Controllers_TestDisplayee_ExpandToBox3d_" data-uid="Sample.Controllers.TestDisplayee.ExpandToBox3d*"></a>
|
||||
|
||||
<h3 id="Sample_Controllers_TestDisplayee_ExpandToBox3d_Hi_Geom_Box3d_" data-uid="Sample.Controllers.TestDisplayee.ExpandToBox3d(Hi.Geom.Box3d)">
|
||||
ExpandToBox3d(Box3d)
|
||||
|
||||
</h3>
|
||||
|
||||
<div class="markdown level1 summary"><p>Expands the destination box.
|
||||
This function is usually used to compute the bounding box of elements.</p>
|
||||
</div>
|
||||
<div class="markdown level1 conceptual"></div>
|
||||
|
||||
<div class="codewrapper">
|
||||
<pre><code class="lang-csharp hljs">public void ExpandToBox3d(Box3d box)</code></pre>
|
||||
</div>
|
||||
|
||||
<h4 class="section">Parameters</h4>
|
||||
<dl class="parameters">
|
||||
<dt><code>box</code> <a class="xref" href="../../api/Hi.Geom.Box3d.html">Box3d</a></dt>
|
||||
<dd></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>
|
||||
+1
-1
@@ -195,7 +195,7 @@ namespace Sample.Machining
|
||||
#endregion
|
||||
|
||||
#region Configure Rendering Options
|
||||
var projectDisplayee = new MachiningProjectDisplayee(machiningProject);
|
||||
var projectDisplayee = new MachiningProjectDisplayee(()=>machiningProject);
|
||||
projectDisplayee.RenderingFlagBitArray[(int)RenderingFlag.Mech] = true;
|
||||
projectDisplayee.RenderingFlagBitArray[(int)RenderingFlag.Fixture] = true;
|
||||
projectDisplayee.RenderingFlagBitArray[(int)RenderingFlag.WorkpieceGeom] = false;
|
||||
|
||||
@@ -35,19 +35,6 @@
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<span class="expand-stub"></span>
|
||||
<a href="Sample.Controllers.html" name="" title="Sample.Controllers">Sample.Controllers</a>
|
||||
|
||||
<ul class="nav level2">
|
||||
<li>
|
||||
<a href="Sample.Controllers.RenderingController.html" name="" title="RenderingController">RenderingController</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="Sample.Controllers.TestDisplayee.html" name="" title="TestDisplayee">TestDisplayee</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<span class="expand-stub"></span>
|
||||
<a href="Sample.Disp.html" name="" title="Sample.Disp">Sample.Disp</a>
|
||||
|
||||
File diff suppressed because one or more lines are too long
+181
@@ -0,0 +1,181 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>模擬步階輸出資訊(Simulation Step Output) | HiAPI-C# 2025 </title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="title" content="模擬步階輸出資訊(Simulation Step Output) | 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 "{query}"">
|
||||
<meta name="loc:searchNoResults" content="No results for "{query}"">
|
||||
<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="模擬步階輸出資訊simulation-step-output">模擬步階輸出資訊(Simulation Step Output)</h1>
|
||||
|
||||
<blockquote>
|
||||
<p>完整欄位與即時最新對照請見 <a class="xref" href="../../../../api/Hi.MachiningSteps.MachiningStep.html">MachiningStep</a>。</p>
|
||||
<p>若需要評估是否有斷刀風險,亦可參考「<a href="../availability/index.html">評估製程可加工性</a>」。</p>
|
||||
</blockquote>
|
||||
<p>本頁彙整模擬每一步(Step)的主要輸出資訊,涵蓋來源行、運動學、載荷、力/力矩、功率、熱與磨耗等,協助快速理解當步的加工狀態。</p>
|
||||
<h2 id="基本來源資訊">基本來源資訊</h2>
|
||||
<ul>
|
||||
<li>FileNo / LineNo / FilePath / LineText / FlagsText:對應來源 NC 指令的檔案/行資訊與標記。</li>
|
||||
<li>StepIndex:步序索引。</li>
|
||||
<li>ToolId:當前使用之刀具 ID。</li>
|
||||
</ul>
|
||||
<h2 id="時間與運動">時間與運動</h2>
|
||||
<ul>
|
||||
<li>AccumulatedTime:模擬累積時間。</li>
|
||||
<li>StepDuration:本步持續時間(預設每轉模式:一步等於主軸一轉)。</li>
|
||||
<li>BeginSpindleAngle_deg:本步開始時主軸角度位移。</li>
|
||||
<li>Cl(Cutter Location):刀位點(含 IJK 法向)。</li>
|
||||
<li>MoveOnProgramCoordinate、MovingLength_mm:程式座標系上的位移向量與長度。</li>
|
||||
<li>Feedrate_mmdmin / SpindleSpeed_rpm / CuttingSpeed_mmds:進給率、主軸轉速、切削速度。</li>
|
||||
<li>FeedPerTooth_mm / FeedPerCycle_mm / ToothArcDuration_s / SpindleCyclePeriod_s:每齒/每循環進給、齒弧時間與主軸循環週期。</li>
|
||||
</ul>
|
||||
<h2 id="切削接觸與去除率">切削接觸與去除率</h2>
|
||||
<ul>
|
||||
<li>IsTouched:是否切削接觸。</li>
|
||||
<li>CuttingWidth_mm(ae)/ CuttingDepth_mm(ap):切寬/切深。</li>
|
||||
<li>Mrr_mm3ds:材料去除率。</li>
|
||||
<li>ProgramSideCusp_um、SideCuspList_um:由程式進給與半徑估算之側向殘留高與分佈。</li>
|
||||
</ul>
|
||||
<h2 id="晶屑chip">晶屑(Chip)</h2>
|
||||
<ul>
|
||||
<li>ChipThickness_mm(/um):晶屑厚度。</li>
|
||||
<li>ChipVolume_mm3:晶屑體積。</li>
|
||||
<li>ChipMass_mg:晶屑質量。</li>
|
||||
</ul>
|
||||
<h2 id="力與力矩含映射比較">力與力矩(含映射比較)</h2>
|
||||
<ul>
|
||||
<li>座標系提示:本節多數欄位會標示所屬座標系(如 <code>[W]</code> 工件、<code>[TR]</code> 刀具行進、<code>[SR]</code> 主軸旋轉)。若需座標系定義與示意,請參考「<a href="../theory-and-technique/milling-physics-coordinates.html">銑削物理座標系</a>」。</li>
|
||||
<li>AvgForceToToolOnToolRunningCoordinate_N、MaxAbsForce_N:平均/最大受力。</li>
|
||||
<li>各種平均/最大力矩(對刀尖、對感測點;刀運座標系/主軸旋轉座標系/工件程式座標系)。</li>
|
||||
<li>AvgAbsTorque_Nm:平均絕對扭矩。</li>
|
||||
<li>與量測映射比較:AvgMomentXyByMapping_Nm、AvgAbsTorqueByMapping_Nm、誤差比與符號化誤差關聯等指標。</li>
|
||||
</ul>
|
||||
<h2 id="功率扭矩與能耗">功率、扭矩與能耗</h2>
|
||||
<ul>
|
||||
<li>SpindleInputPower_W(輸入功率):進入主軸的能量。</li>
|
||||
<li>SpindleOutputPower_W(輸出功率):經過主軸能量損耗後,作用於切削端的能量,亦即造成工件與切屑形變、溫度改變的能量。</li>
|
||||
<li>MaxSpindlePowerRatio(最大主軸功率比率):輸入功率 / 基於主軸性能的瞬間最大功率。</li>
|
||||
<li>InfInsistentSpindlePowerRatio(持續主軸功率比率):輸入功率 / 基於主軸性能的不限時最大功率。</li>
|
||||
<li>AccumulatedSpindleEnergyConsumption_kWh:主軸累積能耗。</li>
|
||||
<li>Max/Continue Spindle Torque Ratio:主軸扭矩瞬時/持續比率。</li>
|
||||
</ul>
|
||||
<h2 id="熱與溫度">熱與溫度</h2>
|
||||
<ul>
|
||||
<li>CutterBodyTemperature_C / CutterDermisTemperature_C / WorkpieceDermisTemperature_C / ChipTemperature_C:刀體、刀表、工件表面、晶屑溫度。</li>
|
||||
<li>GetCutterDermisTemperature_C(depth_mm) / GetCutterDermisAvgTemperature_C(depth_mm):刀具表層深度溫度/平均溫度。</li>
|
||||
<li>ThermalStress_MPa / ThermalYieldRatio:熱應力與熱塑刃應力比。</li>
|
||||
</ul>
|
||||
<h2 id="磨耗與變形">磨耗與變形</h2>
|
||||
<ul>
|
||||
<li>延伸閱讀:磨耗模型、評估指標與適用情境,請見「<a href="../technique/wear.html">刀具壽命與磨耗</a>」。</li>
|
||||
<li>InstantCraterWear_um / AccumulatedCraterWear_um:瞬時/累積月牙洼磨耗。</li>
|
||||
<li>AccumulatedFlankWearDepth_um / AccumulatedFlankWearWidth_um:累積後刀面磨耗深度/寬度。</li>
|
||||
<li>Tip/Edge Deflection(um):刀尖與底刃撓度(含最大值與差量),以及 ReCutDepth_um(再切削深度)。</li>
|
||||
</ul>
|
||||
<hr>
|
||||
<p>如需更多欄位與單位、縮寫、格式,請直接查閱 API 參考:<a class="xref" href="../../../../api/Hi.MachiningSteps.MachiningStep.html">MachiningStep</a>。</p>
|
||||
|
||||
</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>
|
||||
@@ -135,6 +135,26 @@
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<span class="expand-stub"></span>
|
||||
<a>輸出</a>
|
||||
|
||||
<ul class="nav level2">
|
||||
<li>
|
||||
<a href="output/simulation-step-output.html" name="" title="模擬步階輸出資訊">模擬步階輸出資訊</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<span class="expand-stub"></span>
|
||||
<a>優化</a>
|
||||
|
||||
<ul class="nav level2">
|
||||
<li>
|
||||
<a href="optimization/index.html" name="" title="NC優化">NC優化</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<span class="expand-stub"></span>
|
||||
<a>理論與技術</a>
|
||||
@@ -151,16 +171,6 @@
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<span class="expand-stub"></span>
|
||||
<a>優化</a>
|
||||
|
||||
<ul class="nav level2">
|
||||
<li>
|
||||
<a href="optimization/index.html" name="" title="NC優化">NC優化</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
|
||||
{"items":[{"name":"HiNC 使用說明","href":"index.html","topicHref":"index.html"},{"name":"使用者條款","href":"license/index.html","topicHref":"license/index.html"},{"name":"HiNC啟用","items":[{"name":"Windows系統啟用","href":"startup/windows.html","topicHref":"startup/windows.html"},{"name":"單機多站配置","href":"startup/multi-station.html","topicHref":"startup/multi-station.html"},{"name":"多主機授權設置","href":"startup/delegate-auth.html","topicHref":"startup/delegate-auth.html"},{"name":"教學視頻","href":"startup/tutorial.html","topicHref":"startup/tutorial.html"}]},{"name":"系統","items":[{"name":"檔案總管","href":"system/file-explorer.html","topicHref":"system/file-explorer.html"}]},{"name":"設備","items":[{"name":"錨點","href":"mech/anchor.html","topicHref":"mech/anchor.html"},{"name":"工具機建置","href":"equipment/build-machine-tool.html","topicHref":"equipment/build-machine-tool.html"},{"name":"冷卻液","href":"equipment/coolant.html","topicHref":"equipment/coolant.html"}]},{"name":"控制器","items":[{"name":"海德漢支援","href":"controllers/heidenhain-support.html","topicHref":"controllers/heidenhain-support.html"},{"name":"通用NC碼支援","href":"controllers/iso-nc-support.html","topicHref":"controllers/iso-nc-support.html"}]},{"name":"加工工具","items":[{"name":"銑刀","href":"milling-tool/cutter.html","topicHref":"milling-tool/cutter.html"},{"name":"APT工具","href":"milling-tool/apt.html","topicHref":"milling-tool/apt.html"},{"name":"智慧刀把","href":"milling-tool/smart-tool-holder.html","topicHref":"milling-tool/smart-tool-holder.html"}]},{"name":"腳本命令","items":[{"name":"文件任務","href":"script/Doc-Task/index.html","topicHref":"script/Doc-Task/index.html"},{"name":"碰撞檢測","href":"script/Collision/index.html","topicHref":"script/Collision/index.html"},{"name":"離料","href":"script/FlyPiece/index.html","topicHref":"script/FlyPiece/index.html"},{"name":"幾何差異","href":"script/GeomDiff/index.html","topicHref":"script/GeomDiff/index.html"},{"name":"映射","href":"script/Mapping/index.html","topicHref":"script/Mapping/index.html"},{"name":"銑削訓練","href":"script/MillingTraining/index.html","topicHref":"script/MillingTraining/index.html"},{"name":"NC優化","href":"script/NcOptimization/index.html","topicHref":"script/NcOptimization/index.html"},{"name":"解析度","href":"script/Resolution/index.html","topicHref":"script/Resolution/index.html"},{"name":"運行NC檔案","href":"script/RunNcFile/index.html","topicHref":"script/RunNcFile/index.html"},{"name":"運行時幾何","href":"script/RuntimeGeom/index.html","topicHref":"script/RuntimeGeom/index.html"},{"name":"輸出Shot檔案","href":"script/WriteShotFiles/index.html","topicHref":"script/WriteShotFiles/index.html"},{"name":"輸出Step檔案","href":"script/WriteStepFiles/index.html","topicHref":"script/WriteStepFiles/index.html"}]},{"name":"理論與技術","items":[{"name":"銑削物理座標系","href":"theory-and-technique/milling-physics-coordinates.html","topicHref":"theory-and-technique/milling-physics-coordinates.html"},{"name":"評估製程可加工性","href":"availability/index.html","topicHref":"availability/index.html"},{"name":"刀具壽命與磨耗","href":"technique/wear.html","topicHref":"technique/wear.html"}]},{"name":"優化","items":[{"name":"NC優化","href":"optimization/index.html","topicHref":"optimization/index.html"}]}]}
|
||||
{"items":[{"name":"HiNC 使用說明","href":"index.html","topicHref":"index.html"},{"name":"使用者條款","href":"license/index.html","topicHref":"license/index.html"},{"name":"HiNC啟用","items":[{"name":"Windows系統啟用","href":"startup/windows.html","topicHref":"startup/windows.html"},{"name":"單機多站配置","href":"startup/multi-station.html","topicHref":"startup/multi-station.html"},{"name":"多主機授權設置","href":"startup/delegate-auth.html","topicHref":"startup/delegate-auth.html"},{"name":"教學視頻","href":"startup/tutorial.html","topicHref":"startup/tutorial.html"}]},{"name":"系統","items":[{"name":"檔案總管","href":"system/file-explorer.html","topicHref":"system/file-explorer.html"}]},{"name":"設備","items":[{"name":"錨點","href":"mech/anchor.html","topicHref":"mech/anchor.html"},{"name":"工具機建置","href":"equipment/build-machine-tool.html","topicHref":"equipment/build-machine-tool.html"},{"name":"冷卻液","href":"equipment/coolant.html","topicHref":"equipment/coolant.html"}]},{"name":"控制器","items":[{"name":"海德漢支援","href":"controllers/heidenhain-support.html","topicHref":"controllers/heidenhain-support.html"},{"name":"通用NC碼支援","href":"controllers/iso-nc-support.html","topicHref":"controllers/iso-nc-support.html"}]},{"name":"加工工具","items":[{"name":"銑刀","href":"milling-tool/cutter.html","topicHref":"milling-tool/cutter.html"},{"name":"APT工具","href":"milling-tool/apt.html","topicHref":"milling-tool/apt.html"},{"name":"智慧刀把","href":"milling-tool/smart-tool-holder.html","topicHref":"milling-tool/smart-tool-holder.html"}]},{"name":"腳本命令","items":[{"name":"文件任務","href":"script/Doc-Task/index.html","topicHref":"script/Doc-Task/index.html"},{"name":"碰撞檢測","href":"script/Collision/index.html","topicHref":"script/Collision/index.html"},{"name":"離料","href":"script/FlyPiece/index.html","topicHref":"script/FlyPiece/index.html"},{"name":"幾何差異","href":"script/GeomDiff/index.html","topicHref":"script/GeomDiff/index.html"},{"name":"映射","href":"script/Mapping/index.html","topicHref":"script/Mapping/index.html"},{"name":"銑削訓練","href":"script/MillingTraining/index.html","topicHref":"script/MillingTraining/index.html"},{"name":"NC優化","href":"script/NcOptimization/index.html","topicHref":"script/NcOptimization/index.html"},{"name":"解析度","href":"script/Resolution/index.html","topicHref":"script/Resolution/index.html"},{"name":"運行NC檔案","href":"script/RunNcFile/index.html","topicHref":"script/RunNcFile/index.html"},{"name":"運行時幾何","href":"script/RuntimeGeom/index.html","topicHref":"script/RuntimeGeom/index.html"},{"name":"輸出Shot檔案","href":"script/WriteShotFiles/index.html","topicHref":"script/WriteShotFiles/index.html"},{"name":"輸出Step檔案","href":"script/WriteStepFiles/index.html","topicHref":"script/WriteStepFiles/index.html"}]},{"name":"輸出","items":[{"name":"模擬步階輸出資訊","href":"output/simulation-step-output.html","topicHref":"output/simulation-step-output.html"}]},{"name":"優化","items":[{"name":"NC優化","href":"optimization/index.html","topicHref":"optimization/index.html"}]},{"name":"理論與技術","items":[{"name":"銑削物理座標系","href":"theory-and-technique/milling-physics-coordinates.html","topicHref":"theory-and-technique/milling-physics-coordinates.html"},{"name":"評估製程可加工性","href":"availability/index.html","topicHref":"availability/index.html"},{"name":"刀具壽命與磨耗","href":"technique/wear.html","topicHref":"technique/wear.html"}]}]}
|
||||
|
||||
Reference in New Issue
Block a user