Archived
deploy webservice static-file routing for docsite folder URLs, per-instance step-cache db, and constant-height panel title bars.
This commit is contained in:
@@ -89,7 +89,7 @@
|
||||
|
||||
<p>The page triggers by <a href="../main-panel.html">Main Panel</a>.</p>
|
||||
<p>The key model is MachiningToolHouse.
|
||||
The model <a class="xref" href="../../api/Hi.HiNcKits.UserService.html">UserService</a> is delivered by the host GUI.</p>
|
||||
The model <a class="xref" href="../../sample/Sample.Common.UserService.html">UserService</a> is delivered by the host GUI.</p>
|
||||
<h2 id="layout">Layout</h2>
|
||||
<ul>
|
||||
<li>Tool House Page
|
||||
@@ -147,11 +147,11 @@ The panel has CRUD (and Duplicate) of the tools. Read and Update the selected to
|
||||
<li>(Options of <a class="xref" href="../../api/Hi.Milling.Cutters.MillingCutterEditorDisplayee.html">MillingCutterEditorDisplayee</a>)
|
||||
<ul>
|
||||
<li>Shape Mode SubMenu
|
||||
Set <a class="xref" href="../../api/Hi.Milling.Cutters.MillingCutterEditorDisplayee.html#Hi_Milling_Cutters_MillingCutterEditorDisplayee_ShapeMode">ShapeMode</a> to Solid Bounding Shape if <a class="xref" href="../../api/Hi.HiNcKits.UserService.html#Hi_HiNcKits_UserService_EnablePhysics">EnablePhysics</a> is false on GUI initialization.
|
||||
Set <a class="xref" href="../../api/Hi.Milling.Cutters.MillingCutterEditorDisplayee.html#Hi_Milling_Cutters_MillingCutterEditorDisplayee_ShapeMode">ShapeMode</a> to Solid Bounding Shape if <a class="xref" href="../../sample/Sample.Common.UserService.html#Sample_Common_UserService_EnablePhysics">EnablePhysics</a> is false on GUI initialization.
|
||||
<ul>
|
||||
<li>Solid Bounding Shape Ratio Button</li>
|
||||
<li>Detail Physics Shape Ratio Button
|
||||
Visible if <a class="xref" href="../../api/Hi.HiNcKits.UserService.html#Hi_HiNcKits_UserService_EnablePhysics">EnablePhysics</a> is true.</li>
|
||||
Visible if <a class="xref" href="../../sample/Sample.Common.UserService.html#Sample_Common_UserService_EnablePhysics">EnablePhysics</a> is true.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@@ -212,31 +212,38 @@ Visible if <a class="xref" href="../../api/Hi.HiNcKits.UserService.html#Hi_HiNcK
|
||||
<li>Mech/ToolHouse/ToolHouseWindow</li>
|
||||
</ul>
|
||||
<h3 id="web-page-application-source-code-path">Web Page Application Source Code Path</h3>
|
||||
<p>HiNC-2025-webservice (Quasar CLI SPA):</p>
|
||||
<p>HiNC-2025-webservice (Quasar CLI SPA). The page is built on the shared Control Tree: the tool nodes on the left, the selected node's tab cascade in the middle, the canvas on the right.</p>
|
||||
<ul>
|
||||
<li><code>wwwroot-src/src/pages/ToolHousePage.vue</code> — routed page: left Tool List (with inline double-click Tool ID rename) + middle Selected Tool Editor + right Viewer, three <code><q-splitter></code> panes with Display Options dropdown (Show Cutter / Show Holder + 3 anchor flags + Holder Rendering Mode).</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/StickToolEditor.vue</code> — Cutter / Holder / Clamping / Int. Holder / Info tabs.</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/IntelligentHolderDiv.vue</code> — Intelligent Holder (Observation Location) editor: <code>ObservationAnchorReference</code> enum dropdown + relative Z + ring radius.</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/CutterManagementPanel.vue</code> — cutter-type select + inner tabs (General / Flute Profile / Flute Contours / Optimization).</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/contourTray/ContourTrayDiv.vue</code> — Uniform / Free tray switch + <code>FreeContourTray</code> child CRUD.</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/contourTray/FluteContourDiv.vue</code> — SetupAngle + SideContour selector + BottomContour selector.</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/contourTray/ConstHelixSideContourDiv.vue</code> — Helix / Radial Rake / Radial Relief angles.</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/contourTray/SlideBottomContourDiv.vue</code> — OuterRadius / CutterLength / Eccentric / Disk / AxialRake.</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/MillingCutterOptLimitDiv.vue</code> — EnableOpt + MinFeed / MaxFeed / YieldingUtilizationFactor.</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/HolderPanel.vue</code> — None / CylindroidHolder / FreeformHolder switch; dispatches to a per-type holder editor component.</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/CylindroidHolderEditor.vue</code> — dedicated CylindroidHolder editor (Geometry / Resolution / Info tabs); wraps the reusable <code>CylindroidEditor.vue</code> and resyncs the holder (<code>UpdateByCylindroid()</code>) after geometry / resolution edits.</li>
|
||||
<li><code>wwwroot-src/src/pages/ToolHousePage.vue</code> — routed page: <code>ToolHouseRootPanel</code> + tool list on the left, a <code>NodeTabCascade</code> tab strip for the selected tool in the middle, <code>ToolHouseSetupPanel</code> on the right, in resizable <code><q-splitter></code> panes.</li>
|
||||
<li><code>wwwroot-src/src/components/toolhouse/ToolHouseSetupPanel.vue</code> — the canvas column: one RenderingCanvas bound server-side to <code>MillingToolEditorDisplayee</code>, following the page's selected tool, with the Display Options dropdown (Show Cutter / Show Holder + 3 anchor flags + Holder Rendering Mode + Cutter Shape Mode).</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/ToolHouseRootPanel.vue</code> — the tool-house root node: Object Management (Load / Save / Paste / XML of the <code>MachiningToolHouse</code>) + New Tool.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/ToolNodePanel.vue</code> — one tool's General tab: Tool ID / Note / auto Abstract Note + Duplicate / Delete. Mounting it points the tool canvas at that tool.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/ToolCutterPanel.vue</code> — the Cutter stem: cutter type selector plus the MillingCutter identity fields (Shank Mass / Hone Radius / Relief Angle).</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/CutterSectionPanel.vue</code> — the cutter's inner tabs, keyed off the node's role path (<code>material</code> / <code>profile</code> / <code>upper-beam</code> / <code>opt</code>). Flute Profile is edited inline; the others dispatch to <code>toolhouse/MaterialDiv.vue</code> (which grows <code>CoatingLayersDiv.vue</code>), <code>toolhouse/UpperBeamDiv.vue</code> and <code>toolhouse/MillingCutterOptLimitDiv.vue</code>.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/CutterContoursPanel.vue</code> — the Flute Contours stem: the fluting <strong>type</strong> selector only. The selected fluting's editor grows below it.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/FlutingPanel.vue</code> — the concrete fluting node and its fluting-level fields; uniform fluting grows one Baseline Contour, free fluting one tab per flute.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/FluteContourPanel.vue</code> — one flute contour node (<code>baseline</code>, or <code>flute-<i></code> for a free fluting): hosts Setup Angle, with Side Contour and Bottom Contour as sub-tabs. <code>fluteContourNode.ts</code> carries the shared re-commit.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/FluteSideContourPanel.vue</code> / <code>FluteBottomContourPanel.vue</code> — kind selector + editor, dispatching to <code>toolhouse/fluting/ConstHelixSideContourDiv.vue</code>, <code>FreeformSideContourDiv.vue</code>, <code>SlideBottomContourDiv.vue</code> and <code>FreeformBottomContourDiv.vue</code>; the two freeform editors share <code>SpanContourPosListDiv.vue</code> for the per-flute position list.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/ToolHolderPanel.vue</code> — the Holder stem: holder type selector plus the Cylindroid holder's Name / Note / auto Abstract Note.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/HolderSectionPanel.vue</code> — the Cylindroid holder's Geometry (the Z-R profile, via <code>geom/CylindroidEditor.vue</code>) and Resolution tabs; resyncs the holder (<code>UpdateByCylindroid()</code>) after each edit.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/ToolClampingPanel.vue</code> — the Clamping tab: <code>ExposedCutterHeight</code> = <code>PreservedDistance</code> + <code>FluteHeight</code>; changing either field updates the other on the server.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/toolhouse/ToolIntelligentPanel.vue</code> — the Intelligent Holder tab; a thin wrapper over <code>toolhouse/IntelligentHolderDiv.vue</code> (Observation Location: <code>ObservationAnchorReference</code> dropdown + relative Z + ring radius).</li>
|
||||
<li><code>wwwroot-src/src/api/toolHouse.ts</code> — typed wrapper over three server modules: <code>ToolHouseController</code> (<code>/api/ToolHouse</code>), <code>CutterController</code> (<code>/api/Cutter</code>) and <code>ToolHouseDisplayController</code> (<code>/api/mech/tool-house-display</code>).</li>
|
||||
<li><code>wwwroot-src/src/api/cylindroidHolder.ts</code> — typed wrapper over <code>CylindroidHolderController</code>.</li>
|
||||
<li><code>wwwroot-src/src/api/toolHouse.ts</code> — typed wrapper over <code>ToolHouseController</code> (CRUD + Initialize / SelectTool / EnsureCutter / shaper profile / contour tray / holder / <code>FreeContour</code> CRUD / opt-limit / general) and <code>ToolHouseDisplayController</code> (Show flags + Holder rendering mode + Cutter shape mode).</li>
|
||||
<li><code>Mech/ToolHouseController.cs</code> — REST endpoints: <code>GET /</code>, <code>GET /{id}</code>, <code>GET/PUT /{id}/observation</code>, <code>PUT /{id}/note | exposed-height | preserved-distance | shaper-profile | contour-tray | general | opt-limit</code>, <code>POST /Initialize | SelectTool | CreateTool | DuplicateTool | RenameTool | EnsureCutter | ClearCutter | SetHolderType | GetHolder | ClearToolCache</code>, <code>DELETE /DeleteTool</code>, and <code>FreeContourTray</code> child CRUD at <code>/{id}/contour-tray/contours[/{index}]</code>.</li>
|
||||
<li><code>Mech/ToolHouseController.cs</code> — the tool-house collection and the tool-level fields. REST endpoints: <code>GET /</code>, <code>GET /{id}</code>, <code>GET /GetHolder</code>, <code>GET/PUT /{id}/observation</code>, <code>PUT /{id}/note | exposed-height | preserved-distance</code>, <code>POST /Initialize | Update | SelectTool | CreateTool | DuplicateTool | RenameTool | SetHolderType | ClearToolCache</code>, <code>DELETE /DeleteTool</code>.</li>
|
||||
<li><code>Mech/CutterController.cs</code> — cutter editing, split out of <code>ToolHouseController</code>. REST endpoints at <code>/api/Cutter/*</code>: <code>POST EnsureCutter | ClearCutter</code>, <code>PUT /{id}/shaper-profile | fluting | general | opt-limit</code>, <code>FreeFluting</code> child CRUD at <code>/{id}/fluting/contours[/{index}]</code>, <code>GET/POST /{id}/upper-beam[/create | /resync]</code>, and the material endpoints <code>/{id}/flute-material/*</code>, <code>/{id}/shank-material/*</code>, <code>/{id}/coating-layers/*</code>.</li>
|
||||
<li><code>Mech/ToolHouseDisplayController.cs</code> — REST endpoints at <code>/api/mech/tool-house-display/*</code> for display options (initialize, select-tool, show-cutter / show-holder / show-geom-anchor / show-spindle-buckle / show-cutter-buckle, holder-rendering-mode, cutter-shape-mode, clear-cache).</li>
|
||||
<li><code>Mech/CylindroidHolderController.cs</code> — holder-aware layer over a tool's <code>CylindroidHolder</code>. REST endpoints at <code>/api/CylindroidHolder/*</code>: <code>GET Get</code> (returns name / note / abstract note / resolution + indexes the holder's <code>Cylindroid</code>), <code>POST UpdateGeometryContent | SetName | SetNote | SetPolarResolution</code>. <code>UpdateGeometryContent</code> is the post-edit resync (<code>UpdateByCylindroid()</code> + <code>ClearCache()</code>) that the generic <code>CylindroidController</code> cannot perform.</li>
|
||||
</ul>
|
||||
<div class="NOTE">
|
||||
<h5>Note</h5>
|
||||
<p>The engine's <code>ContourTray</code> type family was renamed <strong>Fluting</strong>. Both spellings still resolve: the pre-rename <code>UniformContourTray</code> / <code>FreeContourTray</code> DTO type names are still accepted by <code>PUT /{id}/fluting</code>, and a Control-Tree id minted before the rename (<code>…/cutter/contours/tray…</code>) is migrated to <code>…/contours/fluting…</code> on the way in.</p>
|
||||
</div>
|
||||
<p>Not yet ported to the Quasar page (deferred; edit via the WPF client in the meantime):</p>
|
||||
<ul>
|
||||
<li>FreeformRemover cutter type.</li>
|
||||
<li>FreeformHolder geometry / transformer editing.</li>
|
||||
<li>FreeformSideContour per-flute CSV position list editing. Existing FreeformSideContour values are preserved on save but read-only in the web UI.</li>
|
||||
<li>Physics-only cutter sub-tabs (Material, InsertCutter, FluteInnerBeam, UpperBeam).</li>
|
||||
<li>InsertCutter and FluteInnerBeam physics sub-tabs.</li>
|
||||
<li>CustomSpinningProfile shaper profile type.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user