Rhino .NET Framework SDK
NOTE: A new SDK is being constructed for Rhino 5. Information can be found at RhinoCommon
.NET Framework Plug-In Development (Rhino 4.0 and 5.0)
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:
- Microsoft Visual C# and Microsoft Visual VB.NET 2005 and 2008 (including Microsoft Visual Studio Express editions)
- Microsoft Visual C# and Microsoft Visual VB.NET 2010 are supported on Rhino 5.0
- SharpDevelop 2.0 and above
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 or email McNeel Developer Support.
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.
Tagging objects with C# - tags objects with estimating data using C#.
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.
TestExternalAccess - demonstrates how to access COM visible objects in a .NET plug-in from an external application.
Visual Analysis Mode - demonstrates how to create your own false color analysis mode in with C#.
