Computer Graphics in
Java
Computer Graphics in Java
gives a unified, introductory treatment to two-dimensional and
three-dimensional computer graphics concepts. Topics include
anisotropic and isotropic mapping, applied geometry; homogeneous
coordinate transforms, approximation theory; Bezier curves, Bernstien
Basis Polynomials, Hermite Polynomials, B-Spline curve fitting.
Rendering topics: z-buffer algorithm, painters algorithm, raytracing,
texture mapping and advanced application programmer interfaces.
E-mail:
lyon@DocJava.com
Web: http://www.DocJava.com
Text: Computer Graphics for Java Programmers by Ammeraal,
Wiley, 1998
Text available from:
UB Bookstore or Amazon.com
at:
http://www.amazon.com/exec/obidos/ISBN=0471981427/douglaslyonA/
Computer Usage:
Web and e-mail access are
REQUIRED. You MUST have access to a
computer with a Java compiler. MetroWerks CodeWarrior is strongly
suggested. This product is in the book store and available for a low
academic price (list price $495, student price $89.95).
References:
Java Digital Signal
Processing by D. Lyon and H. Rao,
M&T Books, (c) 1997. Available from Prof. Lyon, UB Bookstore or
AMAZON.COM:
http://www.amazon.com/exec/obidos/ISBN=1558515682/douglaslyonA/
Image Processing in
Java by Douglas Lyon, Prentice Hall
(c) 1999. Available from Prof. Lyon.
Java Source Book
by Ed Anuff, The John Wiley and
Sons, Inc., First Edition, (c)1996.
The Java Class Libraries,
Second Edition, Volume 1 and Volume 2.
Volume 1 is by Chan and
Lee, Volume 2 is by Chan Lee and Kramer.
Addison Wesley, 1998.
Available from: UB Bookstore or Amazon:
http://www.amazon.com/exec/obidos/ISBN=0201310023/douglaslyonA/
http://www.amazon.com/exec/obidos/ISBN=0201310031/douglaslyonA/
How to Program Java
by Deitel and Deitel, Prentice
Hall, First Edition, (c) 1997.
Course Notes, as
required, some are available on-line at http://lyon.bridgeport.edu or
by purchase of copies.
Goals:
To build upon the knowledge
gained in CS410 and learn how to design research test-beds for
distributed object-oriented computing on the web. Students will be
exposed to a variety of modern Java programming topics.
Coordinator:
Douglas Lyon, Professor of
Computer Science and Engineering. E-mail: lyon@snet.net
Prerequisites by Topic:
1. Java programming
experience (CS410 or equivalent)
2. Mathematical maturity
(integral calculus and linear algebra)
3. Use of computer tools,
including e-mail, browsers and compilation tools.
4. Data structures, priority
queues, hashing etc. (CS 400 or equivalent)
Topics: (coverage will be
altered to encompass the latest APIs)
Computer Graphics in Java
Prerequisite: CPE488D, or
CS410 or Permission of the instructor.
Week 1: Elementary
Concepts lines, coordinates and pixels. Anisotropic and Isotropic
mapping modes. Entering simple geometries.
Week 2: Applied Geometry
vectors, inner products, determinants vector products, 3-point
orientation polygons, area computations in polygons, point in
triangle, point in polygon, point on line, triangulation of polygons.
Week 3: Rotations and
other transformations Matrix multiplication, linear transforms,
inverse transformations and matrix inversion homogeneous coordinates,
rotation about an arbitrary point, rotation about 3d coordinate axes,
changing the coordinate system
Week 4: Classic
algorithms Bezier curves, B-spline curve fitting, hermite
polynomials, Berstien Basis functions.
Week 5: Perspective
viewing transforms, perspective transform
Week 6: Hidden face
elimination back-face culling, specification and representaiton of 3D
objects, Painters' algorithm, Z-buffer algorithm
Week 7: Hidden-line
elimination visibility test, holes and invisible line segments.
Week 8: Raytracing
pin-hole camera, forward and backward raytracing shadow and
illumination rays, reflection rays, transparency rays
Week 9: Recursive
visibility surface physics, spatial aliasing, temporal aliasing
anti-aliasing.
Week 10: Sampling
Super-sampling, adaptive supersampling, stochastic raytracing,
statistical supersampling
Week 11: Ray-object
intersection and mapping ray-sphere intersection precision problems
spherical inverse mapping ray-plane intersection
Week 12: standard inverse
mappings inverse mapping for a circle, a cylinder and a cone
Week 13: Ray-surface
intersections general ray-implicit surfaces, algebraic surfaces,
Steiner quartic surface ray-quadric intersection, ray-paraboloid
intersection, ray-hyperboloid intersection, ray-tori intersection
Week 14: Numerical
methods and intersections Newton's method ray-superquadric
intersection ray-blob intersection
Week 15: Light transport
mechanisms specular reflection, diffuse reflection, specular
transmission, algebraic transmission optics, Fresnel diffraction,
Franhoufer diffraction