Book: Introduction to Computer Graphics: Using Java 2D and 3D (Undergraduate Topics in Computer Science)
This book is an essential tool for second-year undergraduate students and above, providing clear and concise explanations of the basic concepts of computer graphics, and enabling the reader to immediately implement these concepts in Java 2D and/or 3D with only elementary knowledge of the programming language. Features: provides an ideal, self-contained introduction to computer graphics, with theory and practice presented in integrated combination; presents a practical guide to basic computer graphics programming using Java 2D and 3D; includes new and expanded content on the integration of text in 3D, particle systems, billboard behaviours, dynamic surfaces, the concept of level of detail, and the use of functions of two variables for surface modelling; contains many pedagogical tools, including numerous easy-to-understand example programs and end-of-chapter exercises; supplies useful supplementary material, including additional exercises, solutions, and program examples, at an associated website.
Early computer graphics started as a research and application field that was the domain
of only a few experts, for instance in the area of computer aided design (CAD).
Nowadays, any person using a personal computer benefits from the developments
in computer graphics. Operating systems and application programs with graphical
user interfaces (GUIs) belong to the simplest applications of computer graphics. Visualisation
techniques, ranging from simple histograms to dynamic 3D animations
showing changes of winds or currents over time, use computer graphics in the same
manner as popular computer games. Even those who do not use a personal computer
might see the results of computer graphics on TV or in cinemas where parts of
scenes or even a whole movie might be produced by computer graphics techniques.
Without powerful hardware in the form of fast processors, sufficiently large
memory and special graphics cards, most of these applications would not have been
possible. In addition to these hardware requirements efficient algorithms as well as
programming tools that are easy to use and flexible at the time are required. Nowadays,
a standard personal computer is sufficient to generate impressive graphics and
animations using freely available programming platforms like OpenGL or Java 3D.
In addition to at least an elementary understanding of programming, the use of such
platforms also requires basic knowledge about the underlying background, concepts
and methods of computer graphics.