Monochrome Map Weaving with Truchet-Like Tiles

Year: 2018 Authors: Abdalla G. M. Ahmed; Oliver Deussen

Core claim

Context-aware 4×4 weaving blocks can render arbitrary planar monochrome maps as sturdy woven fabrics on Jacquard looms.

Topics

algorithmic weaving, monochrome maps, Truchet-like tiles, line-based rendering

Domains

matrix representation, binary patterns, rasterization, textile design, op art, map rendering, generative pattern design

Methods

context analysis, tile-based composition, bitmap rasterization, Jacquard weaving

Media

Jacquard loom, woven fabric, monochrome yarns, 4×4 weaving blocks

Paper text

The text below is the locally extracted OCR/Markdown version of the paper. Raw PDF files remain local and are not published here.

Bridges 2018 Conference Proceedings

Monochrome Map Weaving with Truchet-Like Tiles

Abdalla G. M. Ahmed and Oliver Deussen

Department of Computer and Information Science, University of Konstanz, Germany

abdalla_gafar@hotmail.com

oliver.deussen@uni-konstanz.de

Abstract

We discuss modular techniques for designing outlined monochrome weaving patterns for Jacquard looms.

img-0.jpeg Figure 1: The text “BRIDGES” woven into a sturdy fabric using the weave-weaving style.

Introduction

Weaving design is the creation of aesthetic patterns that are integrated into a woven fabric in its weaving structure and yarn colors and textures, in contrast to printed textiles or embroidery, where the pattern is superimposed onto a plain fabric. Weaving design lends itself easily to mathematical analysis because the classic woven fabrics can naturally be modeled as two-dimensional matrices.

In a sequence [1, 2, 4, 5] of Bridges papers over the past few years we discussed many ideas for systematic (algorithmic) weaving design, all using only two yarn colors. In 2013 we developed parametric aesthetic patterns that are readily weavable in inexpensive (4-shaft) looms [1]. In 2014 we discussed the problem of weaving checkerboard patterns, and enumerated the patterns that can produce decent checkerboard designs for 4-shaft looms [2]. In 2016 we developed another family of parametric aesthetic patterns that are optimized for weaving in 2-shaft looms [4].

Last year we started exploring weaving design for more-sophisticated expensive looms, known as Jacquard looms, which offer greater flexibility by controlling individual yarns [5]. Still bound to monochrome designs, we presented a systematic approach to weaving monochrome images (bitmaps), by allocating of the available freedom in the weaving structure to ensure a sturdy interwoven fabric, leaving the remaining to render the desired image. This year we explore another problem for Jacquard weaving design: rendering outlined shapes onto a woven fabric. We demonstrate that a certain range of line-based art, based on Truchet-like tiles [3], is well-suited for rendering into a woven fabric. We start, as usual, with a brief discussion about the weaving process and its emerging constraints. Readers who are familiar with our previous Bridges papers may skip the following section.

The Weaving Process

A simple woven fabric is a uniform mesh of yarns that run along the fabric, called the “warp,” and yarns that run across, called the “weft.” At each intersection, either the warp or the weft yarn runs above, and we see the color of that yarn, while the color of the yarn running beneath is seen on the other side. The whole piece of fabric can be abstracted as a two-dimensional matrix with binary entries: each row corresponds to a weft yarn, each column corresponds to a warp yarn, and each entry indicates whether the warp yarn is (0) above or (1) beneath. For example, the weaving matrices for two common fabrics are:

[ \mathbf{S}{\text{plain}}=\left(\begin{array}[]{cccccc}0&1&0&1&0&\cdots\ 1&0&1&0&1&\cdots\ 0&1&0&1&0&\cdots\ 1&0&1&0&1&\cdots\ 0&1&0&1&0&\cdots\ \vdots&\vdots&\vdots&\vdots&\vdots&\ddots\end{array}\right),\quad\mathbf{S}{\text{twill}}=\left(\begin{array}[]{cccccc}1&1&0&0&1&\cdots\ 1&0&0&1&1&\cdots\ 0&0&1&1&0&\cdots\ 0&1&1&0&0&\cdots\ 1&1&0&0&1&\cdots\ \vdots&\vdots&\vdots&\vdots&\vdots&\ddots\end{array}\right). ]

The weaving matrix ‘’ reflects the structure of the woven fabric, but not necessarily what is actually seen by the eye. Colors and other properties of individual yarns are superimposed on the weaving structure to determine the final look of the fabric, which could also be represented as a matrix ‘’. Incorporating actual color information is a simple look-up process. A ‘’ in the weaving matrix is replaced by the color of the corresponding warp yarn, and a ‘’ is replaced by the color of the corresponding weft. Algebraically:

(1)

where is the complement (negative) of the weaving matrix.

