Equal-Area Dogleg Bricks.
Version of Tuesday 16 June 2015.
Dave Barber's other pages.

§1. Introduction. Bricks have been an important building material for millennia. Although produced in countless sizes and shapes, the vast majority are rectangular solids whose dimensions are between 2 inches (50 millimeters) and 16 in (40 mm).

The length, width, and height of a rectangular brick are measured two ways: in nominal dimensions and actual dimensions. The nominal dimension is usually a round number to simply the calculation of how many bricks will be needed in a large project. Meanwhile, each actual dimension is smaller than the corresponding nominal dimension by the anticipated thickness of the mortar joint in the completed brick wall. This amount is usually 3/8 in or 10 mm, although a bricklayer will sometimes make the joints a little larger or smaller to help the bricks line up attractively in the finished wall, or to minimize the cutting of bricks. Any precise treatment of brick sizes must carefully distinguish nominal and actual sizes throughout. If a brick is measured with a conventional ruler in the naïve manner, the actual dimensions will be yielded.

Many bricks have frogs or cores, cavities which reduce the weight of the brick and give mortar a better place to grip. Some cores are large enough to allow metal reinforcing rods to be inserted through multiple bricks. The architect selects bricks whose frogs or cores are so situated that they will not appear in the finished wall.

In the ensuing discussion, terminology generally follows American practice. Most examples employ inches rather than millimeters, although the formulas can be extended to any measuring units.

§2. Some standards. Measured nominally, many rectangular bricks have a width that is one-half the length, and a height that is one-third the length. This allows the bricks to be positioned in six different directions within the wall and still fit. The heavily-used American modular brick (here called medium brick) exhibits this characteristic. Also widely seen in the United States is a brick (here named long brick) 4 in longer. Meanwhile, what is frequently called a half brick is here termed short brick. All three sizes have roles in this report.

chart 2A
three different bricks
 nominal measurementactual measurement

In chart 2A, the nominal measurements of the medium brick are 8 × 8/2 × 8/3 = 8 × 4 × 2 2/3 in. Each actual measurement is 3/8 in less, yielding a size of 7 5/8 × 4 5/8 × 2 7/24 in, except that industry practice usually rounds 2 7/24 to 2 1/4; in light of the permissible variation in joint thickness, this is of little consequence. In nominal measurement, the short brick's length equals its width, the medium brick's length is twice its width, while the long brick's length is thrice its width.

The American modular brick has a slightly larger counterpart in the United Kingdom: 225 × 112.5 × 75 mm nominal (British term coordinating size), 215 × 102.5 × 65 mm actual (work size); this is from a British Standard (BS 4729) that establishes sizes and shapes for a large assortment of plain and fancy bricks. Related to BS 4729 are BS 6073 for concrete blocks, and the European brick standard EN 771.

Although there is no American standard for brick sizes that might be regarded as official, custom has produced a high level of consistency. Most bricks and blocks manufactured in the United States have nominal dimensions that are multiples of 4 in (4, 8, 12, 16), or that are divisors of 16 in (16, 8, 5 1/3, 4, 3 1/5, 2 2/3, 2). Aside from these, bricks whose nominal width is 6 in are seen.

In the parlance of the brick industry, any brick that is not a rectangular solid is a shape (US) or special (UK).

§3. Overlap. The rectangularity of the ordinary brick becomes inconvenient when a wall needs to have a corner that is not a right angle. The gist of this report is to suggest some dimensions for dogleg bricks; in other words bricks that that are L-shaped, except that the angle is something other than 90°. Motivation for the exact numbers comes from examining an ordinary wall constructed of medium bricks, as shown in chart 3A. Two pairs of bricks are excerpted for further discussion.

chart 3A

Because the nominal width of these medium bricks is 4 in, and the length twice that, the overlap is half the length of a brick. The nominal area of overlap between bricks of adjacent courses is therefore 16 sq in, and this is the same whether the bricks are parallel or perpendicular. Meanwhile, the actual area of overlap between bricks is the square of the actual width (3 5/8 in), which is 13 9/64 sq in.

The overlap is critical if a strong wall is to be built — it provides bonding. The dogleg bricks described below preserve the overlaps of 16 sq in nominal or 13 9/64 sq in actual when used within a brick wall whose nominal width is 4 in. For other widths, the overlap area is quadratically proportional.

§4. Calculating dimensions. Chart 4A displays a typical dogleg brick as proposed here.

