Coffeescad: 3D-Druckmodellierung im Browser

Mit seinem Projekt Coffeescad will Mark Moissette nicht nur eine einfache Modellierungsanwendung für 3D-Drucker erstellen, sondern gleichzeitig Einsteigern das Programmieren näherbringen. Coffeescad verwendet Javascript und läuft in jedem Browser.

Artikel veröffentlicht am ,
Mark Moissette hat Coffeescad entworfen, eine CAD-Anwendung für den Browser.
Mark Moissette hat Coffeescad entworfen, eine CAD-Anwendung für den Browser. (Bild: Jörg Thoma/Golem.de)

Coffeescad heißt das Open-Source-Projekt, mit dem Mark Moissette das Erstellen von CAD-Zeichnungen in Browsern ermöglichen will. Die in Coffeescad erstellten 3D-Objekte werden in Coffeescript geschrieben, daher auch der Name. Das Berechnen und Rendern der Objekte übernimmt die Javascript-Engine in fast allen gängigen Browsern. "Coffeescad ist noch im Pre-Alpha-Stadium, und ich will noch weitere Funktionen hinzufügen. Das Schöne an Open-Source-Software ist, dass jeder sie benutzen darf. Das haben andere auch schon gemacht", sagt Moissette über sein Projekt.

  • Coffeescad
  • Coffeescad
  • Coffeescad
  • Eine Wasserpumpe, die in Coffeescad entworfen wurde
Eine Wasserpumpe, die in Coffeescad entworfen wurde

Gegenwärtig lässt sich Coffeescript weitgehend nur mit Code steuern. Für jedes 3D-Objekt müssen entsprechende Code-Objekte erstellt und mit Variablen gefüttert werden, die die Größe und Farbe des Objekts bestimmen. In einem Terminalfenster wird der Coffeescript-Code eingegeben, dessen Syntax ähnlich dem von Python ist. Der Coffeescad-Editor unterstützt unter anderem Syntaxhervorhebung und Qualitätskontrolle durch Linting. Änderungen am Code werden in Echtzeit im Browserfenster angezeigt.

CAD-Funktionen im Browser

Coffeescad beherrscht die wichtigsten CAD-Funktionen. So lassen sich die meisten gängigen Primitiven erstellen und damit Grundfunktionen wie Vereinigungen, Differenzen und Schnitte durchführen. "Mit Coffeescad lassen sich aber auch schon komplexe Modelle erstellen", sagt Moissette und zeigt einen Entwurf einer mehrteiligen Wasserpumpe, an der die Designer Simon Kirkby und Jonhatan Sorensen gearbeitet haben.

Der CSG-Kern (Constructive Solid Geometry) von Coffeescad stamme ursprünglich aus dem OpenJScad-Projekt, sei aber mittlerweile deutlich erweitert worden, erklärt Moissette weiter. "Der Funktionsumfang geht auch über den in ähnlichen Anwendungen wie Sketchup oder OpenSCAD hinaus, vor allem was die Kollaboration betrifft. Eine hochleistungsfähige CAD-Anwendung, wie AutoCAD, Catia oder Solidworks, soll es aber nicht werden. Ich will mich lieber auf die Modellierung für 3D-Drucker konzentrieren."

Gui geplant

"Momentan ist Coffeescad eher für Anwender gedacht, die bereits programmiert haben oder es lernen wollen", gibt Moissette zu. Als nächsten Schritt plant er die Umsetzung einer grafischen Oberfläche, die die Eingaben im Terminal ergänzen sollen. Er kooperiert dabei mit anderen Projekten, die seinen Kern bereits nutzen, etwa in dem Projekt Ultishaper von Erik de Bruijn von Ultimaker, das auf Onlinekollaboration setzt. Ultishaper und auch Moissette wollen mit der Benutzeroberfläche 3D-Design unerfahrenen Nutzern und selbst Kindern oder Jugendlichen zugänglich machen.

"Im Terminal-Fenster soll der in der Gui veränderte Code direkt angezeigt werden, denn Coffeescad ist für angehende Entwickler ein guter Einstieg in die Programmierung", sagt Moissette. Immerhin werde dort auch mit Grundlagen wie dem Erstellen von Objekten und mit Variablen gearbeitet. Außerdem biete das Terminal nach wie vor oftmals die schnellere und effektivere Eingabemöglichkeit.

Später mit Splicer

In Coffeescad erstellte Modelle lassen sich als herkömmliche STL-Dateien exportieren. Alternativ können sie im Json-Format abgespeichert und so über Webseiten auch anderen Anwendern zum Bearbeiten zur Verfügung gestellt werden. Die integrierte Javascript-Bibliothek Dropbox.js ermöglicht das direkte Speichern im Onlinespeicherdienst.

Moissette möchte später noch ein weiteres großes Projekt angehen: die Integration des Slicers in Coffeescad. Bereits jetzt arbeite er an einigen Funktionen, die die langwierigen und meist langsamen Berechnungen des Slicers abkürzen sollen, indem sie etwa bei der Erstellung eines Modells gleich auch das Füllmuster des 3D-Druckobjekts bestimmen. Damit ließen sich auch Objekte designen, die vorbestimmte Lücken haben, etwa für Kabel, die später in dem gedruckten Objekt integriert werden sollen. "Die Integration eines Slicers ist aber eine Mammutaufgabe, die ich vermutlich nicht alleine schaffe. Ich habe ja nebenbei auch einen Job. Ich hoffe, jemand hilft mir dabei."

Für die Darstellung von Objekten nutzt Coffeescad unter anderem die Javascript-Frameworks Backbone.js, Marionette.js und die 3D-Bibliothek Three.js. Der Code von Coffeescad ist unter der MIT-Lizenz auf Github erhältlich und kann in einer Onlinedemo ausprobiert werden.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Quartalszahlen
So verkauft Elon Musk Teslas Schrumpfkurs als Wachstum

Nur 3 statt 20 Millionen Autos, Investitionen in neue Fabriken wurden gestrichen und die 4680-Akkus waren angeblich nie wichtig für Tesla.
Eine Analyse von Frank Wunderlich-Pfeiffer

Quartalszahlen: So verkauft Elon Musk Teslas Schrumpfkurs als Wachstum
Artikel
  1. Elektro-Limousine: BMW wertet den i4 mit neuem Design und Serienextras auf
    Elektro-Limousine
    BMW wertet den i4 mit neuem Design und Serienextras auf

    Der BMW i4 bekommt ein Technik- und Designupdate, das die Attraktivität des vollelektrischen Mittelklasse-Fahrzeugs steigern soll.

  2. Kosteneffiziente und nachhaltige IT-Systeme
     
    Kosteneffiziente und nachhaltige IT-Systeme

    Green IT zielt darauf ab, die Informations- und Kommunikationstechnik (IKT) über deren gesamten Lebenszyklus hinweg umwelt- und ressourcenschonend zu gestalten. Dieses Online-Seminar hilft bei der Umsetzung.
    Sponsored Post von Golem Karrierewelt

  3. Lebensmittellieferdienst: Getir/Gorillas schließt in Deutschland
    Lebensmittellieferdienst
    Getir/Gorillas schließt in Deutschland

    Getir, der Käufer von Gorillas, hat Milliarden US-Dollar an Bewertung verloren und ist mit seiner Europaexpansion gescheitert. Nun werden Tausende Kündigungen folgen.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • MediaMarkt: Asus Gaming-Laptop 999€ statt 1.599€ • Galaxy S23 400€ günstiger • Anker USB-Ladegeräte -45% • MSI MEG 342CDE OLED 999€ • Gamesplanet Spring Sale [Werbung]
    •  /