1. produkty
  2.   CAD
  3.   Python
  4.   openscad

openscad

 
 

Open Source 3D CAD modelář pro programátory

Vytvářejte pevné 3D modely pomocí CSG, extruze a konfigurovatelných parametrů pomocí open source bezplatného Python API.

Co je OpenSCAD?

OpenSCAD je bezplatný a open source nástroj pro 3D CAD modelování určený speciálně pro programátory a inženýry. Na rozdíl od interaktivních 3D modelářů používá OpenSCAD skriptový přístup k definování pevných 3D objektů pomocí konstrukční pevné geometrie (CSG) a technik extruze. To umožňuje přesné, reprodukovatelné a parametrické modelování, ideální pro mechanické součásti, prototypy a technické návrhy. Nástroj podporuje Linux, Windows a macOS a dobře se integruje s workflow založenými na Pythonu pro automatizaci a skriptování.

OpenSCAD čte skriptové soubory popisující objekt a podle nich vykresluje 3D model, což designérům poskytuje úplnou kontrolu nad procesem modelování. Podporuje operace jako sjednocení, průnik, rozdíl a transformace jako posun, rotaci a škálování. Data lze importovat ze souborů DXF a exportovat do STL, OFF a dalších formátů. Jeho otevřená architektura a aktivní komunita z něj činí silnou volbu pro vývojáře, kteří hledají programové možnosti 3D modelování bez spoléhání se na GUI interakce.

Previous Next

Začínáme s OpenSCAD

OpenSCAD je k dispozici jako předkompilované binární soubory pro Linux, macOS a Windows na své oficiální webové stránce. Pro vývojáře je zdrojový kód hostován na GitHubu a můžete jej sestavit ze zdrojových kódů pomocí CMake a poskytnutých skriptů pro sestavení. Oficiální [openscad GitHub](https://github.com/openscad/openscad) repozitář obsahuje podrobné instrukce pro sestavení pro všechny hlavní platformy. Pro rychlý začátek si stáhněte nejnovější verzi, nainstalujte ji a otevřete editor, abyste napsali svůj první SCAD skript.

Instalace OpenSCAD pomocí správce balíčků

# Ubuntu/Debian
sudo apt install openscad

# macOS (Homebrew)
brew install --cask openscad

# Windows (Chocolatey)
choco install openscad

Konstruktivní pevná geometrie (CSG)

Jádrem síly OpenSCAD je podpora konstrukční pevné geometrie (CSG), která umožňuje kombinovat základní 3D primitivy pomocí booleovských operací, jako jsou sjednocení, průnik a rozdíl. Tento přístup zajišťuje přesné, ne-manifold-bezpečné modelování vhodné pro inženýrství a výrobu. Například můžete vytvořit válec s otvorem odečtením menšího válce od většího. Operace CSG jsou v skriptu definovány deklarativně, což umožňuje snadnou parametrizaci a revizi. To činí OpenSCAD ideálním pro návrh mechanických součástí, krytů a funkčních prototypů, kde jsou přesnost a reprodukovatelnost kritické.

Jak vytvořit válec s otvorem pomocí CSG v OpenSCAD?

difference() {
    cylinder(h = 20, r = 10);
    cylinder(h = 25, r = 4, center = true);
}

2D extruze obrysu

OpenSCAD podporuje vytahování 2D obrysů importovaných ze souborů DXF nebo definovaných přímo v kódu SCAD. Tato technika je nezbytná pro vytváření složitých 3D tvarů z 2D profilů, jako jsou ozubená kola, držáky nebo zakázkové kryty. Cesty můžete vytahovat lineárně nebo je otáčet kolem osy (pomocí rotace). Proces extruze respektuje pořadí vrcholů a podporuje jak 2D polygonů, tak cesty s otvory. V kombinaci s transformacemi a moduly to umožňuje parametrické generování součástí, jako jsou potrubí, rámy nebo architektonické prvky, což činí z OpenSCAD výkonný nástroj pro technický design a výrobní workflow.

Jak extrudovat 2D polygon do 3D objektu?

linear_extrude(height = 10, center = true, convexity = 10)
  polygon(points = [[0,0], [10,0], [5,10]]);

Parametrické modelování a konfigurace

OpenSCAD vyniká parametrickým modelováním, kde jsou rozměry a tvary definovány pomocí proměnných a funkcí. To umožňuje snadno přizpůsobit návrhy změnou několika parametrů, což je ideální pro iterativní prototypování a přizpůsobení. Například můžete definovat modul, který přijímá parametry pro šířku, výšku a tloušťku, a poté jej znovu použít v několika návrzích. Parametry mohou být také řízeny externími daty, jako jsou hodnoty z CSV nebo DXF souboru, což umožňuje integraci s datovými kanály založenými na Pythonu. Tato schopnost podporuje generativní design, kde se modely automaticky přizpůsobují měnícím se požadavkům nebo omezením.

Jak definovat znovupoužitelný parametrický modul?

module box(width, height, thickness) {
    difference() {
        cube([width, height, thickness]);
        translate([thickness, thickness, -1])
            cube([width - 2*thickness, height - 2*thickness, thickness + 2]);
    }
}

box(50, 30, 3);

Integrace importu a exportu dat

OpenSCAD poskytuje robustní podporu pro import 2D DXF souborů a export 3D modelů do STL, OFF a dalších formátů. To usnadňuje integraci s CAD/CAM nástroji, 3D tiskárnami a simulačním softwarem. Import DXF může zahrnovat cesty pro extruzi, zatímco exporty podporují binární i ASCII STL pro 3D tisk. Navíc může OpenSCAD číst návrhové parametry z DXF souborů, což umožňuje hybridní pracovní postupy, kde je geometrie definována v externích nástrojích, ale programově doladěna. Tato interoperabilita v kombinaci se skriptovým charakterem umožňuje vývojářům automatizovat generování modelů a dávkové zpracování pomocí Pythonu nebo shell skriptů, což zefektivňuje výrobní workflow.

Jak importovat DXF a extrudovat jej do 3D?

linear_extrude(height = 5) {
    import(file = "profile.dxf", layer = "outer");
}
 Čeština