Skip to content

Added Tool Library#3093

Merged
breiler merged 5 commits into
winder:masterfrom
dnikodem84:AddToolLibrary
May 13, 2026
Merged

Added Tool Library#3093
breiler merged 5 commits into
winder:masterfrom
dnikodem84:AddToolLibrary

Conversation

@dnikodem84
Copy link
Copy Markdown
Contributor

  • "Pick from Library..." button added to the existing Tool Settings dialog. Picking a tool populates the fields and shows its name; editing a field away from the library value
    turns it amber until it matches again. The picker also has a "Manage Library..." button for adding/editing tools.
  • Tool Library manager — list on the left, editor on the right, with Add / Duplicate / Delete / Revert. Built-in tools can be edited and reverted, but not deleted.
  • 41 pre-seeded tools: Upcut, Downcut, Ball, Compression, Straight in 1/16", 1/8", 1/4", 1/2", 1" sizes; V-bits in 30°, 60°, 90° across the same sizes; plus a "Custom" entry.
  • Per-tool diameter units stick with the tool — 1/4" endmills always display as 0.25 in, 3 mm endmills always as 3 mm. Toggling the unit in the editor converts the value.
  • Feed / plunge / depth stay in machine units and now show unit labels (mm/min, mm) next to each field.
  • Library persists across projects at ~/.ugs/tool-library.json.
  • Project files remember which tool they were built with. On opening a project whose tool differs from your library, UGS prompts: use the project's tool for this session, update
    the library, or keep your library version. If the project's tool isn't in your library at all, it offers to import it.
  • Existing projects load unchanged — no prompt, no overwriting of your current tool settings.

commit d77a42306d059f2751d57f7fccec90a8d3d1d67e
Author: Damian <132374191+dnikodem84@users.noreply.github.com>
Date:   Fri Apr 24 02:13:34 2026 -0700

    fixed issues

commit 5eea270
Author: Damian <132374191+dnikodem84@users.noreply.github.com>
Date:   Fri Apr 24 01:50:28 2026 -0700

    Initial Tool Library Implementation

    - New "Library" button on the designer overlay, next to Tool and Stock.
      Opens a manager dialog with a list of tools on the left and an editor
      on the right (Add / Duplicate / Delete / Revert).

    - 41 pre-seeded tools out of the box: Upcut, Downcut, Ball, Compression,
      Straight in 1/16", 1/8", 1/4", 1/2", 1" sizes; V-bits in 30, 60, 90
      degree variants across the same sizes; plus a "Custom" entry. Built-ins
      can be edited and reverted, but not deleted.

    - Per-tool diameter units stick with the tool - 1/4" endmills always
      display as 0.25 in, 3 mm endmills always as 3 mm. Toggling the unit in
      the editor converts the value.

    - Feed / plunge / depth stay in machine units and now show unit labels
      (mm/min, mm, etc.) next to each field.

    - "Pick from Library..." button on the existing Tool Settings dialog.
      Picking a tool populates the fields and shows its name. Any field
      edited away from the library value turns amber until it matches again.

    - Library persists across projects at ~/.ugs/tool-library.json (shared
      between all your designs).

    - Project files remember which tool they were built with. On opening a
      project whose tool differs from your library, UGS prompts: use the
      project's tool for this session, update the library, or keep your
      library version. If the project's tool isn't in your library at all,
      it offers to import it.

    - Existing projects load unchanged - no prompt, no overwriting of your
      current tool settings.
@dnikodem84 dnikodem84 marked this pull request as draft April 24, 2026 09:25
@dnikodem84 dnikodem84 marked this pull request as ready for review April 25, 2026 16:07
@dnikodem84
Copy link
Copy Markdown
Contributor Author

This is a first step towards some significant depthmap improvements ( roughing and finishing pass, proper V-Carving with Minkowski dilation + iso-scallop ). Those depthmap improvements will add an optional tool to each cuttable, and add support for exporting / running one tool at a time.

At that point it should be pretty trivial to add support for "T" commands if the machine supports them.

@breiler
Copy link
Copy Markdown
Collaborator

breiler commented May 2, 2026

I gave it a try, nice work. I found a couple of issues that would like having fixed:

  • The step over percent is scaled 100x wrong. If I set 30% it will become 3000% in the tool library:
image
  • I would expect the text boxes to not be yellow when using the custom tool.
  • The editing UI gets squashed (have only tried on linux):
image

@breiler
Copy link
Copy Markdown
Collaborator

breiler commented May 9, 2026

Sorry for the late response, it has been a busy week for me.

I gave this some testing again and it will still show the fields to have changed when I select a predefined tool and open up the dialog again.

Screencast.from.2026-05-09.08-24-51.mp4

@breiler breiler merged commit f151c14 into winder:master May 13, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants