OpenCADStudio: Wie ein Enthusiast CAD in Rust schreibt und es im Browser ausführt
Jeder, der schon einmal versucht hat, eine DWG-Datei unter Linux oder macOS schnell zu öffnen, ohne teure proprietäre Pakete zu kaufen, kennt dieses Problem. Die Optionen sind meist begrenzt: entweder abgespeckte kostenlose Versionen professioneller Software oder alte Hilfsprogramme mit Grafiken aus den frühen 2000er Jahren.
Ein interessantes Projekt namens OpenCADStudio (OCS) ist auf GitHub erschienen. Es ist ein 2D- und 3D-CAD-Editor, der vollständig in Rust geschrieben wurde. Das Beste daran — der Autor hat native Unterstützung für DWG- und DXF-Formate ohne umfangreiche Drittanbieter-Bibliotheken implementiert und eine funktionierende WebAssembly-Version erstellt, die direkt im Browser geöffnet werden kann.
Was das Projekt kann
Die OpenCADStudio-Oberfläche wurde mit dem klassischen AutoCAD im Sinn gestaltet. Unten befindet sich die vertraute Befehlszeile mit Autovervollständigung, oben das Ribbon-Menü und an den Seiten befinden sich Panels für Ebenen und Geometrieeigenschaften.
Wenn man sich die Liste der unterstützten Befehle ansieht, wird klar: Dies ist kein abstraktes Konzept, sondern ein funktionierendes Programm.
Dateien lesen und schreiben
Der Editor kann DWG- und DXF-Zeichnungen von den Versionen R13 bis R2018 lesen und speichern. Es gibt Export nach STL, STEP AP203 und PDF zum Drucken. Wenn Sie ein fertiges 3D-Modell laden müssen, wird der OBJ-Format-Import unterstützt.
2D-Zeichnen und Annotationen
Im Arsenal des Editors befindet sich ein grundlegender Satz von Zeichenwerkzeugen: Linien, Polylinien, Kreise, Bögen, Splines und Schraffureinstellungen. Bearbeitungsbefehle wie TRIM, EXTEND, OFFSET oder FILLET funktionieren mit den meisten Linientypen.
An die Dokumentation wurde ebenfalls gedacht:
- Lineare, Winkel-, Radius- und Ordinatensymbolmaße mit DIMSTYLE-Unterstützung.
- MTEXT-Textblöcke und MLEADER-Führungslinien.
- Tabellen und GD&T-Rahmen.
3D-Modellierung
Für die Arbeit mit Volumenkörpern verwendet OCS Primitive wie Würfel, Kugeln oder Zylinder sowie Extrusionsoperationen (EXTRUDE, REVOLVE, LOFT, SWEEP). Das ACIS-Body-Rendering verarbeitet planare Bereiche und komplexe 3D-Volumenkörper.
Papierbereich und Ansichtsfenster
OCS enthält eine vollwertige Papierbereich-Unterstützung. Sie können mehrere Layout-Registerkarten erstellen, Ansichtsfenster mit Modellprojektionen konfigurieren und das endgültige Blatt an einen physischen Drucker senden.
Technische Details
Die Haupt-Engine von OpenCADStudio ist die Rust-Sprache und die wgpu-Grafik-API. Dies ermöglicht dem Autor sauberes GPU-beschleunigtes Rendering mit 4× MSAA-Antialiasing.
Dank WebGPU und Kompilierung zu WebAssembly läuft das Projekt in einem normalen Webbrowser. Sie können die GitHub Pages des Projekts öffnen und jede Zeichnung ansehen, ohne das Programm auf Ihrem PC zu installieren.
Bei der Darstellung werden CAD-spezifische Funktionen berücksichtigt:
- Breite Polylinien mit massiver Füllung.
- Komplexe Linientypen mit eingebettetem Text und Symbolen.
- Automatische Anpassung der Geometriefarbe für hellen oder dunklen Hintergrund des Arbeitsbereichs.
- Objektmaskierung (Wipeout) und Rasterunterlegungen über den Befehl
IMAGE.
So führen Sie den Editor aus
Wenn die Browserversion nicht ausreicht, sind Desktop-Binärdateien für die wichtigsten Systeme verfügbar.
Für Linux erstellt der Entwickler eine AppImage, die keine zusätzlichen Abhängigkeiten erfordert:
chmod +x OpenCADStudio-*-linux-x86_64.AppImage
./OpenCADStudio-*-linux-x86_64.AppImage
Für macOS-Benutzer auf Apple Silicon ist es bequemer, die App über Homebrew zu installieren:
brew install --cask --no-quarantine \
https://raw.githubusercontent.com/HakanSeven12/OpenCADStudio/main/packaging/homebrew/open-cad-studio.rb
Das Kompilieren aus dem Quellcode ist für Rust Standard (Compiler-Version 1.75+ erforderlich):
git clone https://github.com/HakanSeven12/OpenCADStudio.git
cd OpenCADStudio
cargo build --release --bin OpenCADStudio
./target/release/OpenCADStudio
Aktueller Stand
OpenCADStudio befindet sich derzeit in aktiver Entwicklung. Das Repository hat etwas über 570 Sterne und etwa 80 offene Issues, und die Dokumentation beschränkt sich derzeit auf die README-Datei.
Für komplexe kommerzielle Ingenieurarbeit könnte die Software noch nicht ausreichen. Aber wenn Sie einen leichtgewichtigen DWG-Viewer und -Editor für Linux benötigen oder die Architektur einer echten Grafikanwendung in Rust studieren möchten, lohnt es sich, das Projekt zu erkunden. Die Webversion auszuprobieren und Ihre Datei direkt im Browser zu öffnen, ist ein großartiger Weg, um die modernen Fähigkeiten von Rust in der Grafik zu entdecken.
Ähnliche Projekte