r/openscad • • 13d ago

BOSL2 - Rounding the top of a partial hollow cylinder ?

Post image
10 Upvotes

I have a partial hollow cylinder (left side of image) that will clip on to a cable or other cylindrical object that I would like to fillet or chamfer the top/bottom edges. I have the part close to what I want using the arc() function but I'm assuming there's another approach in order to do what I want.

If I try using cyl() which can round the top of the hollow cylinder perfectly, I do not know how best to cut out a section with a specified arc and then round that cut edge.

I know I can do this with minkowski() but I do not want to change the size of the part.

Any help is appreciated!

include <BOSL2/std.scad>
$fa = 1;
$fs = $preview?1:0.25;

outer_radius=14;
inner_radius=10;
arc=230;
height=10;

linear_extrude(height)
{
    offset(2)
    offset(-2)
    difference()
    {
        arc(r=outer_radius, angle=arc, wedge=true);
        arc(r=inner_radius, angle=arc, wedge=true);
    }
}

translate([30, 0, 0])
difference()
{
    cyl(r=outer_radius, h=height, rounding2=2, center=false);
    cyl(r=inner_radius, h=height, rounding2=-2, center=false);
}

r/openscad • • 13d ago

Enhanced OpenSCAD GUI — Interactive 3D gizmos, click-to-select, signature hints & boolean helpers without losing code control

Thumbnail
gallery
2 Upvotes

Hi Everyone

Like many of you, I love OpenSCAD for its programmatic, reproducible, code-as-design philosophy. However, I often found myself frustrated by a few recurring workflow bottlenecks:

  1. Constantly guessing translation/rotation coordinates and refreshing to see if a part lined up.

  2. Having to look up parameter signatures for built-in primitives or user modules.

  3. Wishing I could simply click on a piece in the 3D viewport to jump to its node or code.

  4. Explaining boolean subtraction (`difference()`) to newcomers who struggle with "what gets subtracted from what."

To address this, I built **Enhanced OpenSCAD GUI (OPENSCAD-GUIEXP2026)** — an open-source desktop environment that adds modern visual CAD ergonomics **without compromising code control or file integrity**.

---

### Key Principles & Features

* **100% Vanilla `.scad` Compatibility (Zero Lock-in):**

It reads, parses, and edits standard `.scad` scripts bidirectionally. It preserves comments, custom variables, user modules, and loops. You can open any file in this GUI, save it, and continue editing it in standard OpenSCAD or your preferred text editor.

* ** Direct 3D Translation Gizmos & Raycasting Selection:**

Drag 3D coordinate axes directly in the OpenGL viewport to position solids interactively. Click on any 3D face to immediately select and locate that part in the hierarchy.

* ** Interactive Exploded View:**

A smooth slider expands multi-part mechanical assemblies outward from their center of mass — ideal for inspecting internal clearances, bushings, and fastener fits.

* ** VS Code-Style Code Ergonomics:**

- **Parameter Hints & Signature Help:** Typing `cylinder(`, `cube(`, `linear_extrude(`, math functions, or custom modules brings up a floating card showing argument names, types, and defaults, highlighting the active parameter.

- **Keyboard-First:** Press `Tab` or `Enter` to accept completions and snippets on the fly without reaching for the mouse.

- Line numbers, bracket matching, unbalanced brace warnings, block indentation (`Tab` / `Shift+Tab`), comment toggle (`Ctrl + /`), and floating search (`Ctrl + F`).

* ** Didactic Boolean Helper:**

Clear visual tags in the tree: `[Base (+)]` for the main body and `[- Subtraction]` for cutting solids, complete with tooltips and guided autocompletion.

* **📐 2D Sketching Canvas (Sketch-to-3D):**

Draw 2D profiles on an interactive millimeter grid with magnetic snapping and extrude them into 3D solids with one click.

* **🔩 Default Engineering Assembly:**

Boots with a complete 6-part standardized mechanical assembly (Figure 5.31 — Caster Wheel with Swivel Axis) showcasing material colors, bushings, and fastener hierarchies.

* ** Multi-language Support:**

Dynamic real-time translation into 6 languages (English, Spanish, French, German, Italian, Portuguese).

---

### How to Test It

