Computer graphics for Java programmers

著者

書誌事項

Computer graphics for Java programmers

Leen Ammeraal, Kang Zhang

Wiley, c2007

2nd ed

  • : pbk

大学図書館所蔵 件 / 1

この図書・雑誌をさがす

注記

First published: 1998

Includes bibliographical references (p. [371]-372) and index

内容説明・目次

内容説明

The book covers elementary concepts, from how to produce simple graphical objects using logical coordinates to producing filled regions. The book reinforces concepts with useful and simple examples, then progresses to applied geometry (vectors, polygons) and then onto how to perform rotations and other transformations of graphical objects. In a logical progression of ideas, the reader is introduced to some of the classic graphics algorithms and finally to chapters which cover particular effects such as perspective drawings and hidden-face and hidden-line elimination. The book also provides a host of ready-to-run programs and worked examples to illuminate general principles and geometric techniques for the creation of both 2D and 3D graphical objects.

目次

Preface ix C H A P T E R 1 - Elementary Concepts 1 1.1 Lines, Coordinates and Pixels 2 1.2 The Boundaries of Filled Regions 7 1.3 Logical Coordinates 8 1.4 Anisotropic and Isotropic Mapping Modes 14 1.5 Defining a Polygon by Using the Mouse 21 Exercises 26 C H A P T E R 2 - Applied Geometry 31 2.1 Vectors 32 2.2 Inner Product 34 2.3 Determinants 34 2.4 Vector Product 37 2.5 The Orientation of Three Points 38 2.6 Polygons 41 2.7 The Area of a Polygon 42 2.8 Point-in-Triangle Test 44 2.9 Point-in-Polygon Test 45 2.10 Point-on-Line Test 47 2.11 Distance Between a Point and a Line 50 2.12 Projection of a Point on a Line 51 2.13 Triangulation of Polygons 53 Exercises 58 C H A P T E R 3 - Geometrical Transformations 63 3.1 Matrix Multiplication 64 3.2 Linear Transformations 65 3.3 Translations 71 3.4 Homogeneous Coordinates 71 3.5 Inverse Transformations and Matrix Inversion 72 3.6 Rotation About an Arbitrary Point 74 3.7 Changing the Coordinate System 78 3.8 Rotations About 3D Coordinate Axes 79 3.9 Rotation About an Arbitrary Axis 80 Exercises 88 C H A P T E R 4 - Some Classic Algorithms 91 4.1 Bresenham's Algorithm for Line Drawing 92 4.2 Doubling the Line-Drawing Speed 97 4.3 Circles 102 4.4 Cohen-Sutherland Line Clipping 107 4.5 Sutherland-Hodgman Polygon Clipping 113 4.6 Bezier Curves 120 4.7 B-Spline Curve Fitting 130 Exercises 135 C H A P T E R 5 - Perspective 139 5.1 Introduction 140 5.2 The Viewing Transformation 141 5.3 The Perspective Transformation 146 5.4 A Cube in Perspective 148 5.5 Some Useful Classes 152 5.6 A General Program for Wire-Frame Models 168 Exercises 174 C H A P T E R 6 - Hidden-Line Elimination 177 6.1 Line Segments and Triangles 178 6.2 Tests for Visibility 179 6.3 Specification and Representation of 3D Objects 190 6.4 Holes and Invisible Line Segments 192 6.5 Individual Faces and Line Segments 194 6.6 Automatic Generation of Object Specification 198 6.7 Hidden-Line Elimination with HP-GL Output 207 6.8 Implementation 209 Exercises 213 C H A P T E R 7 - Hidden-Face Elimination 219 7.1 Back-Face Culling 220 7.2 Coloring Individual Faces 225 7.3 Painter's Algorithm 226 7.4 Z-Buffer Algorithm 234 Exercises 246 C H A P T E R 8 - Fractals 249 8.1 Introduction 249 8.2 Koch Curves 250 8.3 String Grammars 253 8.4 Mandelbrot and Julia Sets 264 Exercises 276 A P P E N D I X A - Linear Interpolation of 1/z 277 AP P ENDIX B - A Note on Event Handling 281 A P P E N D I X C - File Obj3D.java 287 A P P E N D I X D - Class CvHLines.java 293 A P P E N D I X E - Some Applications 301 E.1 Platonic Solids 301 E.2 Sphere Representations 312 E.3 A Torus 319 E.4 Beams in a Spiral 323 E.5 Functions of Two Variables 326 A P P E N D I X F - Hints and Solutions to Exercises 339 Bibliography 371 Index 373

「Nielsen BookData」 より

詳細情報

ページトップへ