chart 4A

Whether the brick is being measured nominally or actually, the symbols mean:

The angle of a brick is the same whether it is measured nominally or actually. Unless the brick is of an exceptional design, it can be turned upside down in order to exchange left and right dimensions. An asymmetric brick will have two different projections; by convention, the smaller is chosen.

Chart 4B shows a dogleg brick compatible with the plain bricks of chart 2A. Although this example has an angle of 36°, any angle between 0° and 90° can be used, and some of the dimensions will change. For nominal or actual measurements respectively,

This is the germ of the name equal-area dogleg brick (EADB). The area of the top is the same, no matter the angle, and the area of the bottom equals the top. Too, the total area of the six sides is a constant.

chart 4B
four renderings of the same brick, and two partitionings of it;
a mortar joint of 3/8 = 0.375 is assumed
 nominal measurementactual measurement
one brick
equivalent to
two bricks
one brick
equivalent to
two bricks plus mortar gap

The brick in chart 4B can be partitioned into the angular kernel and one extension, the extension being a rectangular solid whose length is the nominal width:

Chart 4C displays three bricks with other configurations of extensions.

chart 4C
three different bricks
 nominal measurementactual measurement
angular kernel;
zero extensions
one extension
on each end
two extensions
on one end

Here are formulas to produce the numbers, where symbol LP represents the projection of the left leg, RP of the right leg:

chart 4D
WN= nominal width, e.g. 4 in or 225 mm LX= number of extensions on the left leg, minimum zero
HN= nominal height, e.g. 2 7/24 in or 65 mm RX= number of extensions on the right leg, minimum zero
J= anticipated joint thickness, e.g. 3/8 in or 10 mm θ= angle, between 0° and 90°
first calculate
WA= actual width = WN − J SX= LX + RX
HA= actual height = HN − J T= tan (θ ÷ 2)
then calculate
LEN = WN × LX + WN × (1 + T) ÷ 2 LEA = WN × LX + WA × (1 + T) ÷ 2
REN = WN × RX + WN × (1 + T) ÷ 2 REA = WN × RX + WA × (1 + T) ÷ 2
LIN = WN × LX + WN × (1 − T) ÷ 2 LIA = WN × LX + WA × (1 − T) ÷ 2
RIN = WN × RX + WN × (1 − T) ÷ 2 RIA = WN × RX + WA × (1 − T) ÷ 2
LPN = LIN × sin (θ) LPA = LIA × sin (θ)
RPN = RIN × sin (θ) RPA = RIA × sin (θ)
perimeter of top= 4 × WN + 2 × SX × WN perimeter of top= 4 × WA + 2 × SX × WN
area of top= WN2 + SX × WN2 area of top= WA2 + SX × WA × WN
volume= (WN2 + SX × WN2) × HN volume= (WA2 + SX × WA × WN) × HA

Here are values for the angular kernel, for some particular angles:

chart 4E
dimensions of angular kernel,
with nominal width = 4 and joint = 3/8

In chart 4E, for any angle, the sum of LE or RE and RI or LE nominally is 4.000; actually 3.625. The projection is maximized at 45°.

This development assumes that, in nominal measurement, the length of an extension always equals the width of the brick; but there is no inescapable reason that this be the case, and some designers might prefer to lift the restriction. In that case, most formulas in chart 4D will need to be adjusted. The sine qua non of this whole EADB system is the zero-extension angular kernel shown in chart 4C.

The notion of extension has a vertical counterpart: a plain brick can be laid with the length vertical, becoming a soldier. Chart 4F indicates how dogleg bricks are adapted to this purpose, with a dogleg soldier whose height equals the length of an ordinary medium brick.

chart 4F
nominal measurementactual measurement

Chart 4G shows a design option: curving the angular kernel. Areas are no longer quite equal, varying with the angle, but there will still be enough area for proper bonding. A likely choice of arc is circular. Extensions, and the mortar joints between them, remain uncurved.

chart 4G

Chart 4H shows an example of how the curved kernel is a "drop-in" replacement for an angular kernel (outlined in magenta).

chart 4H
actual measurements

In the notation of chart 4D, the radius of the interior face is LIA ÷ T, and of the exterior face LEA ÷ T.

