Table of Contents
About This Book
What This Book Contains
What You Should Know Before Reading This Book
Conventions Used in This Book
Key to Scene Graph Diagrams
Suggestions for Further Reading
Acknowledgments
1. Key Concepts
Adding Nodes and Actions to Inventor
Actions, State, and Elements
Elements and Actions
Caching
Runtime Types
Extender Macros
2. Creating a Node
Overview
Initializing the Node Class
Defining the Constructor
Implementing Actions
Creating a Property Node
Creating a Shape Node
Creating a Group Node
Using New Node Classes
Creating an Abstract Node Class
The copy() Method
The affectsState() Method
Uncacheable Nodes
Creating an Alternate Representation
Generating Default Normals
3. Creating a Field
Overview
Initializing the Field Class
Creating a Single-Value Field
Creating a Multiple-Value Field
4. Creating an Action
Overview
Initializing the Action Class
Defining the Constructor
Defining the Destructor
Traversal Behavior
Implementing Static Methods
Creating a New Action
Using New Action Classes
5. Creating an Element
Overview
Deriving a Class from an Existing Element
The initClass() Method
Destructor
The init() Method
The set() and get() Methods
The print() Method
Additional Methods
Special Considerations for Caching
Special Behavior for Derived Elements
Pushing and Popping Elements
Creating a New Element
6. Creating an Engine
Overview
Defining Inputs and Outputs
Initializing the Engine Class
Defining the Constructor
Implementing an evaluate() Method
Creating a Simple Engine
Dealing with Multiple-Value Fields
Notification and Evaluation
Creating a New Field Converter
7. Creating a Node Kit
Overview
Defining and Naming Catalog Entries
Initializing the Node-Kit Class
Defining the Constructor
About Parts
Defining a Node-Kit Part
Changing a Defined Part
Writing Information About Parts
SoAppearanceKit
PyramidKit
JumpingJackKit
8. Creating Draggers and Manipulators
Creating a Simple Dragger
Creating a Compound Dragger
Creating a Manipulator
9. Creating a Selection Highlight Style
Built-in Highlighting
Overview
The apply() Method
Creating a Highlight in the Overlay Planes
Rendering Only Selected Objects
10. Creating a Component
Creating a New Component
Creating a New Viewer
Creating a Constrained Viewer
11. Creating an Event and Device
Creating an Event
Dispatching Events
Creating a Device
Index
1