Coin is an OpenGL based, retained mode 3D graphics rendering library. It is implemented in C++ and publicly released with the source code open for your perusal. The application programmer's interface (API) is fully compatible with SGI's Open Inventor, the de facto standard 3D graphics API for complex visualization applications.
For an excellently written, detailed, tutorial-style introduction to the Open Inventor API used by the Coin library, we highly recommend the book «The Inventor Mentor» (subtitle: «Programming Object-Oriented 3D Graphics with Open Inventor»), ISBN 0-201-62495-8. It walks the Coin application programmer through all the principles applied in the API, richly illustrated and with numerous, well documented code examples.
(The «Inventor Mentor» is getting a bit old, but don't let that put you off. We heartily recommend this book as it covers all the basic design principles, aswell as the major parts of the API, in an excellent manner.)
For overviews of various selected features of the Coin library, see the "Related pages" document from the link in the upper right corner of this page.
Systems in Motion is working on providing libraries for interfacing Coin with a wide range of windowing systems and GUI toolkits.
See http://www.coin3d.org/ for more information about Coin and the GUI toolkit libraries.
IMPORTANT NOTE: the online documentation for the Coin library is a continuous work-in-progress. Although the large majority of classes have been documented properly, there might still be some poorly documented items. If you happen upon an undocumented or poorly documented class and / or class method which you find hard to understand, please give us a notice so we can rectify the situation.