All of our business strategies are based on being open. OpenNURBS, our first open source code initiative, provides access to the native Rhino 3DM file format without restriction or royalties. Our latest open initiatives are RhinoCommon, Rhino 5’s new cross-platform SDK, our support of the Windows.Forms extension to the MonoMac project, .NET UI for the Mac, and Rhino 5’s RhinoPython libraries.
We have just placed RhinoCommon, the C# portion of Rhino 5’s new cross-platform SDK, on github.
Our goals for making RhinoCommon open source are:
- Helping Rhino plug-in developers write better plug-ins because they can trace into the source to see what is going on inside the RhinoCommon SDK
- Developers can report bugs in RhinoCommon source
- More eyes to scrutinize our code that will provide more detailed feedback on where it can be improved
- Help from the developer community from those that want to add code, documentation, or samples
- Download and compile the RhinoCommon project
- Rename the shipping RhinoCommon.dll to RhinoCommon.dll.original
- Place the RhinoCommon.dll and pdb that they just compiled in the Rhino 5 system directory
MonoMac.Windows.Forms provides developers with the tools to develop and compile a .NET project including UI on Windows Rhino 5 and have it run without a recompile on the Mac Rhino 5. Anyone interested in contributing to the early development of the MonoMac.Windows.Forms project can find it here.
The RhinoPython libraries with source code are included with Rhino 5 on both Windows and the Mac. The libraries provide hundreds of Python functions that give Python developers easy access to Rhino’s most complex SDK functions. Anyone interested in contributing to the RhinoPython libraries project can find it here.
Open Source – an obsession or a passion?
For some “Open Source” is an obsession, but at McNeel “Open Source” (or more accurately “Open”) is a passion. The feedback we get from sharing at every opportunity excites and inspires us. It is the feedback from others that provides the clarity of purpose behind everything that we do.