§5. Examples of walls. Chart 5A shows a wall in the familiar stretcher bond employing EADBs like those of chart 4B, except that the angle is now an arbitrarily-chosen 61°. In the top image, the bricks are drawn to their nominal size; in the middle, to their actual size, leaving gaps where mortar would go. The upper three courses are lifted to reveal detail. The bottom image is an excerpt of the middle image.

Evident is that a brick consisting of the angular kernel plus one extension is enough to achieve proper bonding; this was a motivation for the EADB system.

chart 5A

Chart 5B contains two adaptations of Flemish bond with long and short straight bricks. The top image also uses symmetric doglegs of zero or two extensions; the bottom asymmetric doglegs of two extensions.

chart 5B

Chart 5C is a Flemish bond of more traditional proportions. It uses short and medium straight bricks; as well as angle bricks with zero extensions on one end, and with one and a half extensions on the other.

chart 5C

A regular octagon can be formed with 45-degree bricks, as in chart 5D. The other regular polygons of at least four sides can also be produced through suitable selection of angle.

chart 5D

§6. Acute physical angles. Throughout the discussion above, the angle specification a brick has been limited to the range 0° to 90°. If more than 90°, the result is a brick that would have an acute physical angle. In the example of chart 6A, the image at the top shows how an angle specification of 128° leads to a physical angle of 180° − 128° = 52°. The problem is that bricks are usually made of a brittle material, and a brick with an acute physical angle such as 52° is prone to accidental breakage. The images on the bottom offer two workarounds for a wall that would have a 52° corner.

chart 6A
angle specification is (180° − 52°) ÷ 2 = 64°angle specification is 52°

Caution: The formulas of chart 4D are not guaranteed to work with angles outside the range 0° to 90°.

§7. Cut bricks. One way to manufacture dogleg bricks is to extrude or mold them to the right size and shape before firing, while the clay is still soft. Such was assumed in the development thus far. However, another method is sometimes preferred: making an oblique cut in a plain brick after it is fired, and then gluing the two pieces together in a different orientation. This method may be advantageous when only a few EADBs are needed, or when the factory cannot otherwise provide the desired angle.

If the brick is cut with a saw, a small part of it (the kerf) will be ground into dust, and will be missing from the finished product. The kerf depends on the thickness of the cutting blade, and here is assumed to be approximately 1/10 in. Because of the equal-area characteristic, the brick will nonetheless come out in virtually the right size.

Chart 7A gives an example:

Notice that the cut-and-glued brick (7A-4) is a bit smaller than the ideal (7A-2) because of the kerf. A slightly larger mortar joint will compensate.

chart 7A
actual measurements
7A-1 7A-3
7A-2 7A-4

The angular relationship is 66° = (180° − 48°) ÷ 2.

§8. Summary. Rows three through five of chart 8A review the EADBs mentioned so far; rows six through nine introduce more. Once the nominal measurements of the short brick and angular kernel are established (presumably using the formulas of chart 4D), the dimensions of the larger bricks are calculated directly by addition. For actual measurements, the joint thickness must be also reckoned.

Normally, a brick with two angular kernels will use the same angle for both. The bricks in rows six and seven, if they have angle specifications of 64°, can be used to produce other versions of the walls in chart 6A.

All EADBs satisfy the mathematical definition of a prism and are thus candidates for extrusion.

chart 8A
 nominal measurement actual measurement
whole bricksame dimensions as whole bricksame dimensions as

If of the same height, bricks in rows 3, 6, and 8 use the same amount of raw material as the brick of row 1, and can be cut from it, the only loss being the kerf(s). Similarly, bricks in rows 4, 5, 7, and 9 use the same amount of raw material as the brick of row 2, and can be cut from it, again the only loss being the kerf(s).

Chart 8B reprises the formulas needed to calculate the dimensions of an angular kernel.

chart 8B
extracted from chart 4D
WN= nominal width θ= angle
J= anticipated joint thickness  
first calculate
WA= actual width = WN − J T= tan (θ ÷ 2)
then calculate
LEN = WN × (1 + T) ÷ 2 LEA = WA × (1 + T) ÷ 2
REN = WN × (1 + T) ÷ 2 REA = WA × (1 + T) ÷ 2
LIN = WN × (1 − T) ÷ 2 LIA = WA × (1 − T) ÷ 2
RIN = WN × (1 − T) ÷ 2 RIA = WA × (1 − T) ÷ 2
LPN = LIN × sin (θ) LPA = LIA × sin (θ)
RPN = RIN × sin (θ) RPA = RIA × sin (θ)
perimeter of top= 4 × WN perimeter of top= 4 × WA
area of top= WN2 area of top= WA2
short brick angular kernel


