Page 124 Table of Contents Index Page 126
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E



CHAPTER 14. GENERAL DESIGNS

become diamond-shaped. Applying a coordinate transformation to a pattern does not affect the
designs that make up the pattern. It only changes the position, size, and shape of the cells' holes,
allowing different portions of the designs in the cells to show through. Consequently, applying
make-rectangular-tile to a pattern of nonuniform designs can produce a different appearance
in each tile. The pattern cells' holes are tiled, but the designs in the cells are not tiled and a
different portion of each of those designs shows through in each tile.

This function is permitted to capture its mutable inputs; the consequences of modifying those
objects are unspecified.

=> make-stencil array [Function]
Returns a pattern design that has (array-dimension array 0) cells in the vertical direction and
(array-dimension array 1) cells in the horizontal direction. array must be a two-dimensional
array of real numbers between 0 and 1 (inclusive) that represent opacities. The design in cell
(i;j) of the resulting pattern is the value of (make-opacity (aref array i j)).

This function is permitted to capture its mutable inputs; the consequences of modifying those
objects are unspecified.

14.3 Tiling

Tiling repeats a rectangular portion of a design throughout the drawing plane. This is most
commonly used with patterns.

=> make-rectangular-tile design width height [Function]
Returns a design that, when used as an ink, tiles a rectangular portion of the design design
across the entire drawing plane. The resulting design repeats with a period of width horizontally
and height vertically. width and height must both be integers. The portion of design that
appears in each tile is a rectangle whose top-left corner is at (0;0) and whose bottom-right
corner is at (width;height). The repetition of design is accomplished by applying a coordinate
transformation to shift design into position for each tile, and then extracting a width by height
portion of that design.

Applying a coordinate transformation to a rectangular tile does not change the portion of the
argument design that appears in each tile. However, it can change the period, phase, and
orientation of the repeated pattern of tiles. This is so that adjacent figures drawn using the
same tile have their inks "line up".

14.4 Regions as Designs

Any member of the class region is a solid, colorless design. The design is opaque at points in
the region and transparent elsewhere. Figure 14.1 shows how the design and region classes relate
to each other.


Page 124 Table of Contents Index Page 126
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E