Acknowledgments

Rhinoceros uses a number of open source libraries.

Rhino for Windows and Mac

RhinoCycles

The full repository for RhinoCycles code is available on GitHub.

The original Cycles project is available on the Blender developer website.

MikkTSpace

MikkTSpace code is used to calculate per-vertex tangents in Rhino. It is also used by the Cycles rendering engine of Rhino (license details).

RDK (Rendering Development Kit)

RDK uses the following open source libraries:

  • Eigen is used in the UV unwrap code under the LGPL v2.1 using static linking
  • OpenABF is used in the UV unwrap code under the Apache 2.0 license using static linking

QuadRemesh

QuadRemesh uses the following open source libraries:

  • Sub-libraries of SuiteSparse 5.6.0 under the LGPL v2.1 license using dynamic linking:
    • AMD
    • CAMD
    • CCOLAMD
    • COLAMD
    • CholMod/Cholesky
    • CholMod/Core
  • Triangle - A Two-Dimensional Quality Mesh Generator and Delaunay Triangulator - Version 1.6 - by Jonathan Richard Shewchuk

resvg

resvg is used to generate images from svg data. Source and license can be found on github

Monaco Editor

The Monaco Editor is used in code editing controls in Rhino and Grasshopper. Source and license can be found on github

Import_glTF and Export_glTF

Import_glTF and Export_glTF are forked from glTF-Bin. Portions of the functionality are Copyright 2021 STYKKA APS and distributed under the MIT license. Source and license can be found on GitHub.

glTFLoader is used for reading and writing glTF files from the schema. Source code and license can be found on GitHub.

Package Manager

The package manager client (Yak) uses the following open source libraries:

  • YamlDotNet (MIT) – parse YAML markup
  • docopt.net (MIT) – command line interface
  • Nancy (MIT) – HTTP listener for OAuth flow

Script Editor

  • cpython (PSF License) – python 3 support
  • PythonNet (MIT) – python 3 interoperability with dotnet
  • jedi (MIT) – partial python 3 auto-completion
  • pycodestyle (MIT) – python 3 linting
  • pyflakes (MIT) – python 3 linting
  • black (MIT) – python 3 formatting
  • IronPython (Apache License) – python 2 support with dotnet
  • Roslyn (MIT) – C# support
  • Eto (BSD-3) – Cross-platform UI framework

Rhino for Windows

E57 File Import

E57 File Import uses the following libraries:

Rhino for Mac

Sparkle

Sparkle is an easy-to-use software update framework for macOS applications (license details).