Poslední aktualizace: 20 Aug, 2026

Automatizace CAD bez AutoCADu: Open source alternativy pro vývojáře
Desetiletí automatizace počítačově podporovaného návrhu (CAD) znamenala práci s proprietárními API společnosti Autodesk: skripty AutoLISP běžící v desktopové relaci, ObjectARX psaný těžkým C++ nebo .NET obaly úzce svázané s Windows runtime.
Ačkoliv AutoCAD zůstává průmyslovým standardem, moderní softwarové inženýrství vyžaduje větší flexibilitu:
- Headless execution v lehkých Linux Docker kontejnerech.
- Continuous Integration / Continuous Deployment (CI/CD) pipeline, které generují mechanické výkresy nebo architektonické výstupy při push.
- Web-native configurators generující CAD modely dynamicky v cloudu.
- Žádné překážky v licencování, odstraňující náklady na licenci na uživatele nebo tokeny jen pro provoz automatizovaných dávkových úloh.
Naštěstí se ekosystém open source výrazně vyvinul. Vývojáři nyní mohou programově generovat, kontrolovat, upravovat a exportovat jak 2D výkresy, tak složité 3D tělesa pomocí čistého kódu.
Zde je komplexní přehled nejlepších open-source alternativ k AutoCADu pro automatizaci CAD řízenou vývojáři.
1. ezdxf: Pythonový powerhouse pro 2D automatizaci
Pokud je vaším hlavním požadavkem od AutoCADu generování nebo parsování souborů .dxf (Drawing Exchange Format) — například půdorysy, profily pro laserové řezání, vektorové cesty CNC nebo titulkové bloky — ezdxf je pravděpodobně nejspolehlivější dostupná knihovna pro Python.
Proč si ho vývojáři vybírají
- Žádné těžké závislosti: Čistý Python s volitelnými C rozšířeními pro výkon.
- Kompletní podpora DXF: Podporuje verze DXF od R12 po moderní AC1032 (AutoCAD 2018+).
- Bezhlavý a připravený pro cloud: Běží hladce uvnitř lehkých funkcí AWS Lambda nebo mikroservis.
- Vektorová matematika a renderování: Obsahuje moduly pro rozvržení textu, kótování, šrafování a renderování DXF dat přímo do SVG, Matplotlib nebo PDF.
Minimální příklad: Generování vrstveného 2D profilu
import ezdxf
# Create a modern DXF document (AutoCAD 2018 format)
doc = ezdxf.new("R2018")
msp = doc.modelspace()
# Define layers with specific line weights and colors
doc.layers.add(name="OUTLINE", color=1) # Red
doc.layers.add(name="ANNOTATIONS", color=7) # White/Black
# Add geometry
msp.add_lwpolyline(
[(0, 0), (100, 0), (100, 50), (50, 50), (0, 20)],
is_closed=True,
dxfattribs={"layer": "OUTLINE"}
)
# Add programmatic text / annotation
msp.add_text(
"Automated Bracket Spec #A-12",
dxfattribs={"layer": "ANNOTATIONS", "height": 3.5}
).set_placement((5, 10))
# Save output
doc.saveas("automated_part.dxf")
Nejlepší pro: generování 2D výkresů, exporty drah pro laserové řezání, hromadná úprava výkresů, předzpracování vnořování CNC.
2. CadQuery: Kódově první parametrický 3D CAD engine
Tradiční CAD nástroje se zaměřují na grafické uživatelské rozhraní (GUI), kde kreslíte skici a kliknutím je vytahujete nebo zaoblujete. CadQuery otočí tento paradigmat vzhůru nohama: považuje CAD za standardní softwarové inženýrství.
Postavený na osvědčeném motoru Open CASCADE Technology (OCCT), CadQuery poskytuje vývojářům plynulé, intuitivní Python API pro vytváření složitých těles s hranicovou reprezentací (B-Rep).
Proč si vývojáři vyberou
- Skutečné modelování těles: Na rozdíl od nástrojů s polygonálními sítěmi pracuje CadQuery s přesnými analytickými plochami (NURBS, roviny, válce).
- Parametrické dle návrhu: Změny jedné proměnné se čistě rozšíří po celém návrhu.
- Standardní exporty: Přímý export do formátů STEP, IGES, STL a DXF.
- Moderní podpora CI/CD: Vynikající pro automatizované regresní testování mechanických komponent.
Minimální příklad: Parametrické potrubí s přírubou
import cadquery as cq
# Define variables
outer_radius = 25.0
wall_thickness = 3.0
height = 80.0
flange_radius = 40.0
hole_radius = 4.0
# Build parametric 3D body
pipe = (
cq.Workplane("XY")
.circle(flange_radius)
.extrude(6.0)
.faces(">Z")
.workplane()
.circle(outer_radius)
.extrude(height)
.faces(">Z")
.hole(2 * (outer_radius - wall_thickness))
)
# Add bolt holes on the flange
flange_holes = (
pipe.faces("<Z")
.workplane()
.polarArray(radius=32.0, startAngle=0, angle=360, count=4)
.hole(hole_radius * 2)
)
# Export standard interchange format
cq.exporters.export(flange_holes, "pipe_flange.step")
Nejlepší pro: generátory parametrických dílů, webové konfigurátory 3D modelů, inženýrské komponenty, automatizovanou výrobu STEP/IGES.
3. FreeCAD (Headless Python API): Plnohodnotná desktopová výkonnost v cloudu
FreeCAD je dobře známý jako hlavní open-source desktopová CAD aplikace, ale jeho největší tajnou zbraní pro vývojáře je, že celé jádro je vystaveno jako modulární knihovna Pythonu.
FreeCAD můžete spustit v režimu headless (bez X-serveru nebo GUI), abyste prováděli pokročilé kontroly sestav, boolovské operace, generování technických výkresů (prostřednictvím modulu TechDraw) a konverze souborů.
Proč si vývojáři vyberou
- Masivní ekosystém: Nativní podpora pro pracovní prostředí Arch/BIM, PartDesign, Mesh, SheetMetal a TechDraw.
- Přímá interoperabilita DXF/DWG: Lze integrovat s externími konvertory jako LibreDWG nebo ODA File Converter.
- Automatizované kreslení: Modul
TechDrawmůže programově generovat víceúhlé ortho projekce, řezové pohledy a rozměry jako SVG nebo PDF.
Koncept bezhlavého pracovního postupu
# Executed within FreeCAD's headless environment: freecadcmd script.py
import FreeCAD as App
import Part
doc = App.newDocument("AutomatedDoc")
# Create geometry programmatically
box = Part.makeBox(100, 50, 30)
cylinder = Part.makeCylinder(15, 40)
cylinder.translate(App.Vector(50, 25, 0))
# Boolean difference
result = box.cut(cylinder)
# Assign to document
part_obj = doc.addObject("Part::Feature", "CutBlock")
part_obj.Shape = result
doc.recompute()
# Export to standard format
Part.export([part_obj], "cut_block.step")
Nejlepší pro: Složité sestavy, BIM/architektonickou automatizaci, programové generování PDF výkresů.
4. Open CASCADE Technology (OCCT): Jádro podnikové úrovně
Pokud vytváříte vlastní komerční CAD aplikaci, platformu SaaS s těžkou geometrií, nebo potřebujete vysoce výkonné vícevláknové výpočty geometrie v C++, podívejte se přímo na Open CASCADE Technology (OCCT).
Jak FreeCAD, tak i CadQuery spoléhají na OCCT pod kapotou. Přeskočením prostředních vrstev získáte čistý výkon a hlubokou geometrickou kontrolu.
Klíčové schopnosti
- Průmyslové B-Rep (Boundary Representation) a topologické datové struktury.
- Vyhodnocování ploch a křivek, průsečíky, plynulé přechody a pokročilé zaoblení.
- Generování sítí a předzpracování konečných prvků.
- pythonOCC: Zralá sada Pythonových obalů, pokud chcete výkon C++ s rychlostí iterace v Pythonu.
Nejlepší pro: Vysokokapacitní cloudové geometrické pipeline, vysoce přesné booleovské operace, vývoj vlastního proprietárního CAD/CAM softwaru.
5. LibreCAD & LibreDWG: Zpracování starých formátů a 2D workflow
Běžnou výzvou při odchodu od AutoCADu je práce se soubory .dwg — uzavřeným proprietárním binárním formátem společnosti Autodesk.
- GNU LibreDWG: Volně dostupná knihovna v C navržená pro přímé čtení a zápis souborů DWG. I když je reverzně inženýrská, poskytuje širokou podporu pro extrakci geometrie, atributů a konverzi DWG do DXF nebo JSON.
- LibreCAD (LibreCAD v3 / libcad): Nabízí bezhlavé C++ jádro knihoven zaměřené na návrhové primitivy a architektonické vrstvy.
Kombinací LibreDWG s nástroji jako ezdxf můžete vytvořit automatizované ingestní pipeline, které přijímají proprietární soubory .dwg od klientů a normalizují je do otevřených datových pipeline bez licence AutoCAD.
Architektonické srovnání: Výběr správného nástroje
| Nástroj | Základní jazyk | Hlavní zaměření | Nejlepší případ použití | Bezhlavé/Cloud připravené? |
|---|---|---|---|---|
| ezdxf | Python | 2D DXF | Vektorové kreslení, export CNC/laser, parsování metadat | Ano (extrémně lehké) |
| CadQuery | Python (nad OCCT) | 3D parametrické tělesa | Programatické CAD, cloudové konfigurátory, STEP modely | Ano (přátelské k Dockeru) |
| FreeCAD | C++ / Python | 2D/3D a BIM | Víceúhlé výkresy, konverze formátů, složité sestavy | Ano (freecadcmd / headless build) |
| OpenSCAD | Vlastní DSL / C++ | 3D CSG tělesa | Procedurální komponenty pro 3D tisk, hobbyistické pipeline | Ano (Native CLI) |
| Open CASCADE | C++ | Geometrické jádro | Robustní zakázkový software, podnikové výpočetní enginy | Ano (Vysoký výkon) |
Doporučená systémová architektura pro automatizované CAD pipeline
Pro inženýrské týmy, které chtějí vytvořit kompletní automatizační pipeline bez AutoCADu, zvažte tento moderní mikroservisní vzor:
- Klient / Front-End: Webové rozhraní přijímá parametry (např. vlastní rozměry, výběr materiálu).
- API vrstva (FastAPI/Node.js): Ověřuje vstupní schémata a posílá úlohy do fronty (Celery, Redis nebo SQS).
- Pracovní uzly (Dockerizovaný CadQuery/ezdxf):
- Headless kontejnery se spouštějí k výpočtu geometrie.
- Vygenerované výstupy:
.steppro výrobu,.dxfpro CNC profily a formát.gltf/.threejspro real‑time 3D náhled v prohlížeči.
- Úložiště a doručení: Soubory jsou ukládány přímo do S3‑kompatibilního objektového úložiště a vráceny uživateli nebo výrobní frontě.
Tato architektura běží na standardních Linux serverech, automaticky se škáluje podle potřeby a odstraňuje licenční poplatky, omezení desktopu a režii virtuálních strojů spojenou se starším CAD softwarem.
Často kladené otázky (FAQ)
**Q1: Mohu spouštět CAD automatizační pipeline zcela headless v Linux Docker kontejnerech? Ano, nástroje jako CadQuery, ezdxf a FreeCAD CLI fungují nativně na Linuxu bez jakéhokoli grafického uživatelského rozhraní (GUI) nebo zobrazovacího serveru.
**Q2: Jak mohu převést proprietární soubory AutoCAD DWG bez nákupu AutoCADu? Můžete použít GNU LibreDWG nebo Open Design Alliance (ODA) File Converter CLI k hromadnému převodu souborů DWG na standardní DXF nebo vektorové formáty.
**Q3: Je možné generovat průmyslové 3D STEP soubory pouze pomocí Pythonu? Ano, CadQuery a pythonOCC vytvářejí skutečnou hranovou reprezentaci (B-Rep) pevné geometrie a exportují plně kompatibilní STEP a IGES soubory.
**Q4: Jak se CadQuery srovnává s OpenSCAD pro programové modelování? CadQuery vytváří skutečné topologické B-Rep tělesa s NURBS a zaoblením, zatímco OpenSCAD používá konstrukční pevnou geometrii (CSG), která je primárně optimalizována pro výstupy sítí jako STL.
**Q5: Dokážou open-source CAD nástroje automaticky generovat kótované 2D výkresy z 3D modelů? Ano, headless TechDraw API ve FreeCADu a moduly pro projekci výkresů v CadQuery mohou promítnout 3D geometrii do kótovaných SVG, DXF nebo PDF pohledů.
Viz také
Formáty CAD souborů na FileFormat.com
Open Source API pro práci s formáty CAD souborů
Novinky o formátech souborů – Váš jediný zdroj pro všechny novinky týkající se formátů souborů z celého světa
Fóra formátů souborů – Zadejte své dotazy do fór formátů souborů, abyste získali užitečné informace od odborníků na formáty souborů a uživatelů komunity
Wiki formátů souborů – Prozkoumejte kategorie formátů souborů pro informace o různých formátech souborů
STEP vs IGES vysvětleno: Porovnání moderních a starých CAD výměnných formátů