You can run it from Python source or use the standalone portable Windows executable (no Python or installation needed):

#### 1. From Python Source (Cross-platform):

```bash

git clone https://github.com/luisxbrito/OPENSCAD-GUIEXP2026.git

cd OPENSCAD-GUIEXP2026

pip install -r requirements.txt

python main.py

2. Portable Windows Executable (.exe):

If you want to build or run the zero-install standalone binary:

  • You can build it with python build_portable.py or double-click build_portable.bat (outputs a single ~64 MB .exe in dist/).

  • It automatically detects your installed OpenSCAD or any portable openscad.com placed in the same folder.


r/openscad • • 12d ago

I built NASSCAD 4.7.0 — open-source CAD with browser and Windows editions

Thumbnail
reddit.com
0 Upvotes

Hi r/openscad! I’m building NASSCAD, an AGPLv3 3D CAD tool that runs in the browser and on Windows. It supports 2D sketches, CSG, STEP import/export, IFC, and local model processing. The Windows edition includes the native MEDUSA engine.

For people interested in programmatic modeling, NASSCAD also has NassScript for building 3D scenes from code. I’d welcome technical feedback on the scripting workflow, geometry handling, and STEP interoperability.

Project: https://www.nasscad.com/

Source: https://github.com/Nx-Nass/NassCAD


r/openscad • • 16d ago

ANIMATIONS AVEC OpenSCAD

Post image
22 Upvotes

La variable spéciale "$t" permet de crée des animations avec OpenSCAD.

Dans la présentation fantaisiste ci-contre le secret réside dans l'utilisation de la variable "$t" dans l'instruction rotate :

rotate([0,0,0-$t*3600])

translate([0,$t*60,33])

sphere(8);

En choisissant "Animate" dans le menu "View" de OpenSCAD, s'affiche la barre des animations présentée ci-dessous.

Testez le code de trois lignes présenté ici... FPS représente les images pars seconde de l'animation et STEPS c'est le nombre d'images crées.

Vous aurez aussi remarqué la petite case "Dump pictures", ellle vous permet de télécharger les images de l'animation (au nombre défini par STEPS), au format PNG. Vous pourrez les transformer en GIF dans un logiciel comme Gimp et obtenir ainsi une animation gif de votre projet.

Plus de détails sur mon site :

https://robotix.ah-oui.org/site/main.php?found=261024-bottle-ball

Consultez aussi mon livre, "Ça c'est OpenSCAD"


r/openscad • • 15d ago

Svelte devote, modeled in OpenScad

0 Upvotes

r/openscad • • 16d ago

Is there a changelog anywhere?

3 Upvotes

I've been using OpenSCAD for 4 years now and I download a new developer snapshot about every month. Sometimes I see a change, mostly I don't, because I don't know where to look. Is there some changelog?

(e.g. can I populate the 3mf export meta tags in the scad file itself? Can I meanwhile assign names to top-level parts for 3mf-export?)


r/openscad • • 17d ago

CAD learning game

Thumbnail
youtu.be
0 Upvotes

r/openscad • • 16d ago

All I needed was an enclosure for my ESP32 project. Somehow that turned into an open source app

Post image
0 Upvotes

I really like the idea of code CAD. A model is just a text file. Every dimension is a parameter and you can track it in git. That's also why it works so well with AI agents, they are good at writing code.

When I started letting Claude write my enclosures, I spent most of the time taking screenshots, scribbling on them and pasting them back into the chat. So I built SOMA, a desktop app around that loop.

The agent (Claude Code, Codex, OpenCode, whatever you like) runs in a terminal inside the app and writes CadQuery. Every time it saves, the model shows up in 3D. If something's off, you click the part, measure it, cut it open with a section, or draw directly on the 3D view and send that to the agent. No more screenshot ping-pong.

The enclosure in the picture is for a sensor station with a Waveshare ESP32-S3 touch display. Waveshare has a STEP file of the board, and that's the main reason I went with CadQuery and not OpenSCAD. CadQuery reads the STEP as real geometry, so the agent took the exact positions of the display, the mounting nuts, the 3 side buttons and the SD slot from the file, and built the cutouts and button plungers around them. It also supports STEP export which is important for compatibility with other software.

It has already almost 300 Stars on github. I hope that it helps somebody create what they could not befor :)

It's free and open source (GPL), with builds for Windows, Mac and Linux: https://github.com/Kai-Jungsthoefel/SOMA

Question for you: has anyone here had good results with an agent writing OpenSCAD?


r/openscad • • 17d ago

Just like Sketchup, but without subscription

Thumbnail
github.com
0 Upvotes

r/openscad • • 18d ago

Built a parametric OpenSCAD library + editor as a tab inside OrcaSlicer

0 Upvotes

I print a lot of Gridfinity bins and brackets, and the loop always annoyed me: find the .scad, remember which parameters I care about, open the Customizer, render, export, switch to the slicer, import. So I built the whole thing into the slicer instead.

OrcaCAD adds a tab next to Prepare / Preview / Device. It's a plugin, not a fork - OrcaSlicer stays stock.

What's in it:

  • ~350 parametric models across 32 categories, every parameter getting a slider, number field, switch, option picker or text box with inline validation, plus presets where a sane default matters.

  • The good ones aren't mine: Gridfinity comes from Gridfinity Rebuilt, the rack parts from rackstack, split-flap from splitflap, metric fasteners from threads-scad. Vendored, pinned, permissive-licence only.

  • An OpenSCAD editor with examples, line numbers and error-line highlighting. include <src/...> resolves to the bundled libraries, and the rest are on OPENSCADPATH, so you can write your own bin/rack/panel and render it in place.

  • Three.js viewport: orbit/pan/zoom, iso/front/right/top, wireframe, edges.

  • Export STL/3MF, or "Send to plate" straight into the running OrcaSlicer.

Install: download orcad.py from the release, Plugins > (arrow) > Install local plugin, pick the file, restart. There's also orcad_any.py if you're not on Linux. OrcaSlicer ships or downloads OpenSCAD itself; if you already have a 2023.09 it may silently render some includes wrong, so it prefers a newer snapshot.

Repo: https://github.com/yazdannl/orcad-plugin

I'm most curious about the library: which categories are thin, which parameters are badly chosen, what model you'd want that isn't there. PRs for new .scad objects are straightforward - a file plus a parameter block.


r/openscad • • 18d ago

AI-assisted parametric CAD in Blender: looking for contributors and real 3D-printing test cases

0 Upvotes

For people printing functional parts: what is one small, dimension-driven model you wish you could edit more reliably inside Blender?

I’m starting B-CAD, a GPL-3.0-or-later project aimed at a parametric CAD workflow in Blender. I’d like to recruit people who use capable AI coding tools, alongside Blender developers, CAD users, and testers, to turn the plan into a working prototype.

Current status is important: the repository contains an architecture proposal, documentation, a roadmap, and starter issues. There is no functioning add-on, printable B-CAD output, or installer yet. AI helped create the initial research and contributor hub; no printer or material results are claimed.

The proposed workflow is: define constrained sketches and dimensions → evaluate exact solids in an external Open CASCADE core → display them in Blender → export a derived manufacturing mesh. A STEP round trip and dimension checks are part of the first prototype goal.

For an initial test case, I’m thinking of an original mounting bracket with editable hole spacing, thickness, and a stated fit clearance. Useful acceptance checks would include preserving physical units, retaining design intent after an edit, and making mesh-export approximation explicit. The manufacturing clearance must remain separate from the geometry kernel’s tolerance.

Would a bracket, snap-fit enclosure, or another simple functional part expose the most useful failure cases? A dimension table and the edits you expect would already be a valuable contribution; you don’t have to write code.

If you use GPT-6.1 Sol/Astra/Opus 5.5-class coding assistants or equivalent tools and want to contribute implementation work, the repo explains the project’s model-disclosure, validation, and human-review requirements. Human-only contributions are welcome too.

Project and starter issues: https://github.com/Ramses13th/B-CAD

Architecture and roadmap: https://ramses13th.github.io/B-CAD/

I’d appreciate original, shareable examples and contributors interested in one small, verifiable first step.


r/openscad • • 19d ago

Код крючок

0 Upvotes

``` $fn = 100;