§A1. Tessellation. EADBs are of dimensions calibrated for the building of single-wythe walls, and are not particularly tessellable. The consequence is that adjustments will be necessary for many kinds of paving use. However, there is one genre of patterns that works with any angle of bricks, with examples in chart 9A.

chart 9A

In this arrangement, if the gap for the mortar joint is eliminated and bricks thus touch one another, everything will still fit together exactly. Omission of mortar is common in paving.

Chart 9B helps explain the limitation of tessellation. All the dogleg bricks are the same, and the two plain bricks are the short and medium bricks of chart 2A. The angle is 53.130° = 180° − 2 × atan (2). Aside from the trivial cases where the angle is 0° or 90°, this is the only angle that will allow the pink bricks to have a length which is a multiple of the width, in nominal measure. Unfortunately, 53.130° is not a convenient angle for tessellation.

chart 9B
nominal measurments

Thus far, the length of a plain brick has been restricted to being a multiple of the width, in nominal measure. If this is liberalized to allow the length of a short brick to be any multiple of half the width, two more angles become possible, as shown in chart 9C.

chart 9C
nominal measurments

Still, the angles 28.072° amd 73.740° are not well suited to tessellation. These considerations also apply to walls that have multiple wythes.

§A2. A British standard. BS 4729 establishes dozens of sizes and shapes of bricks by giving their actual, rather than nominal, measurements. Of interest here are fifteen dogleg bricks covered by two of its sub-standards:

For each of these bricks, BS 4729 gives four distances, in millimeters, denoted A, B, C, and D. Chart 10A show how they relate to the measurement labels of EADBs. A grid denotes the fancy faces.

chart 10A
actual measurements
BS 4729
 external — AN2internal — AN3

For an external brick, BS 4729 does specify D (= LE) and A (= RE), but not LI and RI, because they are mathematically consequential once LE, RE, and B (= W) are selected. For an internal brick, BS 4729 does specify D (= LI) and A (= RI), but not LE and RE, for the same reason. Meanwhile, the height (C = H) is independent of all these. The angle (a = A) is measured the same in either system.

Bricks from the external and internal classifications of BS 4729 never have the same dimensions, but with EADBs the choice of which faces (if any) to make fancy is independent of the dimensions.

Chart 10B below relates BS 4729 and EADBs. Columns are numbered 1 through 16 for convenience.

In column 1 is the BS 4729 designation. Lineal measurements appear in columns 2 through 5 of the chart, and the angle is in column 6. BS 4729 recognizes only the angles 30°, 45°, and 60°; but the chart also calculates EADBs for 15° and 75° to demonstrate that the system is readily extensible.

Columns 7 through 10 contain actual lineal measurements of the EADBs. Cells colored yellow are for figures taken from BS 4729, un-rounded to their theoretical values, and applied to the EADB system. (As a practical matter, rounding brick sizes to the nearest millimeter makes sense, as greater precision is difficult to obtain in manufacture or installation.) Column 11 contains the actual area of the top of the brick (TA = "top area").

Columns 12 through 15 contain nominal lineal measurements of the EADBs, although BS 4729 says little about how nominal measurements might be calculated for dogleg bricks. Because faces sometimes meet at angles other than 90°, it is not correct to merely add the joint thickness to each actual figure. Instead, the method here is to assume that the brick is covered on every surface with a layer of mortar 5 mm thick, which distance is half of the standard joint thickness of 10 mm. Then the nominal measurements reflect the size of this enlarged polyhedron. Column 16 contains the nominal area of the top of the brick.

Because all of the BS 4729 bricks shown here have the same width (B) and the same height (C), so do the EADBs. However, the dimensions of the BS 4729 bricks were not chosen to observe the equal-area principle, so the derived EADBs cannot have equal areas.

chart 10B
distances in millimeters — areas in square millimeters — angles in degrees
12345 6  7891011  1213141516
BS 4729 — external  angle  EADB actual  EADB nominal
       15  158.75102.50145.2689.0125,395  164.41108.16149.6093.3528,998
