Download as pdf or txt
Download as pdf or txt
You are on page 1of 53

Fundamentals of Graphics Using

MATLAB 1st Edition Ranjan Parekh


Visit to download the full and correct content document:
https://textbookfull.com/product/fundamentals-of-graphics-using-matlab-1st-edition-ra
njan-parekh/
More products digital (pdf, epub, mobi) instant
download maybe you interests ...

Fundamentals of Computer Graphics Steve Marschner

https://textbookfull.com/product/fundamentals-of-computer-
graphics-steve-marschner/

Fundamentals of Technical Graphics Volume I Edward E


Osakue

https://textbookfull.com/product/fundamentals-of-technical-
graphics-volume-i-edward-e-osakue/

Programming Mathematics Using MATLAB 1st Edition Lisa


A. Oberbroeckling

https://textbookfull.com/product/programming-mathematics-using-
matlab-1st-edition-lisa-a-oberbroeckling/

Programming Mathematics Using MATLAB 1st Edition


Oberbroeckling Lisa A

https://textbookfull.com/product/programming-mathematics-using-
matlab-1st-edition-oberbroeckling-lisa-a/
Programming Mathematics Using MATLAB 1st Edition
Oberbroeckling Lisa A

https://textbookfull.com/product/programming-mathematics-using-
matlab-1st-edition-oberbroeckling-lisa-a-2/

Design Optimization using MATLAB and SOLIDWORKS 1st


Edition Suresh

https://textbookfull.com/product/design-optimization-using-
matlab-and-solidworks-1st-edition-suresh/

Nonlinear control systems using MATLAB First Edition


Boufadene

https://textbookfull.com/product/nonlinear-control-systems-using-
matlab-first-edition-boufadene/

Visualizing Data in R 4 Graphics Using the base


graphics stats and ggplot2 Packages 1st Edition Margot
Tollefson

https://textbookfull.com/product/visualizing-data-
in-r-4-graphics-using-the-base-graphics-stats-and-
ggplot2-packages-1st-edition-margot-tollefson/

Processing of Hyperspectral Medical Images Applications


in Dermatology Using Matlab 1st Edition Robert
Koprowski

https://textbookfull.com/product/processing-of-hyperspectral-
medical-images-applications-in-dermatology-using-matlab-1st-
edition-robert-koprowski/
Fundamentals of Graphics
­Using MATLAB®
Fundamentals of Graphics
­Using MATLAB®

Ranjan Parekh
MATLAB ® is a trademark of The MathWorks, Inc. and is used with permission. The MathWorks does not warrant the
accuracy of the text or exercises in this book. This book’s use or discussion of MATLAB® software or related products
does not constitute endorsement or sponsorship by The MathWorks of a particular pedagogical approach or particular
use of the MATLAB ® software

CRC Press
Taylor & Francis Group
6000 Broken Sound Parkway NW, Suite 300
Boca Raton, FL 33487-2742

© 2020 by Taylor & Francis Group, LLC


CRC Press is an imprint of Taylor & Francis Group, an Informa business

No claim to original U.S. Government works

Printed on acid-free paper

International Standard Book Number-13: 978-0-367-18482-7 (Hardback)

This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been
made to publish reliable data and information, but the author and publisher cannot assume responsibility for the
validity of all materials or the consequences of their use. The authors and publishers have attempted to trace the
­copyright holders of all material reproduced in this publication and apologize to copyright holders if permission to
publish in this form has not been obtained. If any copyright material has not been acknowledged please write and let
us know so we may rectify in any future reprint.

Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or
utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, ­including
­photocopying, microfilming, and recording, or in any information storage or retrieval system, without written
­permission from the publishers.