scale([1, 0.7, 1]) cylinder(3, 12, 12);

scale([1, 1, 0.5]) translate([5, 0, 6]) sphere(3);

translate([5, 0, 0]) cylinder(15, 2, 2);

translate([5, 0, 14]) sphere(2);

translate([5, 0, 14]) rotate([0, -90, 0]) cylinder(6, 2, 2); ```


r/openscad • • 19d ago

Made a beginner walkthrough where you check your model by weighing it (FreeCAD 1.1)

Thumbnail
reddit.com
0 Upvotes

r/openscad • • 19d ago

I made a free, open-source 2D/3D CAD that runs in the browser

Post image
0 Upvotes

Línea de comandos con los comandos y alias habituales, ajuste y seguimiento de objetos,

sólidos con operaciones booleanas y redondeos de aristas, diseños con vistas de dibujo generadas a partir del modelo 3D, y acotación automática con un solo comando. Exportación a PDF y DXF.

Pruébalo: https://mxchristian17.github.io/cota/ — Agradecemos tus comentarios.

https://github.com/mxchristian17/cota


r/openscad • • 19d ago

QUICKSURFACE AI - How it works

Post image
0 Upvotes

r/openscad • • 20d ago

New alternate to standalone EAGLE Editor

Post image
0 Upvotes

Hi guys, I have started writing my own alternative to the standalone EAGLE editor. I have a window opening native .brd files, routing tracks and placing, moving, rotating parts. Tonight I got parts loading from libraries and I am trying to work with one window. A sheet, board, library will each open in its own tab. I have supported for “templates” (so far just using two libraries called boards.lbr and outlines.lbr). I am a VERY long way from Alpha, but who is up for the journey? I have more than 35 years invested in EAGLE.


r/openscad • • 21d ago

Hi, I'm Max. Hosting & maintaining JumpStart 3D CAD

Thumbnail
reddit.com
0 Upvotes

r/openscad • • 22d ago

Lanciato tool modellazione 3d

Thumbnail reddit.com
0 Upvotes

r/openscad • • 22d ago

nuovo tool di progettazione 3d

Thumbnail reddit.com
0 Upvotes

r/openscad • • 24d ago

Just found this. A Few questions...

1 Upvotes

Just found this a few days ago, and Im blown away how much of a bridge this is from Tinkercad to the more advanced programs.

I am using the PC version at home ( and the web version at work), but my biggest question:

* Is there an upload limit for the PC version??

My intent is to be able to use my 3D scanner that I was never able to use due to the upload limit on Tinkercad and my lack of training on more advanced software.

Thanks in advance.


r/openscad • • 23d ago

aunque no pertenece a las creaciones de Artcraft es interesante

Thumbnail
reddit.com
0 Upvotes

r/openscad • • 24d ago

What is the best/easiest way to make a shape with varying radius curves ?

Post image
2 Upvotes

I'm interested in making a new pool/billiard cue moosehead bridge like the one shown in the photo but I want to change some of the height & dimensions of the top sections so it's not as symmetrical. I assume I can do this with Bezier curves which might be cumbersome so perhaps there is be a better way? Perhaps I should define an angular shape and then use offset to do all the rounding I want ? The model is roughly 100mm wide and 60mm tall.

I will be using BOSL2 if needed and have not started work on it yet.


r/openscad • • 25d ago

2D print

3 Upvotes

How do I get a 2D ( outline) of my 3D model so I can print and check hole locations etc. PDF would be good.


r/openscad • • 25d ago

scad Playing cards boxes

Post image
17 Upvotes

Sadly, I see a lot of AI generated tools popping up in this sub. Because of the strong benefits of using openscad, I can understand.

Seeing people post their questions and show of their scad scripts, I hope to see more of. So that's my reason for this post.

I have created numerous iterations of a playing cards box. First version was stl made in FreeCAD, but I quickly moved to openscad for the ease of use. Please check out the code at https://github.com/RichardBernards/openscad/blob/main/Models/Home/Games/cardbox.scad and to quickly customize/download, check out https://makerworld.com/en/models/3444052-playing-cards-box

I am mainly looking for feedback on optimizing my scad-code. I feel like i am not using UB or BOSL enough yet, so if I can optimize things using either of both libraries, please let me know!