Woven fabrics are produced by a device called a loom. It weaves the fabric row by row, and for each row it raises the warp yarns designated to stay above, according to the weaving matrix, and passes the weft yarn beneath them. Weaving an arbitrary matrix requires full control over each individual warp yarn. This capability is provided by so-called “Jacquard” looms. The alternative is to raise warp yarns in groups rather than individually. A so-called “dobby” loom uses so-called “shafts” to control groups of warp yarns. There are also simple mechanical looms that weave fixed patterns. In our earlier Bridges papers [1, 2, 4] we confined ourselves to dobby looms. Last year we considered Jacquard looms [5], and this year we continue to address such looms, but approach a totally different problem that targets line-based arts rather than raster images.

The yarn-by-yarn control in Jacquard looms does not mean that we are free to weave an arbitrary pattern; there are still some important constraints that limit this ability. First off, the color of the yarn remains fixed along the whole row or column, which drastically limits the choices of weaving design in comparison to tiling design: from a two-dimensional matrix with arbitrary entries, to a pair of one-dimensional vectors convolved with a binary matrix, as described in Eq (1). Secondly, we have the “floats” problem, which relates to the fabric itself rather than the weaving mechanism. In weaving terminology, a float is a loose strand of yarn. It results in a weak fabric, and the strand of yarn becomes prone to tearing and snagging. Floats are reflected as long runs of 0s or 1s in the weaving matrix; whether in rows (weft), columns (warp), or both.

3.3 Weavable Line-Based Arts

Would it be possible to weave a line-based drawing; for example, a large black circle on a white background? Abstracted as a matrix, a woven fabric is inherently a raster-based (discrete) medium, and whatever we would like to render into a woven fabric has to first be rasterized as a bitmap. If the input drawing has thin outlines,

Monochrome Map Weaving with Truchet-Like Tiles

img-1.jpeg (a)

img-2.jpeg (b)

img-3.jpeg (c) Figure 2: Example uniform-hatching rendering styles of maps, showing (a) input map, (b) shadow rendering, (c) weave rendering, (d) black-ink rendering, and (e) white-ink rendering. Reproduced from [3].

img-4.jpeg (d)

img-5.jpeg (e)

the final matrix , and inevitably the weaving matrix , will contain large regions of 0s or 1s, hence long floats. The reason is that the yarns providing the outline color have to be concealed in the background, only sparingly brought forward to render the thin outline. Thus, the classic black-on-white outlined drawings are not suitable for weaving.

Let us think from the other side: what is suitable for weaving? To avoid long floats we should ideally maintain a narrow range of shade everywhere, giving each yarn the chance to occasionally switch above and beneath the crossing yarns. But is it possible to make a drawing with distinguishable outlines without changing the tone? Fortunately, there is a range of outlined drawing styles that does this. Line-based optical-illusion art, henceforth referred to as op art [7, 8], is the canonical example, but Ahmed [3] enumerated a few more styles based on the same principle of uniform hatching. These rendering styles are dedicated to planar maps: outlined drawings that partition the plane into distinct regions. The principle is to hatch the regions with parallel lines, using the direction of the lines to distinguish between adjacent regions. The various styles discussed in [3] vary in the way end of lines align at the boundaries between adjacent regions. Figure 2 shows a few examples.

The key insight of using these hatch-based rendering styles for weaving design is to provide a yarn with a matching color along each line of the hatching. Since a simple woven fabric only provides yarns in two perpendicular directions, we are limited to two-colorable maps; that is, only vertical and horizontal hatching lines. This still offers a good range of weavable arts based on monochrome outlined drawings and text.

Rendering with Truchet-Like Tiles

We briefly outline the modular (i.e. based on building blocks) approach described in [3] for a uniform-hatching method of rendering maps. Truchet-like tiles are decorated tiles that received a lot of attention in the context of recreational mathematics, e.g. [10, 6, 9]. The basic idea for using such tiles for map rendering is straightforward: the map is rasterized into a bitmap, and each pixel is replaced by a single tile oriented in one way or another depending on the color of the pixel. Decoration lines in similarly-oriented tiles should run seamlessly, generating a uniform hatching in similarly-colored regions.

Shadow tile (inset, top) is arguably the simplest Truchet-like tile. The tile is split parallel to its side into two halves, black and white. Direct tile-for-pixel substitution is all that is required when using shadow tiles. A tile is rendered using a minimum of pixels to account for the strip, hence the minimum resolution of the resulting rendering is that of the underlying map. A slightly more complex tile (inset, bottom) is the weave-rendering tile introduced in [3], where the strip of the shadow tile is shifted to run in the middle of the tile. Again, map rendering with this tile takes no more than direct substitution, but the minimum resolution of the rendered map grows to that of the underlying map to account for the half-strips on the sides of the decorated tile.