For permission to photocopy or use material electronically from this work, please access www.copyright.com (http://
www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA
01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users.
For organizations that have been granted a photocopy license by the CCC, a separate system of payment has been
arranged.

Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for
identification and explanation without intent to infringe.

Visit the Taylor & Francis Web site at


http://www.taylorandfrancis.com

and the CRC Press Web site at


http://www.crcpress.com
Contents

Preface, xi
Author, xv

Chapter 1   ◾   Interpolating Splines 1


1.1 INTRODUCTION 1
1.2 LINEAR SPLINE (STANDARD FORMS) 4
1.3 LINEAR SPLINE (PARAMETRIC FORM) 10
1.4 QUADRATIC SPLINE (STANDARD FORM) 13
1.5 QUADRATIC SPLINE (PARAMETRIC FORM) 15
1.6 CUBIC SPLINE (STANDARD FORM) 18
1.7 CUBIC SPLINE (PARAMETRIC FORM) 22
1.8 PIECEWISE SPLINES (STANDARD FORM) 25
1.9 PIECEWISE SPLINES (PARAMETRIC FORM) 31
1.10 CHAPTER SUMMARY 39
1.11 REVIEW QUESTIONS 39
1.12 PRACTICE PROBLEMS 40

Chapter 2   ◾   Blending Functions and Hybrid Splines 41


2.1 INTRODUCTION 41
2.2 BLENDING FUNCTIONS 41
2.3 BLENDING FUNCTIONS OF INTERPOLATING SPLINES 46
2.4 HERMITE SPLINE 52
2.5 CARDINAL SPLINE 57
2.6 CATMULL–ROM SPLINE 61
2.7 BEZIER SPLINE 63
2.8 SPLINE CONVERSIONS 69

v
vi   ◾    Contents

2.9 CHAPTER SUMMARY 74


2.10 REVIEW QUESTIONS 74
2.11 PRACTICE PROBLEMS 75

Chapter 3   ◾   Approximating Splines 77


3.1 INTRODUCTION 77
3.2 LINEAR UNIFORM B-SPLINE 78
3.3 CHANGING NUMBER OF CONTROL POINTS 88
3.4 QUADRATIC UNIFORM B-SPLINE 89
3.5 JUSTIFICATION FOR KNOT-VECTOR VALUES 102
3.6 QUADRATIC OPEN-UNIFORM B-SPLINE 105
3.7 QUADRATIC NON-UNIFORM B-SPLINE 108
3.8 CUBIC UNIFORM B-SPLINE 109
3.9 CHAPTER SUMMARY 131
3.10 REVIEW QUESTIONS 131
3.11 PRACTICE PROBLEMS 132

Chapter 4   ◾   2D Transformations 133


4.1 INTRODUCTION 133
4.2 HOMOGENEOUS COORDINATES 135
4.3 TRANSLATION 136
4.4 SCALING 138
4.5 ROTATION 140
4.6 FIXED-POINT SCALING 143
4.7 FIXED-POINT ROTATION 145
4.8 REFLECTION 147
4.9 FIXED-LINE REFLECTION 149
4.10 SHEAR 152
4.11 AFFINE TRANSFORMATIONS 155
4.12 PERSPECTIVE TRANSFORMATIONS 159
4.13 VIEWING TRANSFORMATIONS 163
4.14 COORDINATE SYSTEM TRANSFORMATIONS 167
4.15 CHAPTER SUMMARY 168
4.16 REVIEW QUESTIONS 169
4.17 PRACTICE PROBLEMS 169
Contents   ◾    vii

Chapter 5   ◾   Spline Properties 171


5.1 INTRODUCTION 171
5.2 CRITICAL POINTS 172
5.3 TANGENT AND NORMAL 176
5.4 LENGTH OF A CURVE 181
5.5 AREA UNDER A CURVE 183
5.6 CENTROID 189
5.7 INTERPOLATION AND CURVE FITTING 192
5.8 NOTES ON 2D PLOTTING FUNCTIONS 199
5.9 CHAPTER SUMMARY 205
5.10 REVIEW QUESTIONS 205
5.11 PRACTICE PROBLEMS 206

Chapter 6   ◾   Vectors 207


6.1 INTRODUCTION 207
6.2 UNIT VECTOR 208
6.3 DIRECTION COSINES 210
6.4 DOT PRODUCT 212
6.5 CROSS PRODUCT 214
6.6 VECTOR EQUATION OF A LINE 215
6.7 VECTOR EQUATION OF PLANE 218
6.8 VECTOR ALIGNMENT (2D) 222
6.9 VECTOR EQUATIONS IN HOMOGENEOUS COORDINATES (2D) 225
6.10 VECTOR EQUATIONS IN HOMOGENEOUS COORDINATES (3D) 229
6.11 NORMAL VECTOR AND TANGENT VECTOR 234
6.12 CHAPTER SUMMARY 239
6.13 REVIEW QUESTIONS 239
6.14 PRACTICE PROBLEMS 240

Chapter 7   ◾   3D Transformations 241


7.1 INTRODUCTION 241
7.2 TRANSLATION 241
7.3 SCALING 245
7.4 ROTATION 248
7.5 FIXED-POINT SCALING 251
viii   ◾    Contents

7.6 FIXED-POINT ROTATION 254


7.7 ROTATION PARALLEL TO PRIMARY AXES 256
7.8 VECTOR ALIGNMENT (3D) 264
7.9 ROTATION AROUND A VECTOR 270
7.10 ROTATION AROUND AN ARBITRARY LINE 273
7.11 REFLECTION 277
7.12 SHEAR 280
7.13 CHAPTER SUMMARY 283
7.14 REVIEW QUESTIONS 284
7.15 PRACTICE PROBLEMS 284

Chapter 8   ◾   Surfaces 287


8.1 INTRODUCTION 287
8.2 PARAMETRIC SURFACES 288
8.3 BEZIER SURFACES 293
8.4 IMPLICIT SURFACES 298
8.5 EXTRUDED SURFACES 307
8.6 SURFACES OF REVOLUTION 308
8.7 NORMAL VECTOR AND TANGENT PLANE 312
8.8 AREA AND VOLUME OF SURFACE OF REVOLUTION 317
8.9 TEXTURE MAPPING 320
8.10 SURFACE ILLUMINATION 329
8.11 NOTES ON 3D PLOTTING FUNCTIONS 335
8.12 CHAPTER SUMMARY 349
8.13 REVIEW QUESTIONS 350
8.14 PRACTICE PROBLEMS 350

Chapter 9   ◾   Projection 353


9.1 INTRODUCTION 353
9.2 2D PROJECTION 354
9.3 3D PROJECTION 361
9.4 MULTI-VIEW PROJECTION 366
9.5 AXONOMETRIC PROJECTION 369
9.6 FORESHORTENING FACTORS 371
9.7 ISOMETRIC, DIMETRIC, AND TRIMETRIC 375
9.8 OBLIQUE PROJECTION 382
Contents   ◾    ix

9.9 PERSPECTIVE PROJECTION 387


9.10 CHAPTER SUMMARY 391
9.11 REVIEW QUESTIONS 392
9.12 PRACTICE PROBLEMS 392

APPENDIX I: MATLAB® FUNCTION SUMMARY395

APPENDIX II: ANSWERS TO PRACTICE PROBLEMS399

REFERENCES407

INDEX409
Preface

T his book introduces fundamental concepts and principles of 2D and 3D


graphics and is written for under- and postgraduate students studying graphics- and/
or multimedia-related subjects. Most of the books on graphics use C programming envi-
ronments to illustrate practical implementations. This book deviates from this common
practice and illustrates the use of MATLAB® for the purpose. MATLAB by MathWorks,
Inc. is a data analysis and visualization tool suitable for algorithmic development and sim-
ulation ­applications. One of the advantages of MATLAB is that it contains large libraries
of in-built functions which can be utilized to reduce program-development time as com-
pared to other contemporary programming environments. It is assumed that the student
has basic knowledge of MATLAB, especially various matrix operations and plotting func-
tions. The MATLAB codes have been provided as answers to specific examples, and the
reader can simply copy and paste the codes to execute them. In general, the codes display
answers to expected results like equation of curves, blending functions, and transforma-
tion matrices as well as plot the final results to provide a visual representation of the solu-
tion. The objectives of this book are, first, to demonstrate how MATLAB can be used to
solve problems in graphics and, second, to help the student gain an in-depth knowledge
about the subject matter through visual representations and practical examples.
This book is roughly divided into two parts: 2D graphics and 3D graphics, although in
some places both of these concepts overlap mainly to highlight the differences between
them or for using simpler concepts to prepare the reader for more complex ones.
The first part of this book mainly deals with concepts and problems related to 2D
­graphics, and spans over five chapters: (1) Interpolating Splines, (2) Blending Functions
and Hybrid Splines, (3) Approximating Splines, (4) 2D Transformations, and (5) Spline
Properties.
Chapter 1 provides an introduction regarding the various types of interpolating splines
and their representations using polynomials. The theoretical concepts about how spline
equations are derived and the matrix algebra involved are discussed in detail followed by
numerical examples and MATLAB codes to illustrate the processes. Most of the e­ xamples
are followed by graphical plots to enable the reader visualize how the equations get
­translated into corresponding curves given their start points, end points, and other related
parameters. The chapter also highlights the differences in these procedures for both stan-
dard or spatial form and parametric form of the spline equations using linear, quadratic,
and cubic variants.

xi
xii   ◾    Preface

Chapter 2 introduces the concept of blending functions and how these functions are
used to derive equations for hybrid splines which pass through only a subset of their control
points or where conditions other than control points are used for deriving their equations.
Specifically, the chapter deals with the Hermite spline, Cardinal spline, Catmull–Rom
spline, and Bezier spline. For Bezier splines, both the quadratic and cubic variants are dis-
cussed along with Bernstein polynomials used to formulate their blending functions. As
in other chapters, the theoretical concepts are followed by numerical examples, MATLAB
codes and graphical plots for visualization. The chapter ends with a discussion about how
one spline type can be converted to another.
Chapter 3 discusses how polynomial equations are derived for approximating splines
that do not pass through any of their control points and how their blending functions
are computed. Specifically, the chapter provides detailed discussions about the Cox de
Boor algorithm and how it can used to derive equations for linear, quadratic, and cubic
B-splines. Essentially, B-splines consist of multiple curve segments with continuity at join
points. Values of the parametric variable at the join points are stored in a vector called
the knot vector. If the knot values are equally spaced, then the resulting spline is called
uniform B-spline; otherwise, it is referred to as non-uniform. B-splines are called open-
uniform when knot vector values are repeated. The chapter provides representations of the
knot vector and illustrates how the spacing in the vector generates the above-­mentioned
variants. As before, the theoretical concepts are followed by numerical examples, MATLAB
codes, and graphical plots for visualization.
Chapter 4 formally introduces a 2D coordinate system and then lays the foundations of
a homogeneous coordinate system using which all the transformations can be represented
in a uniform manner. Two-dimensional transformations are used to change the location,
­orientation, and shapes of splines in 2D plane. These transformations are ­translation, ­rotation,
scaling, reflection, and shear applied individually or in combination of two or more; hence, they
are known as composite transformations. Given known coordinates of a point, each of these
transformations is represented by a matrix which when multiplied to the original coordinates
produces a new set of transformed coordinates. The transformation matrices are first derived,
and then their applications are illustrated using examples, MATLAB codes, and graphical
plots. Both affine and perspective transformation types are discussed. The chapter ends with a
discussion on viewing transformations used for mapping a window to a viewport, and coordi-
nate system ­transformation used for mapping between multiple coordinate systems.
Chapter 5 enumerates some of the common properties of splines and how these can be
calculated from spline equations. First, it discusses the critical points namely minimum
and maximum of spline curves. Additionally for splines of degree 3 or more, the point of
inflection (POI) is of interest. Next, it discusses how the tangent and normal to a spline
curve can be calculated. The tangent to a curve is the derivative of the curve equation,
while the normal is the line perpendicular to the tangent. The third property is calculation
of length of a spline curve between any two given points, both for spatial and parametric
equations. The fourth property is to calculate the area under a curve, which is bounded
by a primary axis and two horizontal or vertical lines. An extension to this is calculation
of area bounded by two curves. The fifth property is calculation of centroid of an area,
Preface   ◾    xiii

the point of the center of gravity for plates of uniform density. The chapter ends with a
discussion on interpolation and curve fitting for data points and a list of some commonly
used built-in MATLAB functions for plotting 2D graphs and plots.
The second part of this book focuses on concepts and problems related to 3D graphics
and spans over the remaining four chapters namely (6) Vectors, (7) 3D Transformations,
(8) Surfaces, and (9) Projections.
Chapter 6 introduces the concept of vectors and their mathematical representations in
2D and 3D spaces. Vectors involve both magnitude and direction. They are represented
in terms of orthogonal reference components of unit magnitudes along the primary axes
together with a set of scaling factors. The chapter discusses how vectors can be added and
multiplied together. Vector products can either be scalar, called a dot product, or vector,
called a cross product. Using these concepts, the chapter then provides details of how vec-
tor equations of lines and planes can be derived. Next, the chapter discusses how vectors
can be aligned to specific directions and finally how vector equations can be represented
using homogeneous coordinates. The chapter ends with a section on how the tangent ­vector
and the normal vector can be calculated for a curve. As before, the theoretical concepts are
followed by numerical examples, MATLAB codes, and graphical plots for visualization.
Chapter 7 demonstrates how 3D transformations can be treated as extensions of 2D
transformations. These are used to change the location, orientation, and shapes of splines
in 3D space. These transformations are translation, rotation, scaling, reflection, shear
applied individually or in combination of two or more, known as composite transforma-
tion. This chapter formally introduces a 3D coordinate system and then uses homogeneous
coordinates to derive transformation matrices for the above operations. Their applications
are then illustrated using examples, MATLAB codes and graphical plots for v­ isualization.
The latter part of the chapter deals with vector alignment in 3D space and uses these
­concepts to derive rotation matrices in 3D space around vectors and arbitrary lines.
Chapter 8 takes a look at how surfaces can be created and represented using parametric
and implicit equations, and how the nature of the surface depends on the parameters of
the equations. Depending on creation process, surfaces can be categorized as extruded
and surfaces of revolution, both of which are discussed with examples and graphical plots.
The chapter then takes a look at how tangent planes of surfaces can be computed and
­provides methods for computing area and volume of surfaces. The latter part of the ­chapter
deals with surface appearances namely how textures can be mapped on surfaces and how
­illumination models can be used to determine brightness intensities at a point on the
­surface. The chapter ends with a discussion on some commonly used built-in MATLAB
functions for plotting 3D graphs.
Chapter 9 studies various types of projections and derives matrices for each. Projection
is used to map a higher-dimensional object to a lower-dimensional view. Projection can be
of two types: parallel and perspective. In parallel projection, projection lines are ­parallel to
each other, while in perspective projection, projection lines appear to converge to a r­ eference
point. Parallel projection can again be of two types: orthographic and oblique. In parallel
orthographic projection, the projection lines are perpendicular to the view plane, while
in parallel oblique projection, the projection lines can be oriented at any arbitrary angle
xiv   ◾    Preface

to the view plane. Usually for 3D projection, parallel orthographic projection can also be
sub-divided into two types: multi-view and axonometric. In multi-view projection, the
projection occurs on the primary planes i.e. XY-, YZ-, or XZ-planes, while in axonometric
projection, the projection occurs on any arbitrary plane. The chapter illustrates each type
of projection using examples, MATLAB codes, and graphical plots for visualization.
Each chapter is followed by a summarized list of salient points discussed in the chapter.
A set of review questions and a list of practice problems are provided at the end of each
chapter for self-evaluation. This book contains more than 90 solved numerical examples
with their corresponding MATLAB codes and an additional 90 problems given for prac-
tice. Readers are encouraged to execute the codes given in the examples and also write
their own codes to solve the practice problems. Most of the MATLAB codes given in this
book will require MATLAB version 2015 or later to execute properly. Some of the func-
tions mentioned have been specifically introduced from version 2016 and these have been
mentioned at the appropriate places. The usage of about 70 different MATLAB functions
related to graphics and plotting have been demonstrated in this book and a list of these
functions with a short description is provided at Appendix I. Readers are asked to use
MATLAB help utilities to get further information on these. The MATLAB codes are writ-
ten in a verbose manner for a better understanding of the readers who are new to the
subject matter. Some of the codes could have been written in a more compact manner but
that might have reduced their comprehensibility. Around 170 figures have been included in
this book to help the readers get proper visualization cues of the problems especially for 3D
environments. Answers to the practice problems are provided in Appendix II.
All ­readers are encouraged to provide feedback about the content matter of the book as
well as any omissions or typing errors. The author can be contacted at ranjan_parekh@
yahoo.com.

Ranjan Parekh
Jadavpur University
Calcutta 700032, India
2019

MATLAB® is a registered trademark of The MathWorks, Inc. For product information,


please contact:

The MathWorks, Inc.


3 Apple Hill Drive
Natick, MA 01760-2098 USA
Tel: 508-647-7000
Fax: 508-647-7001
E-mail: info@mathworks.com
Web: www.mathworks.com
Author

Dr. Ranjan Parekh, PhD (Engineering), is Professor at the School of Education
Technology, Jadavpur University, Calcutta, India, and is involved with teaching subjects
related to Graphics and Multimedia at the post graduate level. His research interests
include ­multimedia ­information processing, pattern recognition, and computer vision.
He is also the author of Principles of Multimedia (McGraw Hill, 2012; http://www.mhhe.
com/parekh/multimedia2).

xv
Chapter 1

Interpolating Splines

1.1 INTRODUCTION
Splines are irregular curve segments with known mathematical properties. Splines are fre-
quently encountered in vector graphics when graphic objects are required to have a defined
shape in 2D planes (Figure 1.1a) or 3D space (Figure 1.1b) or moved along a specified path
(Figure 1.1c). Based on the coordinates of some of the points on the curves, or slopes of
lines along the curves, the graphics system needs to calculate a mathematical representa-
tion of the curve before storing them onto a disk. This representation usually takes the
form of “vectors” or a series of values stored in matrices. The values are calculated using
an orthogonal 2D coordinate system consisting of the origin, X-axis, and Y-axis. These
coordinate axes are often called the primary or principal axes.
The term “spline” has been derived from the ship building industry where it is used to
refer to wooden planks bent between wooden posts for building the curved hull of ships
(O’Rourke, 2003). The location of the fixed posts controlled the shape of the plank. In
graphics, we use specific points along the spline curve to control the shape of the spline
and hence they are aptly referred to as “control points,” shortened as CPs. Depending on
the relationship between the CPs and the actual curves, the splines can be broadly cat-
egorized into three types: (1) interpolating splines, where the spline actually goes through
the CPs; (2) approximating splines, where the spline goes near the CPs but not actually
through them; and (3) hybrid splines, where the spline goes through some of the CPs but
not through all (Hearn and Baker, 1996) (see Figure 1.2).
Splines are mathematically modeled using polynomials. Polynomials are expressions
constructed from variables and constants, and involve addition, subtraction, ­multiplication,
and non-negative integer exponents. A polynomial can be 0 (zero) or a sum of non-zero
terms. Each term consists of a constant, called coefficient, multiplied by a variable. The
exponent of the variable is called its degree. The first example is a valid polynomial, but
the second example is not, because the variable is associated with a division operation and
also because of the fractional exponent. The general nth degree polynomial is shown in the
third example.

1
2   ◾    Fundamentals of Graphics Using MATLAB®

(a)

(b)

10

0
z

-5

-10

10 10
5 5
0 0
-5 -5
y -10
-10 x
(c)

FIGURE 1.1 Use of splines in graphics for creating (a) 2D shapes (b) 3D surfaces (c) motion path
trajectory
Interpolating Splines   ◾    3

Interpolating Approximating Hybrid


5 10 4
3
0 5 2
-5 1
0
-10 0
-1
-15 -5
-2
-20 -10 -3
2 4 6 8 10 -2 0 2 4 0 2 4 6

FIGURE 1.2 Types of splines.

1 − 2 x + 3x 2

2
1− + 3x 2.5
x

an x n + an −1x n −1 +  + a1x + a0

A polynomial equation is written when one polynomial is set equal to another. It can
either be in explicit form e.g. y = f (x ) when either side of the equation contains variables of
explicit type, or it can be in implicit form e.g. f ( x , y ) = 0 where multiple types of variables
can be on the same side. Examples are shown below:

y = x2

x 3 + y 3 − 5 xy = 0

Polynomial equations can also be represented in parametric form where the variables are
expressed as functions of another variable t e.g. x = f (t ), y = g (t ). The advantage of para-
metric equations is that the variables x and y do not need to be constrained by a single
equation and can be changed independently of each other, which offers more flexibility for
representing complex curves. As a convention, the value of t is usually taken to lie between
0 and 1 unless otherwise specified. The value of t = 0 corresponds to the start point and
t = 1 to the end point of the spline curve. Examples are shown below:

x = t, y = t2

x = r ⋅ cos t , y = r ⋅ sin t

A polynomial equation is frequently represented using graphs, which are useful in ­visually
depicting how one variable changes with another. The graph of a zero polynomial i.e. f ( x ) = 0
is the X-axis. The graph of a zero degree polynomial represented by f ( x ) = a, where a is a
constant, is a line parallel to the X-axis at a distance a from it. The graph of a degree 1 polyno-
mial, represented by f ( x ) = a + bx, is a straight line with a slope b and intercept a. The graph
4   ◾    Fundamentals of Graphics Using MATLAB®

f(x) = 0 f(x) = a f(x) = a + bx


5 5 5

0 0 0

-5 -5 -5
-5 0 5 -5 0 5 -5 0 5

f(x) = a + bx + cx2 f(x) = a + bx + cx2 + dx3 f(x,y) = x3 + y3 - 5*x*y = 0


5 5 10

0 0 0

y
-5 -5 -10
-5 0 5 -5 0 5 -10 -5 0 5 10
x

x = cos(t) x = sin(t) x = sin(t), y = cos(t)


1 1 1

0 0 0

-1 -1 -1
-4 -2 0 2 4 -4 -2 0 2 4 -1 -0.5 0 0.5 1

FIGURE 1.3 Graphs of polynomial equations.

of a degree 2 polynomial, represented by f ( x ) = a + bx + cx 2, is a parabolic curve and can be


specified if at least three points are known on the curve. The graph of a degree 3 polynomial,
represented by f ( x ) = a + bx + cx 2 + dx 3, is a cubic curve and can be specified if at least four
points are known on the curve. Instead of explicit equations, implicit equations f ( x , y ) = 0
can also be plotted by varying the independent variable by fixed intervals and computing
the corresponding values of the dependent variables. Plots of parametric equations consist of
three different graphs: the first is the t vs. x graph generated from the function x = f (t ), the
second is the t vs. y graph generated from the function y = g (t ), while the third graph is x vs. y
generated by plotting the x and y values from the same values of t obtained from the previous
plots. Thus, even if we always do not generate an equation between x and y by eliminating t,
we can always plot a graph of x vs. y. Figure 1.3 shows graphs of various polynomial equations.
In the following sections, we take a look at few types of interpolating splines and how
their equations are derived.

1.2 LINEAR SPLINE (STANDARD FORMS)


A linear spline is a straight line represented by a first-degree polynomial and can be gen-
erated given two points are known along it. Standard form of a linear spline implies the
spline equation is computed in the spatial domain i.e. the x-y plane. Let the given points
be P1(x1, y1) and P2(x2, y2). Choose a starting linear equation that is written in matrix form

 a 
y = a + bx =  1 x    (1.1)
 b 
Substitute the given points in the starting equation to generate two equations. Two equa-
tions are sufficient to solve for the two unknown coefficients a and b
Interpolating Splines   ◾    5

y1 = a + bx1
(1.2)
y 2 = a + bx 2

The two equations are written in matrix form Y = C·A, where C is the constraint matrix and
A is the coefficient matrix:

 y1   1 x1  a 
 =   (1.3)
 y 2   1 x2   b 

The equations are solved to find the values of the unknown coefficients. Thus, we have
A = inv(C)·Y

−1
 a   1 x1   y1 
 b = 1    (1.4)
   x2   y 2 

The values of the coefficients are substituted in the starting equation to arrive at the
­equation of the spline.

−1
 1 x1   y1 
y =  1 x      (1.5)
 1 x 2   y 2 

Example 1.1
Find the equation of a line through points P1(3, 2) and P2(8, −4).
Choose a starting equation

 a 
y = a + bx =  1 x   
 b 

Substitute given points in the equation

2 = a + b(3)

−4 = a + b(8)

Write in matrix form Y = C·A

 2   1 3  a 
 −4  =  1 8   b 
  
6   ◾    Fundamentals of Graphics Using MATLAB®

P1
2

-1
y

-2

-3

-4
P2

-5
0 2 4 6 8 10
x

FIGURE 1.4 Plot for Example 1.1.

Solve the matrix equation A = C−1·Y

 a   1.6 −0.6   2   5.6 


 b  =  −0.2 =
0.2   −4   −1.2 
  

Substitute the coefficient values in the starting equation

y = 5.6 − 1.2 x

Verification: In most graphics problems, it is usually possible to verify the results


obtained by substituting the given data in it. Putting x = 3, we get y = 2, and p
­ utting
x = 8, we get y = −4. Hence, the line does indeed pass through the given points
(Figure 1.4).

MATLAB® Code 1.1


clear all; clc;
syms x;
x1 = 3; y1 = 2;
x2 = 8; y2 = -4;
X = [x1 x2]; Y = [y1 y2];
C = [1 x1; 1 x2];
A = inv(C)*Y';
a = A(1);
Interpolating Splines   ◾    7

b = A(2);
fprintf('Required equation : \n');
y = a + b*x;
y = vpa(y)

%plotting
xx = linspace(x1, x2);
yy = subs(y, x, xx);
plot(xx, yy, 'b-'); hold on;
scatter(X, Y, 20, 'r', 'filled');
xlabel('x'); ylabel('y');
grid; axis square;
axis([0 10 -5 3]);
d = 0.5;
text(x1+d, y1, 'P_1');
text(x2+d, y2, 'P_2');
hold off;

NOTE
%: signifies a comment line
axis: controls appearance of the axes of the plot, specifies ordered range of values to display
clc: clears workspace of previous text
clear: clears memory of all stored variables
fprintf: prints out strings and values using formatting options
grid: turns on display of grid lines in a plot
hold: holds the current graph state so that subsequent commands can add to the same graph
inv: computes inverse of a matrix
linspace: creates 100 linearly spaced values between the two end-points specified
plot: creates a graphical plot from a set of values
scatter: type of plot where the data is represented by colored circles
subs: substitutes symbolic variable with a matrix of values for generating a plot
syms: declares the arguments following as symbolic variables
text: inserts textual strings at specified locations in the graph
title: displays a title on top of the graph
vpa: displays symbolic values as variable precision floating point values
xlabel, ylabel: puts text labels along the corresponding primary axes

An alternate form of the standard line equation can be formed where, instead of two
given points, only one point and the slope of the line are given. This aspect is discussed
below.
Let the given points be P1(x1, y1) and s be the slope of the line. Choose a starting linear
equation that is written in matrix form as before in Equation (1.1).

 a 
y = a + bx =  1 x   
 b 
8   ◾    Fundamentals of Graphics Using MATLAB®

Calculate derivative of the starting equation

dy
y′ = =b (1.6)
dx
Substitute the given values in the starting equation to generate two equations

y1 = a + bx1
(1.7)
s =b
The two equations are written in matrix form Y = C·A as before

 y1   1 x1   a 
 =   (1.8)
 s   0 1  b 

The equations are solved to find the values of the coefficients: A = C−1·Y

−1
 a   1 x1   y1 
 b =    (1.9)
   0 1   s 

The values of the coefficients are substituted in the starting equation to arrive at the
­equation of the spline.

−1
 1 x1   y1 
y =  1 x      (1.10)
 0 1   s 

Example 1.2
Find the equation of a line through the point P(−1, 1) and having slope 2.
Choose a starting equation

 a 
y = a + bx =  1 x   
 b 

Calculate derivative of the starting equation

dy
y′ = =b
dx

Substitute given values in the equation

1 = a + b(−1)

2=b
Interpolating Splines   ◾    9

2
y

P
0

-2

-4

-4 -3 -2 -1 0 1 2
x

FIGURE 1.5 Plot for Example 1.2.

Write in matrix form Y = C·A

 1   1 −1   a 
 2 = 0 1   b 
  

Solve the matrix equation A = C−1·Y

 a   1 1  1   3 
 b = 0 =
1   2   2 
  

Substitute the coefficient values in the starting equation

y = 2x + 3

dy
Verification: Putting x = −1 in the above equation, we get y = 1. Also, slope =2
dx
(Figure 1.5).

MATLAB Code 1.2


clear all; clc;
syms x;
x1 = -1; y1 = 1; s = 2;
Y = [y1 s];
C = [1 x1; 0 1];
10   ◾    Fundamentals of Graphics Using MATLAB®

A = inv(C)*Y';
a = A(1);
b = A(2);
fprintf('Required equation:\n');
y = a + b*x;
y = vpa(y)

%plotting
xx = linspace(x1-3, x1+3);
yy = subs(y, x, xx);
plot(xx, yy, 'b-', x1, y1, 'bo'); hold on;
scatter(x1, y1, 20, 'r', 'filled');
xlabel('x'); ylabel('y');
grid; axis square; axis tight;
text(x1+0.5, y1, 'P');
hold off;

1.3 LINEAR SPLINE (PARAMETRIC FORM)


A linear spline can also be represented by parametric equations. Let the given points
through which the spline passes be P0 and P1. As per the convention mentioned before
P0 ≡ P(0) i.e. the first point corresponds to the point where t = 0. Similarly, P1 ≡ P(1) i.e. the
second point corresponds to the point where t = 1. Note that in some cases, the first point
may not always correspond to t = 0 or the last point may not always correspond to t = 1.
We will discuss these issues subsequently.
Choose a starting linear parametric equation written in matrix form

 a 
P(t ) = a + bt =  1 t    (1.11)
 b 

Substitute given points in the starting equation by choosing t = 0 at start and t = 1 at end.

P0 = a + b(0)
(1.12)
P1 = a + b(1)

Write equations in matrix form G = C·A, where G is called the geometry matrix

 P0   1 0  a 
 =   (1.13)
 P1   1 1   b 

Solve the equation for A i.e. A = C−1·G = B·G, where B is called the basis matrix
−1
 a   1 0   P0 
 b =   (1.14)
   1 1   P1 
Interpolating Splines   ◾    11

Substitute the coefficient values in the starting equation

−1
 1 0   P0 
P(t ) =  1 t     (1.15)
 1 1   P1 

NOTE
In reality, the parametric equations should be written separately for x and y i.e.
x (t ) = ax + bx ⋅ t and y(t ) = a y + by ⋅ t . However, we use a compact notation here by ­substituting
P(t ) = [x (t ), y(t )], a = ax , a y  , b = bx , by . After solving for a and b, we separate out the
­individual components and substitute them in the respective equations for x and y.

Example 1.3
Find the equation of a line through points P0(3, 2) and P1(8, −4) in parametric form.
Choose a starting equation.

 a 
P(t ) = a + bt =  1 t   
 b 

Write equations in matrix form G = C·A, where G is called the geometry matrix

 3 2   1 0  a 
 8 =
 −4   1  
1   b 

Solve the equation for A i.e. A = C−1·G = B·G


−1
 a   1 0   3 2   3 2 
 b =  =
−4   5 −6 
   1 1   8

Substitute the coefficient values in the starting equation

 3 2 
P(t ) =  1 t  
 5 −6 

The required parametric equations are obtained by separating out the x and y
components

x = 3 + 5t

y = 2 − 6t

Verification: x (0) = 3, x (1) = 8, y(0) = 2, y(1) = − 4 (Figure 1.6).


12   ◾    Fundamentals of Graphics Using MATLAB®

t-x t-y x-y


8 2 2
P0

7 1 1

0 0
6
-1 -1
x

y
5
-2 -2
4 -3 -3
P1
3 -4 -4
0 0.5 1 0 0.5 1 2 4 6 8
t t x

FIGURE 1.6 Plots for Example 1.3.

MATLAB Code 1.3


clear all; clc;
syms t;
x1 = 3; y1 = 2;
x2 = 8; y2 = -4;
X = [x1 x2]; Y = [y1 y2];
G = [X ; Y];
C = [1 0; 1 1];
A = inv(C)*G';
ax = A(1,1); ay = A(1,2);
bx = A(2,1); by = A(2,2);

fprintf('Required equations : \n');


x = ax + bx*t; x = vpa(x)
y = ay + by*t; y = vpa(y)

%plotting
tt = linspace(0,1);
xx = subs(x, t, tt);
yy = subs(y, t, tt);

subplot(131), plot(tt, xx); grid; axis square;


xlabel('t'); ylabel('x'); title('t - x');
subplot(132), plot(tt, yy); grid; axis square;
xlabel('t'); ylabel('y'); title('t - y');
subplot(133), plot(xx, yy, 'b-', X, Y, 'bo');
grid; axis square; hold on;
scatter(X, Y, 20, 'r', 'filled');
xlabel('x'); ylabel('y'); title('x - y');
text(x1+1, y1-0.5, 'P_0');
text(x2-1, y2+0.5, 'P_1');
hold off;
Another random document with
no related content on Scribd:
J. C. Hoadley

I was able to get from our landlord and purchasers of our tools the
necessary extension of time, and made the engine for him. It and the
loom were each a complete success. Mr. Waters told me long after
that he never observed a single variation from exact uniformity of
motion, without which his loom would have had to be abandoned.
I had one day the pleasure of meeting there the president of the
Lancaster mills, the only other great industry of Clinton, who had
come over expressly to examine the running of our engine. Before
he left he said to me that the engine certainly presented a
remarkable advance in steam engineering.
I saw there one thing that interested me greatly. That was, the
method of painting wire cloth. This was carried on in a large tower
high enough to enable a twenty-yard length of the “cloth” to be
suspended in it. This was taken through a tub of paint, and drawn
slowly upward between three successive pairs of rollers, the last pair
of india-rubber, held firmly together. By these the paint was
squeezed into every corner, both sides were thoroughly painted, and
the surplus paint removed, so that every mesh was clear, a uniform
perfection unattainable by hand painting, and two boys would paint
in ten minutes as much as a painter could paint in a day. I think this
was an invention by Mr. Waters.
With the completion of the engine for the Clinton Wire Cloth
Company, the manufacture of the high-speed engine was closed for
three years, from the spring of 1873 to the spring of 1876.
This long rest proved to be most valuable. Looking back upon it, I
have always been impressed with its importance at that very time to
the development of the high-speed system.
The design of the engine needed to be revised, and this revision
involved study, to which time and leisure were essential.
I had also an order from Elliott Brothers of London, to prepare a
new and enlarged edition of the pamphlet descriptive of the Richards
Indicator. I determined to make this a comprehensive book,
embracing new information required by the steam engineer, so far as
I knew it. This was published simultaneously in London and New
York in the summer of 1874.
I was enabled also to turn to account the report of the experiments
of M. Regnault, which I had been at so much trouble to get, and with
the help of English authorities to prepare and embody in this book
Tables of the Properties of Saturated Steam, which the American
Society of Mechanical Engineers honored me by adopting as its
standard.
I felt warranted in giving to this edition an amended title, as
follows: “A treatise on the Richards Steam Engine Indicator, and the
Development and Application of Force in the Steam Engine.”
This also was a job requiring much time and undivided application.
It is needless to say that without this long and entire rest from
business neither of these tasks could have been undertaken.
I found in the Astor Library a remarkable old book, entitled “Canon
triangulorum,” published at Frankfurt in 1612, containing a Table of
Natural Trigonometrical Functions, computed for every minute of arc,
and extended to the fifteenth place of decimals. The column of
versed sines enabled me to prepare tables exhibiting the rates of
acceleration and retardation of the motion of a piston controlled by a
crank, neglecting the effect of the angular vibration of the
connecting-rod. This effect was afterwards shown separately. For my
treatment of this subject, I must refer the reader to the book itself.
A little incident in connection with this work, which made a deep
impression on my mind, and has since afforded me some food for
reflection, seems worth relating. The printing was done in London,
and I did not see the proof, so I had to take especial pains with the
copy, having no opportunity to revise it. I was living in Harlem, and at
one time having no suitable envelope for mailing, and none being
obtainable there, I took a Third Avenue horse-car for an eight-mile
ride down to the New York post office, intending to get some
envelopes at a stationery store on Beekman Street, and mail the
portion of the copy which I then had ready at the general post office.
I had hardly taken my seat when Mr. Allen got into the car. He was
living in Mott Haven, and I had not seen him for a long time. Besides
ourselves the car was nearly if not quite empty. He came and sat
down by me, and I opened my copy and read to him something in
which I knew he would be interested. He said to me, in his gentle
way, “You would not express it exactly that way, would you?” On the
instant it flashed on my mind that I had made a stupid blunder, and I
replied, “I guess I wouldn’t,” and, thanking him for calling my
attention to it, I left the car, and returned home and corrected it. I
have quite forgotten what the point was, and if I remembered it, I
would not tell. But I have often asked myself who sent Mr. Allen
there, saving me from publishing a mortifying blunder. I expect some
sweet spirit will tell me before long.

The Prototype of the Modern High-speed Engine, Fly-wheel Side.

The Prototype of the Modern High-speed Engine, Crank Side.


As soon as this book was off my hands, I devoted myself to the
revision and standardizing of the engine.
As made up to that time, it was not reversible, and the valves
could not be handled. It could not therefore be used in rolling-mills,
the field to which I felt already that it was especially adapted.
Moreover, every engine should be capable of being backed in
starting, as otherwise whenever it had stopped with the piston at a
point later than the latest point of cut-off, or say in the last half of the
stroke, which it would do half the time, it would need to be pulled
around by hand to a position in which one of the admission ports
would be open. This in a large engine, or one connected with
extensive lines of shafting, would be a serious matter, so much so
that in some engines little starting cylinders are required.

Longitudinal Section of Cylinder and Valves.


Cross-section of Cylinder and Valves.
Elevation and Plan of Valve Connections.

I had also determined to use the equilibrium admission valves with


adjustable pressure plates, according to the drawings sent to me by
Mr. Allen in 1863, and to abandon the separate steam chest, and put
the exhaust valves on the opposite side of the cylinder.
Then the engine needed to be standardized, so as to cover the
field with the fewest number of sizes, symmetrically distributed. The
existing practice with all makers of engines had been to let the
purchaser dictate the size and speed of the engine he wanted, a
practice which resulted in a lot of patterns and drawings not adapted
to other people’s requirements, and not properly distributed. For an
organized manufacturing business, this habit must be entirely broken
up.
Mr. Allen had in his shop in Mott Haven an unoccupied second
story, in which I had stored our patterns and drawings and drawing
implements. Here I established my quarters, and spent my working
hours until this second job was finished.
The two perspective views of opposite sides of the engine, show
these changes as they appear externally, and the remaining views
show some constructive details.
These latter show the exhaust valves transferred to the front side
of the engine, and located so as to drain the cylinder, and the
admission valves set at different elevations, to accommodate the
differential connection, the abandonment of the separate steam-
chest, and this chest with the exhaust chambers cast with the
cylinder, with openings over the valves; the levers by which the
differential movements are given to the admission valves; and the
single-link rod, and the gab by which this rod is unhooked, with the
method of moving the admission valves by hand.
In place of the levers on the steam rock shaft, I at that time drew
cast-iron disks, which being polished and vibrating in place I thought
very handsome. They gave me lots of trouble, till I learned enough to
get rid of them, the story of which I will tell by and by. The front view
shows the admission valve stems balanced by being extended
through at the back end, a feature which helped the governor action
when high steam pressures were employed, but which was
abandoned as unnecessary after I abandoned the disks on the
rocker shaft.
First Arrangement of Exhaust Valves.

The first two figures show the valves in section and the adjustable
pressure plate and mode of its adjustment. The closeness of the
piston to the head may be observed. I never allowed more than one-
eighth inch clearance, and never had a piston touch the head. This
was because the connecting-rod maintained a constant length, the
wear of the boxes being taken up in the same direction.
These illustrations show the exhaust valves after alteration made
several years later in Philadelphia. As first designed by me, these
are shown in the foregoing sectional views. As will be seen, the
exhaust valves lay with their backs towards the cylinder, worked
under the pressure of the steam in the cylinder, made four openings
for release and exhausted through the cover.
I consented to the change in Philadelphia because this
arrangement involved too much waste room, but the change was not
satisfactory after all. I had become possessed with the idea that the
engine running at high speed needed 50 per cent. more room for
exhausting than for admission. This was not the case. I have always
regretted that I did not retain this design, and content myself with
reducing the exhaust area.
The lightness of the piston in this view will be observed. This was
a special design for adapting the engine to be run at 200 revolutions,
giving 1200 feet piston travel per minute. The stuffing-box was a
freak which was abandoned.
The next figures show the valve-stem guides, rocking-levers,
coupling-rods and gab, which latter when thrown over unhooks the
link-rod, as is done on steamboat engines.
The following figures show the construction of the main bearing
with adjustments on opposite sides, by which the shaft is kept in
exact line, and shows also the solid support of the shaft quite out to
the hub of the crank. This view contains one error. The cap is not
made a binder. I relied on the strength of the thick continuous web of
the bed under the boxes in addition to the depth of the bed. But we
once had a bed break right here under enormous strain, and since
then the caps have been made binders. It will be observed that the
wedges are drawn upward to tighten the boxes. It is not necessary to
explain why.
Main Bearing.
Front View of Wiper
Section on the Line a-b
Center Line of Shaft

Eccentric and Crosshead Pin Crank-pin Lubricator.


Lubricator.

The above left-hand cut shows the automatic lubricator of the


eccentric and the cross-head pin. The stud A, on the eccentric strap
and on the strap of the connecting-rod, carries a curved blade, a,
which at the beginning of each forward stroke rises to take the drop
of oil from the stem of the sight-feed lubricator. This is set on an arm
fixed on the cap of the main-bearing and on a bridge between the
upper guide-bars. The drop is made sure to come to this central
point by a wire B filling the brass tube, grooved on opposite sides
and terminating in a point.
The automatic lubrication of the crank-pin presented a still more
serious problem. It was solved by the construction shown, in the right
hand view, which will be understood without further description. It will
be seen that here the oil tube is inclined, and the drop follows it to a
point on its lower side. Both these lubricators proved absolutely
reliable. The last one is equally applicable on double-crank engines.
Fly-wheels.
Made
Dimensions when Practicable
of to Serve also
Cylinders. Travel Indicated Powers. as Belt-Drums.
Revolutions of Piston Without With
of Crank in Feet Conden- Conden- Weight
Bore. Stroke. per Minute. per Minute. sation. sation. Diameter. of Rim. V

Horse Horse
Inches. Inches. Powers. Powers. Feet. Inches. Lbs.
6 12 350 700 25 3 350
7 12 350 700 35 3 6 400
8 16 280 746 45 60 4 650
9 16 280 746 60 75 4 6 700
10 20 230 766 75 100 5 1300
11.5 20 230 766 100 125 5 6 1450
13 24 200 800 130 160 6 6 2100
14.5 24 200 800 160 200 7 2350
16 30 165 825 200 260 8 4000
18 30 165 825 250 330 9 4000
20 36 140 840 320 400 10 6000
22 36 140 840 400 500 11 6000
24 42 125 875 480 620 12
26 42 125 875 560 730 13
28 48 112.5 900 670 870 16
32 48 112.5 900 870 1140
36 48 112.5 900 1100 1430
40 48 112.5 900 1360 1750
44 48 112.5 900 1600 2100

The powers are those given by an initial pressure of 85 lbs. on the square inch, cut
one quarter of the stroke. For the best economy steam should not be cut off earli
unless a higher pressure is carried. At the latest point of cut off, the powers de
double those given in the above Table. The engines can be worked under
pressures, with corresponding increase of power.

After considerable study I finally adopted the above table of


standard sizes and speeds, covering the ground from 25 horse-
power up with nineteen sizes.
As the bed could not be reversed, I needed both a right-hand and
a left-hand bed for each size. I avoided half of this expense in
patterns by planning two diameters of cylinders with the same
stroke, and making one bed answer for both.
Until I found something else to do, I employed myself in preparing
complete drawings for three or four smaller sizes of engines; a work
which afterwards proved exceedingly useful.
CHAPTER XXI

Production of an Original Surface Plate.

will introduce here a description of the method of


producing an original surface plate.
The production of mechanically true planes by the
method of scraping was first suggested by Mr.
Whitworth, and was brought to perfection in his works.
Having had and having improved the opportunity there
to study this system, and having employed it largely in the
manufacture of high-speed engines, it seems to me that an account
of it should find a place in these reminiscences, especially as the
importance of mechanical truth is coming to be more and more
realized in this country. I will therefore describe the process of
producing an original standard surface plate.
The first point, of course, is the design. The square form, 30
inches square, has been found most suitable. I could not, however,
use this form myself, a long surface plate being required for the
guide-bars and steam-chest joints of my engine.
The plate must be incapable of deflection. To insure this it is ribbed
on the under side with ribs seven inches deep, and is supported at
three points, equidistant from each other and from the center, so that
its equal support cannot vary, whatever may be the surface on which
it stands. It is provided on two opposite sides with handles, by which
it can be lifted and rotated. The arrangement of the ribs and feet is
here shown.
It must be cast of hard and close-grained iron, which will possess
the most durable qualities, in a baked mold without a cope, so that
the gas shall escape most freely. As cast, the plate should be one
inch thick. About three eighths of an inch is planed off, removing all
dirt, and leaving a perfectly sound surface, with a thickness of about
five eighths of an inch. Three of these plates are made. After these
have been planed, their edges squared and steel handles put in they
are delivered to the fitter.

Surface Plate for Producing a True Plane.


I will first describe the tool used in scraping. Originally this was a
hooked tool, and the scraping was done by a drawing motion. Two of
these tools were employed, one for the roughing work, in which the
hook projected downward about three quarters of an inch, and the
other for fine scraping. In the latter the hook projected downward
only about one quarter of an inch, and absolute freedom from
vibration was aimed at. These tools were used for a number of
years, but afterwards a radical change was made. The modern
method is to employ a single straight tool, like a carpenter’s chisel,
about an inch and a quarter wide and an eighth of an inch thick, with
a square end. This end is slightly curved, and its corners are
rounded to avoid scratching the plate. The scraping is done by a
pushing motion.
This tool has been found preferable on all accounts. Projections
needing to be removed are in front of the tool, instead of being
covered by it. The tool is perfectly rigid, and can be inclined to the
surface at any desired angle. The cutting edge is a square angle,
and being well supported keeps sharp for a considerably longer time
than when it is an acute angle, and when ground or honed two
edges are formed. Moreover, the pushing motion is preferred.
Two of the plates only are first brought together. For disclosing the
high points, one of these is covered with a raddle made of finely
sifted red lead and oil. This is made quite stiff, and all of it that can
be removed by the palm of the hand is rubbed off, leaving only a
very thin uniform film on the surface. Any dust having been carefully
removed from both surfaces by a soft brush, one of these plates is
inverted on the other, and at one corner each plate is marked in the
edge with a prick-punch. The upper plate is then rubbed about on
the lower one for, say, half a minute. When lifted off, the high
portions of the surfaces are shown on one plate by the raddle put on,
and on the other by that rubbed off. The workman then gives to
these parts of the surfaces a general scraping, giving to his tool a
long sweep, say from four to six inches. This is repeated two or three
times, the stroke being shortened each time, and the upper plate
being placed in a position at right angles with its last one, which can
be determined by the prick-punch marks. This change of position is
necessary to avoid a cross-wind or spiral form. The scraping should
now extend over the entire surfaces, and these should have a
general uniform bearing on each other, with the points of contact
uniformly distributed and equally distinct. The work should be
continued in the same way until all these requirements are fulfilled.
Now appears the use of the third plate. The two surfaces thus
formed are sure to be, one of them convex and the other concave, in
some corresponding degree. The workman now numbers the plates,
by numbers stamped in the edges, these being marked Nos. 1 and
2, and the third plate No. 3. No. 2 is now set aside, and No. 3 is
scraped to fit No. 1. It is thus made a duplicate of No. 2. Next, No. 1
is set aside and Nos. 2 and 3 are brought together. Supposing these
to be convex, they will bear together at the middle point, on which
the upper plate will rock, and the degree of their convexity will thus
be shown. The workman then in the same manner scrapes these
plates equally to the best of his judgment, until their entire surfaces
are brought together, with equal distribution of the points of contact.
These two surfaces will now again be, one convex and the other
concave, though in a much less degree. The next step is to apply
No. 1, which is concave, to either No. 2 or No. 3, and scrape it to fit.
It is then applied to the other, of which it has now been made a
duplicate, and the same process is repeated, until the three plates
can be interchanged in any way, and will have a uniform general
bearing on each other, with equal distribution and distinctness of the
points of contact. We have thus, in a general way, produced three
demonstrated true planes, but the surfaces are yet far from the
desired approximation to absolute truth.
Now follows the fine scraping, which is not attempted until general
truth has thus been established. The object of this is to multiply the
points of contact and perfect their equal distribution and prominence.
For this operation no raddle is used, but the surfaces are rubbed
together dry. When the plates are separated, the points of contact
shine like stars. Here skill and care are pre-eminently required. The
scraping takes off only a dust. If too strong depressions may be
made deeper than before, and requiring the reduction of the entire
surface. The superiority of the modern tool is now especially shown.
By lowering the angle of the tool, the workman presents the slightly
curved edge to the surface in a position as nearly parallel with it as
he desires. Interchanges similar to the former ones are now
repeated, until the bright points are brought as close together as is
desired, with uniform distribution and distinctness. The tedious
operation is now finished, and these bright points remain as
witnesses.
The three plates were necessary to the production of one. They
have also a permanent use. They are indispensable to the
preservation of the true plane, which it has cost so much patient
labor to produce. The date of their completion is stamped on their
edges. Then plates 1 and 2 are put away in the store-room, their
surfaces carefully protected from rust or injury, which last is best
avoided by inverting one on the other, and No. 3 is put into use. A
prominent use is for the production of smaller plates or straight-
edges adapted to special purposes. After a while, perhaps in a little
while, this plate loses its truth by unequal wear. Indeed, speaking
with absolute truth, it may be said that the first time this plate is used
it is ruined. But by taking pains to use different parts of its surface as
equally as possible, it may be kept in fair condition for some time. It
can at any time be restored to its original condition by scraping it to
No. 2, taking the same pains to turn it one quarter way around at
every rub. In the course of time No. 2 will itself become worn
unequally, when its truth can be restored by rubbing it on No. 1.
Finally the three plates can all be restored to their original condition
by rubbing them together interchangeably as at first. Thus the true
plane can be absolutely perpetuated.
The importance of this work can only be realized when we
consider that the true plane affords the only means by which true
cylindrical work also can be either produced or verified. It is thus
seen to be fundamental to all mechanical truth.
CHAPTER XXII

Efforts to Resume the Manufacture. I Exhibit the Engine to Mr. Holley. Contract
with Mr. Phillips. Sale of Engine to Mr. Peters.

n the years ’74 and ’75 I was filled with eagerness to


get the engine on its legs again, and tried a number of
schemes in vain. One morning I read in the paper that
Alexander L. Holley had just returned from Europe,
where he had been making a tour of the steel-making
establishments, studying both the Bessemer and the
open hearth or Siemens-Martin processes, on a scheme of
interchanging improvements in manufacture between American and
foreign licensees under both these systems.
It occurred to me that Mr. Holley might be the very man I wanted. If
he could be got to recommend the engine to the steel-makers, they
might take it up for their own use. I had not applied the engine in
rolling-mill work, but felt sure that it would prove especially adapted
to that service. So I called on Mr. Holley at his home in Brooklyn. I
had never before met him, but I found that he knew something about
the engine from its exhibition in Paris, and from his brother-in-law,
Frederick J. Slade, then an officer of the New Jersey Steel Company,
and who was one of the engine’s warm admirers. I have already
mentioned Mr. Slade and the help he gave me while in Paris in
solving the problem of piston acceleration.
Alexander Lyman Holley

You might also like