Syntax Hightlighting for OpenSCAD in Jupyterlab

Out of the box Jupyterlab is providing a rich set of supported languages for Syntax Highlighting. Unfortunately OpenSCAD is not one of them. So I tried to research this topic: Internally Jupyterlab is using the CodeMirror editor and Codemirror allows to extend the syntax highlighting by defining custom modes. The easiest way is to use a Simple Mode. Jupyterlab as well supports the functionality of Extensions. So the challenge is to provide a Jupyterlab Extension Read more…

An OpenSCAD Kernel for Jupyter

I was missing a Jupyter Kernel for OpenSCAD. There are already different existing projects that try to bring the OpenSCAD functionality to Jupyter: ViewSCAD is providing a Python API over OpenSCAD SCAD4 is providing an API for JVM based Languages But you can’t use the OpenSCAD language itself in the Jupyter cells. So I decided to take up the challenge and spend a couple of days on this topic. The initial idea was to use Read more…

Displaying 3D STL Files in Jupyterlab

The STL (Standard Triangle Language) is the industry standard file type for 3D Printing. Jupyter and it’s successor Jupyterlab offer quite a big range of built in renderers that allow you to display different file formats. Unfortunately this is not true for 3D file formats. To close this gap, I decided to implement a simple Mime Renderer for Jupyterlab using the powerfull functionality of Three.js. Though other file formats might work as well, I was setting the focus on STL Read more…

Modules in Scad4J

I tried to build some complex models with Scad4J and realised that the generated code  is getting quite unreadable. So it would be useful if we could use modules to structure our models. Here is an example how we can use the Scad4J library to build a first DRAFT of a simple RC airplane. We demonstrate how to use modules.

Parametrized Cork Pals in Scad4J

Cork Pals are toys that utilize 3D printing and recycling. Use a wine cork to connect two 3D printed pieces and there you have it. In my experience not all corks were always fitting: one cork side might be too big or too small – so I decided to make it customizable. All my designs can be found on Thingiverse. In this Gist I demonstrate how to load my OpenScad models from Github with the Read more…

Hinges in Scad4J

I am about to design a model RC plane. In order to attach the control surfaces to the body I am planning to use some hinges. Fortunately there is a ‘Parametric Hinge’ written by ‘Rohin Gosling’ that can be used in OpenSCAD. In this Blog I will check out how we can use this in Scad4J. Here is a quick Gist that demonstrates how we can use this library in Scad4J.