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
Stellenmarkt
  1. DevOps Engineer - Big Data (m/w/d)
    STRABAG AG, Köln, Stuttgart
  2. Informatiker / Entwickler (m/w/d) SAP ABAP
    ING Deutschland, Frankfurt, Nürnberg
Detailsuche

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

Golem Akademie
  1. Docker & Containers - From Zero to Hero
    5.-7. Oktober 2021, online
  2. OpenShift Installation & Administration
    9.-11. August 2021, online
  3. Advanced Python - Fortgeschrittene Programmierthemen
    16./17. September 2021, online
Weitere IT-Trainings

"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
Neue Webcams im Test
Dell und Elgato wollen Razer ablösen

Viele Leute suchen nach guten Webcams. Die Dell Ultrasharp Webcam und die Elgato Facecam sollen helfen. Sie müssen sich aber gegen Razer behaupten.
Ein Test von Oliver Nickel

Neue Webcams im Test: Dell und Elgato wollen Razer ablösen
Artikel
  1. Microsoft Office: BGP-Fehler macht zahlreichen Telekom-Kunden Probleme
    Microsoft Office  
    BGP-Fehler macht zahlreichen Telekom-Kunden Probleme

    Zahlreiche Telekom-Kunden hatten am Morgen Probleme, sich etwa mit Microsofts Online-Diensten zu verbinden. Grund ist wohl ein BGP-Fehler.

  2. Bitcoin, Ethereum & Co.: Ausgerechnet der Wolf of Wallstreet fordert Regulierung
    Bitcoin, Ethereum & Co.
    Ausgerechnet der Wolf of Wallstreet fordert Regulierung

    Jordan Belfort ist der Meinung, dass eine Regulierung von Kryptowährungen wie Bitcoin gut wäre. Seine Einschätzung basiert auf Erfahrung.

  3. China: Apple-Leaker soll Quellen verraten oder die Konsequenzen tragen
    China
    Apple-Leaker soll Quellen verraten oder die Konsequenzen tragen

    Apple geht gegen einen chinesischen Leaker vor und verlangt die Herausgabe seiner Quellen. Andernfalls werde die Polizei eingeschaltet.

olleIcke 16. Mai 2013

ehm.. Mir ist auch schleierhaft wie man diese Entwicklung nicht als positiv betrachten...



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
    Schnäppchen • PS5 jetzt bestellbar • EA-Spiele (PC) günstiger (u. a. Battlefield 5 5,99€) • Asus TUF Gaming 23,8" FHD 144Hz 169€ • Acer-Chromebooks zu Bestpreisen • Philips 65" Ambilight 679€ • Bosch Professional günstiger [Werbung]
    •  /