Is it possible to use Rhino API for visualisation of data processing?

I am wondering if it is possible to use Rhino to create a sort of 3d visualisation framework for realtime visualisation of fairly complex computational tasks? Mainly:

  • If I run some data crunching (geo-spatial related), then is it possible to use the Python API to visualise this data?
  • Can the Rhino API reflect real-time changes in the data?
  • Is it possible to combine one of the Python GUI frameworks (like PySide or PyQt) with Rhino so that one can customise user interaction and input?

I realise how Rhino works in the conventional sense, though I haven’t yet been able to figure out whether it is feasible to use it in the sense of a live and interactive interface for other more general python programming.


The short answer is; yes. Rhino can do all of this, but it doesn’t provide any finished tools for doing it. As a plugin programmer (C++, C#, VB or Python) you can draw pretty much whatever you want in a Rhino viewport, and you can trigger updates of views, allowing you to draw animated geometry. But you will have to do all the drawing yourself.

Rhino supports the drawing of curves (with colour and thickness properties), meshes with materials, textures, false colours and/or shading, 2D and 3D text and bitmap sprites.

Do note that drawing geometry in a Rhino viewport and allowing the user to interact with that geometry is not at all the same thing. Typically Rhino users are only able to interact with geometry that is part of the currently loaded 3DM file. When you draw custom shapes, Rhino will be unaware of them and thus won’t allow people to pick them.

David Rutten

Does this help?

Thanks for the responses.

Is there a good resource or API reference for targeting this kind of interactive programming?

I am also interested on any thoughts on using python via an API to Rhino vs. using something like Blender. My inclination is towards Rhino, but I would be interested to hear any thoughts on pros and cons either way.

After some more perusing I found this:

Which I presume is what I’m looking for. At first glance, looks quite potent.