This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /* | |
| Here is the key cap set the chamfers are for: | |
| https://www.printables.com/model/396950-xda-keycap-set | |
| */ | |
| // How many units wide the key cap is | |
| width_units = 1; // .25 | |
| // How many units tall the key cap is (*very* rarely needed) | |
| height_units = 1; // .25 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env python3 | |
| """ | |
| pause_after_ironing.py — Orca Slicer / Bambu Studio post-processing script. | |
| Inserts a timed pause (default 60s) immediately after the final ironing | |
| move of each *surface-finishing* layer — a layer whose only extrusions | |
| are surface-related (Ironing, Top surface, Outer wall, Bottom surface) | |
| with no structural work (Inner wall, infill, supports, custom gcode). | |
| Layers containing ironing alongside structural work are NOT paused — |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| include <BOSL2/std.scad>; | |
| module support_fin(raft_diameter, raft_thickness, fin_thickness) { | |
| other = raft_diameter / sqrt(2); | |
| translate([0, 0, other - raft_thickness]) | |
| union() { | |
| // raft | |
| translate([0, 0, -other + raft_thickness]) | |
| linear_extrude(raft_thickness) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| module slot() { | |
| inside_pts = [ | |
| [0, 8.5], [7.5, 8.5], [9, 8.5], [16, 8.5], [17.5, 8.5], [28.5, 8.5], | |
| [33.5, 3.5], [33.5, -3.5], [28.5, -8.5], [17.5, -8.5], [16, -8.5], | |
| [9, -8.5], [7.5, -8.5], [0, -8.5] | |
| ]; | |
| outside_pts = [ | |
| [0, 7], [7.5, 7], [9, 8.5], [16, 8.5], [17.5, 7], [28, 7], | |
| [32, 3], [32, -3], [28, -7], [17.5, -7], [16, -8.5], [9, -8.5], |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // Generates a grid of body meshes with pad meshes between them. | |
| // "Fence-post" pattern: N bodies get N-1 pads between them. | |
| // | |
| // STL files must be in the same directory as this script, | |
| // or provide absolute paths. | |
| // | |
| // Pad STLs should have their geometry positioned in object-local | |
| // coordinates so that when placed at the same grid points as the | |
| // bodies, they naturally align into the gaps: | |
| // - h_pad.stl: offset to bridge the horizontal gap |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| """ | |
| BodyExport.FCMacro | |
| Export each selected solid as both STEP and STL into the project file's directory. | |
| Files are named: <project name> - <body name>.<extension> | |
| If no solid objects are selected, top-level results are exported: | |
| - PartDesign::Body objects (unless they are operands of a standalone | |
| boolean result) | |
| - Standalone boolean results (Part::Cut, Part::Fuse, Part::Common) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env -S uv run --script | |
| # /// script | |
| # dependencies = ["numpy-stl"] | |
| # /// | |
| """ | |
| This script is for creating stacks of more-or-less flat meshes that have | |
| symmetrical top and bottom faces (e.g. Multiboard). The gap (default 0.2mm) | |
| should be set to your slicer's layer height. The resulting file should be | |
| printed with 3 walls, 15% infill, with ironing of all top surfaces enabled. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| """ | |
| Parse Guild Wars Reforged skill template codes | |
| See https://wiki.guildwars.com/wiki/Skill_template_format for reference and | |
| profession/attribute/skill indexes. | |
| """ | |
| # stdlib | |
| from dataclasses import dataclass | |
| from typing import Any, Generator |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /** printable ASCII characters */ | |
| const ascii = []; | |
| for (let i = 33; i <= 126; ascii.push(String.fromCharCode(i++))); | |
| /** generate random string */ | |
| const randomString = limit => { | |
| const result = []; | |
| for (let i = 0; i < limit; i++) { | |
| const index = Math.floor(Math.random() * (126 - 33) + 33); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import { UserConfig } from "@11ty/eleventy"; | |
| import { DOMParser } from "@xmldom/xmldom"; | |
| import { transform } from "esbuild"; | |
| import { minify } from "html-minifier"; | |
| /** cache for content of script tags with an ID */ | |
| const scriptCache = new Map<string, string>(); | |
| /** DOM parser for navigating the rendered document; warnings are ignored */ | |
| const parser = new DOMParser({ errorHandler: { warning: () => {} } }); |
NewerOlder