Iris: Export from Rhinoceros to three.js

This is a bit of a shameless plug, but I’ve not felt there was an appropriate place in the three.js community to share this.

I’ve developed an exporter plugin for Rhinoceros 3d that allows users to save a three.js json scene viewable in the three.js editor or loaded with the three.js ObjectLoader. Check out the docs for a test drive.:

This plugin is called Iris and can be downloaded for free from food4rhino.com. It is currently in WIP mode, but already can support the export of points, point clouds, curves, meshes, nurbs surfaces and polysurfaces (as meshes), as well as basic support for exporting text and annotations. The exporter also saves object layer information, named camera views, and clipping planes.

The plugin works on Rhinoceros for Windows and Mac. The project is split up into two main parts:

  1. c# .net Rhinoceros File I/O plugin that allows users to export just the json data, webapp + json data, or one combined monolithic html file with everything embedded (images / glyphs as base64)(these features will be available in the next release).
  2. The webapp javascript project which consists of an app.js file which takes care of the model loading and basic interaction, and a ui.js which exposes layers, views, clipping planes, etc. There is a small api that allows developers to build their own ui if they like. The ui.js that ships is based on this api.

The project is compiled in Visual Studio 2015 for Windows and Xamarin for macOS. I mostly develop the webapp and c# plugin on vmware windows, taking advantage of the Visual Studio node.js tools and task manager integration with npm and gulp. The macOS version of the plugin just gets compiled in Xamarin, but all of the c# code is the same, save for a few #ifdef for some things that are not yet available on Rhinoceros for Mac.

3 Likes