Reflect - GView/IVView/Inventor
While the graphical nature of gview and ivview may seem considerably different than OpenGL, Inventor remains an OpenGL Toolkit. Open one of the box examples from the previous module and pay particular attention to the display function. Objects in OpenGL are defined by vertices, for example the square from the box4 example:
glRectf(-25.0, -25.0, 25.0, 25.0);
Now open an inventor file used in this module using gview. If you right click in the object display window, you can change the display to "points." These points correspond to the vertices used by OpenGL. If you change the display to "wireframe", you can see the tessellation of those vertices.
If you want to manually edit an OpenGL object, you have to change the display function. However, if you want to edit an Inventor object you have to edit the Inventor file. The additional overhead associated with Inventor results in slightly slower, but significantly easier to maintain code (through the graphical interface).
Inventor does more than merely provide a graphical interface to OpenGL. For example, the viewer window used by gview and ivview would require a lot of code to implement using OpenGL, but Inventor provides this functionality through a singular function.
Can you think of any examples where Inventor may be preferable over OpenGL? Can you think of any examples where OpenGL may be preferable over Inventor? |