C++ eto panel


I’ve got a C++ plugin, and I’d like to include an eto panel. As far as I know, the eto panels in Rhino don’t have a C++ API, but they do have a C# API. I don’t mind including some C# in my solution, but I need to make calls between my native C++ code and my C# eto panel. Calling the C++ from the C# isn’t a problem (I can just use PInvoke), but I can’t decide on the best way of calling C# from C++.

All I need to do is set values from my C++ in the eto panel, and be able to show or hide the eto panel from the C++ code. I’m aware that there are several options (reverse PInvoke, C++/CLI wrappers, COM, etc…), but I was wondering if there’s one that works particularly well with Rhino. Is writing a seperate Rhino command in C# and calling the command from the c++ a sensible option?


Yes, this is the preferred option: use a command. This is a one-liner in both c# and in c++, so no interop code to maintain.

Great, thanks very much!