Combining 2D User Interface Components and Interactive 3D Graphics in ET++

The primary goal of most object-oriented application frameworks is to make it easier to create interactive graphical applications that use direct manipulation techniques. We extended the object-oriented application framework ET++ to support 3D graphics in a general way. ET++ provides predefined visual classes for text, 2D graphics display, and standard user interface components. In addition it is now possible to integrate 3D graphics objects which may be placed wherever other visual objects can go, i.e. in scrollable views, as building blocks in dialogs or graphics editors, as characters in text editors, as items in lists or pop-up menus, etc. All 3D graphics objects support the full visual class protocol for positioning, stretching, client-transparent double buffering, cut/copy/paste, multi-undoable commands, and output to or input from files. As a consequence 2D and 3D graphics are dealt in a uniform way.