AN2.1 1591026510230 158.75102.50131.2975.0423,963 165.09108.84134.9578.7027,426
AN2.2 1591026510245 158.75102.50116.2960.0422,426 165.82109.57119.2262.9725,739
AN2.3 1591026510260 158.75102.5099.5743.3220,712 166.64110.39101.6845.4323,858
      75 158.75102.5080.1023.8518,716 167.59111.3481.2625.0121,667
       15  215.00102.50201.5189.0131,161  220.66108.16205.8593.3535,326
AN2.4 2151026510230 215.00102.50187.5475.0429,729 221.34108.84191.2078.7033,754
AN2.5 2151026510245 215.00102.50172.5460.0428,192 222.07109.57175.4762.9732,067
AN2.6 2151026510260 215.00102.50155.8243.3226,478 222.89110.39157.9345.4330,186
      75 215.00102.50136.3523.8524,482 223.84111.34137.5125.0127,996
BS 4729 — internal  angle  EADB actual  EADB nominal
       15  64.74177.2451.25163.7523,421  70.40182.9055.59168.0926,831
AN3.1 164102655130 78.71191.2151.25163.7524,853 85.05197.5554.91167.4128,402
AN3.2 164102655145 93.71206.2151.25163.7526,389 100.78213.2854.18166.6830,089
AN3.3 164102655160 110.43222.9351.25163.7528,103 118.32230.8253.36165.8631,970
      75 129.90242.4051.25163.7530,099 138.74251.2452.41164.9134,161
       15  115.99172.24102.50158.7528,161  121.65177.90106.84163.0932,034
AN3.4 1591026510230 129.96186.21102.50158.7529,593 136.30192.55106.16162.4133,605
AN3.5 1591026510245 144.96201.21102.50158.7531,130 152.03208.28105.43161.6835,292
AN3.6 1591026510260 161.68217.93102.50158.7532,844 169.57225.82104.61160.8637,173
      75 181.15237.40102.50158.7534,840 189.99246.24103.66159.9139,364
       15  115.99228.49102.50215.0033,927  121.65234.15106.84219.3438,362
AN3.7 2151026510230 129.96242.46102.50215.0035,359 136.30248.80106.16218.6639,934
AN3.8 2151026510245 144.96257.46102.50215.0036,896 152.03264.53105.43217.9341,620
AN3.9 2151026510260 161.68274.18102.50215.0038,610 169.57282.07104.61217.1143,501
      75 181.15293.65102.50215.0040,605 189.99302.49103.66216.1645,692
12345 6  7891011  1213141516
  in all cases:
W ≈ B = 102.50
H ≈ C = 65.00
  in all cases:
W ≈ B = 112.50
H ≈ C = 75.00

The fundamental dimensions in BS 4729 are 225 mm for nominal brick size, and 10 mm for the mortar joint. Here are derivations of some other measurements:

chart 10C
215225 − 10
159158.75 = 3/4 × 225 − 10
102102.50 = 1/2 × 225 − 10
4646.25 = 1/4 × 225 − 10
651/3 × 225 − 10
164163.75 = 3/4 × 225 − 5
5151.25 = 1/4 × 225 − 5
215163.75 + 51.25
102.5163.75 − 51.25 − 10

The BS 4729 standard is very popular, with nearly all major British brick manufacturers offering its principal sizes and shapes. Many have gone further by extending the system with their own compatible sizes and shapes.

§A3. Trapezoidal bricks. The wall in chart 5C employs a dogleg brick with an extension whose length is one and a half times the width. Once fractions become eligible, one can make a brick that uses only half of an angular kernel, resulting in a trapezoid. Chart 11A, similarly to chart 5A, shows a wall using such bricks, drawn in nominal and then actual size, followed by an excerpt.

chart 11A

Chart 11B shows the four different bricks used in chart 11A, color-coded to match. Each trapezoidal brick is equivalent to half an angular kernel plus three-quarters of a medium brick; the yellow and green bricks are mirror images of each other. Each corner of a trapezoid is marked with its angle; for the reasons explained in section 6, extreme acute angles have to be avoided. On the dogleg brick, the length of each extension is half the width of the brick.

chart 11B
four different bricks
 nominal measurementactual measurement

Chart 11C introduces two more trapezoidal bricks, each equivalent to a short brick with half an angular kernel attached to each end. In nominal measurement, all these trapezoidal bricks share the equal-area characteristic with the ordinary medium brick; in actual measurement, a very close approximation is maintained.

chart 11C
two different bricks
nominal measurementactual measurement

A designer must be wary of selecting the bricks whose dimensions are in chart 11B, and then arranging them as in chart 11D.

