*p5.brush
p5.brush.js is a versatile library for the p5.js ecosystem, tailored for artists, designers, and hobbyists who wish to explore natural textures in generative art. This library extends the drawing capa
Rotates SWOOD CAM .XXL programs 90 degrees so the long side runs along the machine X axis. Rule proven against 1,284 real programs.
Translation pending
PluginsHTML · PowerShellGitHub @gervdalius-droidOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Rotates SWOOD CAM .XXL part programs so the long side runs along the machine's X axis.
For an SCM Startech CN Plus. Drop the file in, download the fixed one.
🇱🇹 Lietuviškas aprašymas: README.lt.md
SWOOD exports a part in the orientation it has in the model, not the orientation the
machine accepts. Example — DESINE_SPORTO_RUBINE_LENKTAS_1OP.XXL:
H DX=684 DY=2200 DZ=18 ... <-- DY 2200 mm doesn't fit the Y travel
So somebody turns it by hand. Every time.
Before automating this I parsed 1,284 programs that had actually been cut on this machine:
| value | |
|---|---|
largest DX used | 2746 mm |
largest DY used | 1015 mm |
programs where DY > DX | 125 (9.7 %) — all of them fit within Y |
programs with DY > 1300 | 0 |
Y is the short axis, and nothing real has ever needed more than 1015 mm of it. DY=2200 is
physically impossible, so rotating it is not a heuristic — it's the only valid output. That's
what made it safe to do automatically.
Four steps, one screen:
.XXL file. If the part is lying across the axes (DY > DX) it is rotated
immediately — that's the whole point of opening it.It rewrites the header, rotates every operation's coordinates, remaps the face/edge codes and arc directions, and stamps the file so you can tell a fixed program from an original.
Also handles thickness override and edge/routing operations, with fixtures covering SWOOD and Maestro output.
+ Nauja detalė (top right) opens a part builder, so the workshop can make a program
without the engineer or SolidWorks: set the panel size, add holes (Ø5/8/15/35, blind or
through), shelf-pin rows, hinge cups, edge holes, grooves, corner notches, cut-outs and round
holes, position each one from the edge it was measured from, drag it on the drawing, and
download or send the programs straight to the machine.
It writes exactly what step2xxl writes (same lines, same face numbering, _1OP/_2OP/_3OP)
and follows the same machine rules: underside work goes to a turned-over 2OP, Ø5 in a long edge
to a 90°-rotated program, routing always leaves 2 mm, ramps in instead of plunging and never
goes more than 20 mm outside the panel. Invalid parts can't be downloaded; every check says
why in plain Lithuanian.
python3 serve.py # http://localhost:8748/
Tests: http://localhost:8748/test.html — 375 checks against real .XXL fixtures in
fixtures/ (SWOOD portrait/edges, Maestro arcs/edges/routing).
There's a windows/ folder with a double-click launcher for the shop PC, because the person
using this shouldn't have to know what a terminal is.
Vanilla JavaScript, HTML Canvas, no dependencies, no build step. ~3,300 lines.