Extending Open Inventor

The flexibility and power of Open Inventor is given through the object-oriented design. It is quite easy to extend Open Inventor classes. Special macros help to do general task depending on the class family. The book "The Inventor Toolmaker" reveals all the secrets. In principle it is possible to create classes (nodes, fields, actions, elements, engines, node kits, draggers, manipulators, components, events and devises) based on existing Inventor classes.

New Node Kits

Node kits are building blocks for sub graphs which are used regularly. They help to manage complexity by hiding information and providing default configurations. A small example shows how to build a node kit.

New Nodes

To create a new node seems to be more difficult because the rendering and other actions have to be programmed. It becomes easy again if an exiting node is subclassed and only some small extension are needed. Then we can overide the parent function with a new function which calls the function of the parent class (we don't need to learn from our parents because they can do and know the job best) and implement only the specific extension. In our example we create a node which is used to add spatial sound to Open Inventor using external hardware.
Jens Herder