Table of contents

advertisement
Table of contents
Chapter 1. Getting started in PostScript
1. Simple drawing
2. Simple coordinate changes
3. Coordinate frames
4. Doing arithmetic in PostScript
5. Errors
6. Working with files and viewers GhostView or GSView
7. Some fine points
8. A trick for eliminating redundancy
9. Summary
10. Code
Chapter 2. Elementary coordinate geometry
1. Points and vectors
2. Areas of parallelograms
3. Lengths
4. Vector projections
5. Rotations
6. The cosine rule
7. Dot products in higher dimensions
8. Lines
9. Code
Chapter 3. Variables and procedures
1. Variables in PostScript
2. Procedures in PostScript
3. Keeping track of where you are
4. Passing arguments to procedures
5. Procedures as functions
6. Local variables
7. A final improvement
Chapter 4. Coordinates and conditionals
1. Coordinates
2. How PostScript stores coordinate transformations
3. Picturing the coordinate system
4. Moving into three dimensions
5. How coordinate changes are made
6. Drawing infinite lines: conditionals in PostScript
7. Another way to draw lines
8. Clipping
9. Order counts
10. Code
Chapter 5. Drawing polygons: loops and arrays
1. The repeat loop
2. The for loop
3. The loop loop
1
2
7
9
11
14
16
19
22
22
24
26
26
27
32
34
37
39
41
41
44
46
46
48
50
52
54
55
57
59
59
62
65
67
71
73
78
81
82
83
84
84
86
87
Table of contents
4. Graphing functions
5. General polygons
6. Clipping polygons
7. Code
Chapter 6. Curves
1. Arcs
2. Fancier curves
3. Bézier curves
4. How to use Bézier curves
5. The mathematics of Bézier curves
6. Quadratic Bézier curves
7. Mathematical motivation
8. Weighted averages
9. How the computer draws Bézier curves
10. Bernstein polynomials
11. This section brings you the letter O
Interlude
Chapter 7. Drawing curves automatically: procedures as arguments
1. Drawing an hyperbola
2. Parametrized curves
3. Drawing graphs automatically
4. Drawing parametrized paths automatically
5. How to use it
6. How it works
7. Code
Chapter 8. Non-linear 2D transformations: deconstructing paths
1. Two dimensional transformations
2. Conformal transforms
3. Transforming paths
4. Maps
5. Fonts want to be free
6. Code
Chapter 9. Recursion in PostScript
1. The perils of recursion
2. Sorting
3. Convex hulls
Chapter 10. Perspective and homogeneous coordinates
1. The projective plane
2. Boy’s surface
3. Projective transformations
4. The fundamental theorem
5. Projective lines
6. A remark about solving linear systems
7. The GIMP perspective tool, revisited
8. Projections in 2D
9. Perspective in 3D
Chapter 11. Introduction to drawing in three dimensions
Chapter 12. Transformations in 3D
1. Rigid transformations
2. Dot and cross products
3. Linear transformations and matrices
4. Changing coordinate systems
2
87
88
90
94
95
95
96
97
100
108
109
110
113
116
118
120
123
126
126
130
131
133
135
137
138
140
140
144
145
146
150
150
153
153
155
159
165
167
169
171
172
175
176
179
180
181
185
187
187
189
195
198
Table of contents
5. Rigid linear transformations
6. Orthogonal transformations in 2D
7. Orthogonal transformations in 3D
8. Calculating the effect of an axial rotation
9. Finding the axis and angle
10. Euler’s Theorem
11. More about projections
Chapter 13. PostScript in 3D
1. A survey of the package
2. The 3D graphics environment
3. Coordinate transformations
4. Drawing
5. Surfaces
6. Code
Chapter 14. Drawing surfaces in 3D
1. Faces
2. Polyhedra
3. Visibility for convex polyhedra
4. Shading
5. Smooth surfaces
6. Smoother surfaces
7. Abandoning convexity
8. Summary
9. Code
Chapter 15. The regular polyhedra
1. What exactly is a regular polyhedron?
2. There are no more than five regular solids
3. The proof of Euclid XI.21
4. Trihedral angles
5. The results we need from Book I
6. Constructing the regular polyhedra
7. Verifying regularity
8. Code
9. References
Appendix 1. Summary of PostScript commands
1. Mathematical functions
2. Stack operations
3. Arrays
4. Dictionaries
5. Conditionals
6. Loops
7. Conversions
8. File handling and miscellaneous
9. Display
10. Graphics state
11. Coordinates
12. Drawing
13. Displaying text
14. Errors
15. Alphabetical list
Appendix 2. Setting up your PostScript environment
1. Editing PostScript files
3
201
202
204
207
209
210
211
212
213
217
219
221
222
223
225
225
227
229
231
235
239
244
249
250
252
253
254
258
261
263
265
269
269
272
274
274
275
276
277
277
278
279
279
280
281
282
283
284
285
285
288
288
Table of contents
2. Running external files
3. Making images
4. Printing files
Appendix 3. Structured PostScript documents
Appendix 4. Simple text display
1. Simple PostScript text
2. Outline fonts
Appendix 5. Zooming
1. Zooming
2. An explicit procedure
3. Playing around
4. Code
Appendix 6. Evaluating polynomials: getting along without variables
1. The most straightforward way to do it
2. Horner’s method
3. Evaluating the derivatives efficiently
4. Evaluating Bernstein polynomials
5. Code
Appendix 7. Importing PostScript files
1. Labelling a graph
2. Importing TEX text
3. Fancy work
Epilogue
4
289
290
291
293
296
296
298
300
300
301
302
303
304
304
305
307
309
310
311
311
315
317
321
Download