chart 11D
caution required

The problem is that the vertical joints will not line up quite right. In nominal size, two short bricks equal one medium brick, and chart 11E performs such a substitution to make the inaccuracy conspicuous.

chart 11E
unaligned joints

The green bricks are too long relative to the blue bricks. The magnitude of the offset equals, nominally, the oblique width of a trapezoidal brick minus the orthogonal width. In the brick of chart 11F, this is 4.206 − 4.000 = 0.206.

chart 11F
nominal measurements

With medium bricks (as in chart 11D) the inaccuracy will not be obvious, and the bricklayer may be able to fix the problem by making some vertical joints a little larger than 3/8 in, and others a little smaller. High-precision work would call for cutting the green bricks.

§A4. Two wythes. Although the equal-area principle does not immediately extend to walls of multiple wythes, an adaptation for the two-wythe case is certainly possible.

Throughout history, many bonds have been used for two-wythe walls, but Flemish and English are chosen here for examples because they have been among the most popular, and because a dogleg-brick scheme that works with them will work with most other bonds. Chart 12A displays straight wall sections in each of these bonds. Note that the overlap of bricks is sometimes smaller than encountered in previous sections. For bricks of the dimensions of chart 2A, overlap in these bonds is nominally 2 in × 4 in = 8 sq in, or actually 1 5/8 × 3 5/8 = 5 57/64 sq in. Although this area is only about half of what has been discussed above, centuries of bricklaying have revealed it to be sufficient in a multi-wythe brick wall that is designed properly in its other aspects.

chart 12A
flemish bondenglish bond

In order to make corners and ends of walls line up, these two-inch intervals necessitate two sizes of rectangular brick beyond those introduced so far. They appear in chart 12B, with the medium and short brick for comparison. The long brick rarely appears in historical brickwork, builders having generally preferred a length-to-width ratio of approximately 2-to-1.

chart 12B
four different bricks
 nominal measurementactual measurement

as in
chart 2A

as in
chart 2A

Many builders will not use anything smaller than a queen closer or short brick (42 2/3 cu in nominally), because a very small brick necessarily has a small total bonding area. Unless the brick is located in an interior wythe of a wall with at least three wythes, it is at risk of falling out of the finished wall.

Chart 12C proposes two dogleg bricks to serve the two-wythe wall. For this example, an angle of 29° is arbitrarily selected. The brick in the top row is an ordinary angular kernel with, on one end, an extension whose length is nominally half the width. In the bottom row is a brick consisting of an angular kernel with extensions on both ends. These extensions are of whatever length happens to make it true that, nominally, LI of the outside brick equals LE of the inner (2.517); and RI of the outside brick equals RE of the inside (4.517). The actual measurements of LI, LE, RI, and RE differ, and will vary with the angle.

chart 12C
two different bricks
 nominal measurementactual measurement

More broadly, extensions of any length can be used as long as outside LI equals inside LE and outside RI equals inside RE. As long as the extension is not of negative length, bonding area will be satisfactory.

Chart 12D at the top shows a wall in Flemish bond with the bricks of chart 12C, while the bottom images are two phasings of English bond. In all of these suggested layouts, the placement of dogleg bricks in one course is the mirror image of that in the courses immediately above and below, even when not all the bricks are drawn.

chart 12D

Usually, it is not possible to find angle bricks that will carry the bond pattern rigorously through the corner.

Chart 12E is similar to chart 12C, except it shows an outer brick whose projections are probably too long to be practicable.

chart 12E
two different bricks
 nominal measurementactual measurement


A remedy is revealed in chart 12F, where the shorter leg of the outer brick has been reduced by the size of a short brick. The longer leg could be reduced as well.

chart 12F
 nominal measurementactual measurement


Chart 12G shows several ways to use the brick from chart 12F.

chart 12G

Colophon. This page was prepared on an Apple Macintosh running OS X. Most of the html was written with an ordinary text editor, although number-filled charts such as 10B were generated by a C++ program under XCode.

The images required multiple steps:

  1. Images were initially generated by a C++ program under XCode. Output from that program was itself a series of programs in the Abobe PostScript language.
  2. A few of the PostScript files were tweaked with a text editor.
  3. The PostScript code was translated to pdf using pstopdf.
  4. Preview was used to convert the pdf files to gif files.
  5. Minor editing of the gif files was done using GIMP.