Rhino .NET Framework SDK
.NET Framework Plug-In Development (Rhino 4.0 and 5.0)
(Rhino 3.0 .NET plug-in development pages can be found here) Rhino ships with the necessary components to enable Rhino.NET plug-ins on users computers. Plug-ins can be created with a compiler that compiles assemblies using .NET 2.0, including:
- C# 2008 (including Express) - be sure to target .NET 2.0
- VB.NET 2008 (including Express) - be sure to target .NET 2.0
- C# 2005
- VB.NET 2005
- SharpDevelop 2.0
Older versions of VB.NET and C# (ie 2001 and 2003) will not work
Downloads
- Rhino .NET SDK : Project wizards, XML comments, and SDK help CHM file (~20Meg)
What is .NET?
The term .NET can be confusing because it is used in several different contexts. With respect to Rhino, we are talking about the Microsoft .NET framework. This is a programming model that exposes Windows and its related services through an object oriented interface. The model is language neutral i.e any programming language that compiles to .NET intermediate language can use the .NET framework. Complete information on .NET is at: http://www.microsoft.com/net/
What is the Rhino.NET SDK?
Rhino.Net SDK helps developers to extend Rhino's functionality using 'Rhino plug-ins'. The Rhino.NET SDK provides the tools to develop Rhino plug-ins using a .NET programming language. This means that Rhino plug-ins can now be developed using VB.NET, C#, C++.NET, Delphi.NET (and the list goes on).
The Rhino.NET SDK is actually a wrapper around the Rhino C++ SDK. Most of the classes and methods provided by the C++ SDK are available through .NET.
Where is the Rhino.NET SDK?
The Rhino.NET SDK is composed of a rhino plug-in named RhinoDotNetManager.rhp and an assembly named Rhino_DotNET.dll located in the Rhino system directory. The Rhino_DotNET.dll assembly is what all Rhino.NET plug-ins reference to get exported classes and functions from Rhino. These files are installed with Rhino and are not a separate download.
What can I do with the Rhino.NET SDK?
The Rhino.NET SDK is designed to allow .NET developers to create Rhino plug-ins with the same capabilities as C++ developers.
Learning Resources
VB.NET School - Covers all you need to know to start programming in VB.NET.
C# School - Covers all you need to know to start programming in C#.
Questions
Post questions or read other people's questions/answers on the plug-ins newsgroup
Some of your questions may be answered by the DotNET Essentials page
Rhino.NET Articles
Rhino 4.0 .NET SDK Samples
Batch Render with VB - creates a console application that will batch render a folder of 3dm files. Demonstrates how to access RhinoScript from an external .NET application.
BrepSamples - demonstrates how to create a planar face with hole, and how to create a trimmed planar face in C#.
Docking Dialog with VB - creates a custom user control in VB.NET that works as a dockable dialog in Rhino.
Docking Dialog with C# - creates a custom user control in C# that works as a dockable dialog in Rhino.
Event Watcher with VB - create a class that is notified when changes occur in Rhino.
Extend Object Properties with C# - demonstrates how to extend Rhino's Object Properties window.
Object Manager in C# - creates a docking dialog of object uuids that responds to selection events.
Read Points from a Text File in C# - Uses System.IO.StreamReader to read from a text file.