Open Inventor (tm) 2.0 - 3D Developer's Toolkit

3D Programming for Humans!

Open Inventor is an object-oriented developer\"s toolkit that dramatically simplifies 3D graphics programming. You no longer have to be a graphics expert to develop high-performance, interactive 3D programs. With the ease and modularity of a tool-kit, Open Inventor puts the functionality of OpenGL(tm) at your fingertips, utilizing the best programming knowledge at Silicon Graphics to produce peak rendering performance.

The rich Inventor set of pre-programmed building blocks defines a full-featured, extensible framework upon which entire applications can be developed. It includes a wide variety of geometry, property, and group objects as well as manipulators for user interaction, and high-level viewers and editor components.

Open Inventor establishes a file format standard for 3D data exchange. This format enables 3D cut and paste between applications and encourages data sharing and reuse among end-users. File converters allow easy transfer of your work to Inventor-based applications.

Open Inventor is available on other non-Silicon Graphics platforms through third party developers, allowing your application development to target wide user audiences.

For a comprehensive technical description of Open Inventor, refer to the Silicon Graphics Open Inventor Technical Report and The Inventor Mentor a nd The Inventor Toolmaker from Addison Wesley.

Open Inventor Offers:

Applications using Inventor:

Contents of the Open Inventor 3D developer's Toolkit

Shapes

--------------------------------------------------
Cube                   Unit cube                    
Cylinder               Unit cylinder                
Cone                   Unit cone                    
Face set*              Set of polygons              
Line set*              Set of 3D lines             
NURBS*                 Curves, trims and surfaces   
Point set              Set of 3D points             
Quad mesh              Quadrilateral mesh           
Sphere                 Unit sphere                  
Text2                  Screen-aligned 2D text       
Text3                  3D text                      
Triangle strip set*    Strips of triangles      
                                                    
--------------------------------------------------
* These shapes come in two varieties: indexed and non-indexed

Properties

----------------------------------------------------------------------
Base color              Material description by a single color             
Color index             Color for shapes in overlay                        
Complexity              Defines smoothness of rendered shape               
3D and 4D coords        Coordinates used for vertex-based shapes         
Draw style              Drawing style of shape (e.g. Iines, filled)       
Environment             Defines environmental properties (e.g. fog,        
                        haze,  light)                                      
Font                    Defines font type for text shape                   
Lighting model          Base color or Phong                                
Material                Defines spectral and surface properties of shape  
Material binding        Defines how materials bind to shapes             
Material index          Material for shapes in overlay                     
Normal                  Defines normals for shapes that use them           
Normal binding          Defines how normals bind to vertex-based           
                        shapes                                             
Pick style              Defines how shapes respond to picking              
Profile curves          2D curves used by NURBS and text3 shapes           
Shape hints             Defines hints for rendering shapes                
Texture                 Defines texture to be used by shapes               
Texture coordinates     Defines how to apply a texture to a shape          
Texture binding         Defines how to bind texture coordinates to a      
                        shape                                              
Transform               Scales and orients shapes in the scene            
Units                   Defines units of the object (e.g., feet, meters)   
                                                                        
----------------------------------------------------------------------

Groups

------------------------------------------------------------
Annotation          Group that is drawn on top layer             
Array               Creates a 3D array of its children           
File                Group that is read from a specified file   
Group               Traverses child list left to right         
Level of detail     Chooses best child                        
Multiple copy       Traverses children multiple times           
Selection           Maintains and performs selection tasks       
Separator           Isolates groupspecific properties            
Switch              Traverses only one of its children          
                                                              
------------------------------------------------------------

Actions

-------------------------------------------------------------------
Callback             Generic scene traversal with callbacks             
GL render            Draws a scene or object into a GL window           
Get bounding box     Returns 3D bounding box of scene or object         
Get matrix           Returns 4x4 matrix for object                      
Handle event         Processes an input event                           
Highlight render     Renders scene with highlighted shapes              
Print                Renders off screen                                 
Ray pick             Returns objects under specifled point             
Search               Searches scene for specific object or object       
                     type                                               
Write                Writes the scene to file in Inventor file format   
                                                                     
-------------------------------------------------------------------

Others

-----------------------------------------------------------------------
Callback             Callbacks for various scene operations              
Clip plane           Defines a clip plane                                
Directional light    Illuminates scene along a single direction          
Event callback       Callback for event handling                         
Info                 Text description or comment                         
Label                Short text label                                    
Orthographic camera  Orthographic projection of a scene                  
Perspective camera   Perspective projection of a scene                   
Point light          Illuminate scene from a point in all directions     
Spot light           Directed light with intensity drop off and cutoff   
                                                                         
-----------------------------------------------------------------------

Engines and Sensors

------------------------------------------------------------
Blinker          Switch group that cycles through children    
Engine classes  Boolean, calculator, gate, on-off, counter,   
                etc.                                          
Pendulum        Oscillates between two rotations              
Rotor           Spins rotation along a fixed axis             
Sensor classes   Alarm, data, field, idle, one-shot, timer,   
                etc.                                          
Shuttle          Oscillates between two translations          
                                                              
------------------------------------------------------------

Interactive 3D Manipulators

---------------------------------------------------------------
Centerball        Rotates an object                              
Drag point        Drags an object in 3-space                      
Handle box        Scales and translates an object                 
Jack              Scales and translates an object                 
Light dragger     Directional, point, and spotlight draggers      
Rotate draggers   Constrained cylinder, disc, and sphere rotator  
Scale draggers    Constrained ID, 2D and uniform scaler           
Tab box           Translates and rotates and object               
Trackball         Rotates an object                               
Transform box     Translates and scales an object                 
Translate         Constrained lD and 2D translator draggers      
                                                                 
---------------------------------------------------------------

Node kits

-------------------------------------------------------
Appearance kit    Kit of most commonly used properties    
Camera kit        Camera node kit                          
Group kit         Group node kit                           
Light kit         Light node kit                         
Scene kit         Scene management kit (lights, cameras,   
                  objects,etc.)                            
Shape kit         Shape node kit                          
                                                         
-------------------------------------------------------

Xt Components

-------------------------------------------------------------
Color editor            Edits a color with callbacks           
Examiner viewer       Rotates camera around objects in 3D      
                      space                                         
File browser          Opens files                           
Fly viewer            Flies camera through the scene      
Light editor          Edits a directional light             
Material editor       Edits a material in a 3D scene           
Material list         Selects a material from a list         
Plane viewer          Constrains viewer to a specific view  
                      ing plane                                     
Print dialog          Invokes Inventor printing              
Render area           Manages a 3D scene (rendering, pick  
                       ing, etc.)                                    
Walk viewer            Walks camera through a scene         
                                                               
-------------------------------------------------------------

Documentation

-------------------------------------------------------------------------------------
*The Inventor Mentor                         Programming guide                         
*The Inventor Toolmaker                      Advanced programming guide                
*The Open Inventor C++ Reference Manual      Reference Manual for C++ classes      
The Inventor Mentor on-line                  On-line version of The Inventor Mentor       
Inventor Technical Report                    Short technical summary of Open Inventor   
-------------------------------------------------------------------------------------
*indicates Books published by Addison-Wesley and available in bookstores