Ahmed

img-6.jpeg (a)

img-7.jpeg (b)

img-8.jpeg Figure 3: Computing the contexts for a given map. (a) We draw a grid that is offset by a half pixel (in map resolution) along each axis. (b) The list of all combinations of pixels around each corner, encompassing all the possible contexts. In practice, each context may be encoded as a single hexadecimal digit.

img-9.jpeg

img-10.jpeg

For some rendering styles discussed in [3], it takes more than direct substitution to construct the hatching lines: hatch lines ending at the boundaries of adjacent regions have to be handled in special ways. For example, to create an effective optical illusion in op art, lines from one region are connected to lines in the adjacent region to flow smoothly, free of intersections, stub lines, and T-joints [7]. In black-ink rendering [3], lines of a weave rendering are extended to hit the crossing lines of adjacent regions, and in white-ink style lines are retreated by an equal amount. None of these styles are realizable by just substituting Truchet-like tiles decorated with vertical and horizontal lines , but black-ink and white-ink styles are realizable modularly using so-called context-aware tiles. These are tiles designed to capture all the possible combinations at the corners of four tiles, as enumerated in Figure 3. Figure 4 shows the context-aware tiles that were used for the renderings in Figure 2.

Design Strategy

As with Tuti Weaving [4] and Tuti Interweaving [5], alternating the yarn colors along both the warp and weft offers us a free choice in of the entries in the weaving matrix. At a black-black intersection or a white-white intersection, choosing which yarn is on top does not change the visible pattern. In Tuti Weaving, we used this freedom to optimize the weaving structure for less expensive looms, and in Tuti Interweaving, we used it to ensure a sturdy float-free fabric.

This time, we use our freedom, differently, to design modular building blocks for different rendering styles. Specifically, we design float-free weaving-matrix blocks that convey the designated visual pattern of each context-aware tile. By inspecting the tiles of Figure 4, we observe that if each tile is seen as a matrix, then there are fixed bits in each set of tiles. For example, the visible pattern in shadow tiles follows

Monochrome Map Weaving with Truchet-Like Tiles

img-11.jpeg (a)

img-12.jpeg (b)

img-13.jpeg (c)

img-14.jpeg (d)

img-15.jpeg Figure 4: Context-aware tiles used to construct the renderings of Figure 2: (a) shadow tiles, (b) weave tiles, (c) black-ink tiles, and (d) white-ink tiles; in the same order as the contexts in Figure 3(b). (a)

img-16.jpeg (b)

img-17.jpeg (c)

img-18.jpeg (d) Figure 5: Weaving blocks corresponding to the context-aware tiles of Figure 4: (a) shadow blocks, (b) weave blocks, (c) black-ink blocks, and (d) white-ink blocks.

the template:

where 0 means black and 1 means white. This suggests having black in the top two weft yarns and left two warp yarns, and white in the remaining yarns. Similar to Tuti Interweaving [5], we may now plain-weave the black-black and white-white yarns to maintain a sturdy float-free fabric. The template weaving matrix for shadow tiles becomes:

which maintains a 0 and a 1 in each row and column, ensuring a float-free block. Similarly, the visible pattern and the corresponding weaving matrix for weave, black ink, and white ink, all follow the templates:

The remaining intersections are woven in accordance with the visible pattern of the context-aware tile. Figure 5 shows the float-free weaving blocks for the demonstrated styles.

Algorithm 1 Generating a weaving structure for a given map.

  1. Rasterize the map into a monochrome bitmap.
  2. For each corner between four pixels, identify a context from Figure 3, using the colors of the four surrounding pixels.
  3. For each context, identify the corresponding context-aware tile of the chosen style from Figure 4.
  4. For each context-aware tile, insert the pre-designed weaving block from Figure 5 into the weaving structure.

Using these modular building blocks is straightforward, as described in Algorithm 1. Note that the spatial resolution of the final weaving matrix will be that of the rasterized input map. Figure 6 illustrates the completed woven renderings with different styles, and Figure 1 shows a variant of the weave-weaving style that swaps the black and white yarns.

Conclusion

Building upon the expertise learned from preceding Bridges papers [5, 4], we extended our open portfolio of algorithmic weaving designs to enable the weaving of arbitrary planar monochrome maps using a Jacquard loom.

References

Monochrome Map Weaving with Truchet-Like Tiles

img-19.jpeg

img-20.jpeg Figure 6: Illustrations of the styles of Figure 2(b, c) rendered as woven fabrics.

Ahmed

img-21.jpeg

img-22.jpeg Figure 7: Illustrations of the styles of Figure 2(d, e) rendered as woven fabrics.

0 items under this folder.