Triangle strip knitting

37
Triangle Strip Knitting James Mallos ISAMA 2010 Chicago, Illinois

description

A theoretical consideration of a method that can be used to knit or crochet an arbitrary surface. The method is based on the triangle-strip method in computer graphics. A talk presented at ISAMA 2010 in Chicago, IL.

Transcript of Triangle strip knitting

Page 1: Triangle strip knitting

Triangle Strip Knitting

James MallosISAMA 2010

Chicago, Illinois

Page 2: Triangle strip knitting

Can we knit (or crochet) any surface?

Page 3: Triangle strip knitting

• One yarn.

• One piece (work in progress must remain a single, well-connected piece.)

• One technique (sewing up seams is not allowed.)

Rules

Page 4: Triangle strip knitting

We already know weaving can do this.

Page 5: Triangle strip knitting

Akleman, E., Chen, J., Xing, Q., and, Gross, J. ’2009.

Every polygonal surface mesh describes a plain-weaving.

The Plain-Weaving Theorem

Page 6: Triangle strip knitting

A consequence of PWT: every tessellation of the plane describes a plain-woven fabric.

Page 7: Triangle strip knitting

The PWT can be demonstrated with a special set of Truchet tiles.

Page 8: Triangle strip knitting

A virtual Truchet tiling can be done using the computer graphics technique of texture mapping.

Page 9: Triangle strip knitting

Does a small set of polygons suffice (just triangles, say)?

Page 10: Triangle strip knitting

No...not if we want the boundaries of the basket to have selvaged edges. Boundaries are, in effect, large n-gons that need to be tiled like all the other polygons.

Page 11: Triangle strip knitting

A 3D model decorated with virtual Truchet tiles.

Model courtesy INRIA via the Aim@Shape Shape Repository.

Page 12: Triangle strip knitting

Offering, James Mallos, 2008

A woven sculpture derived from a surface mesh.

Model courtesy INRIA via the Aim@Shape Shape Repository.

Page 13: Triangle strip knitting

Olivier’s Fingertip, James Mallos, 2008

A woven sculpture derived from a surface mesh.

Model courtesy INRIA via the Aim@Shape Shape Repository.

Page 14: Triangle strip knitting

Big Little, James Mallos, 2010

A woven sculpture derived from a surface mesh.

Model courtesy INRIA via the Aim@Shape Shape Repository.

Page 15: Triangle strip knitting

Can knitting and crochet also make any surface?

What’s the difference, K & C vs. W?

Page 16: Triangle strip knitting

• Weaving is a multicomponent link, or sometimes a single-component link (a knot).

• Knitting and crochet are manipulations of the unknot.

Page 17: Triangle strip knitting

Since they are manipulations of the unknot, K & C can be done with the ends of the yarn tied together.

In practice, this adds no difficulty.

Page 18: Triangle strip knitting

Because they are manipulations of the unknot, C & K unravel. W does not.

Page 19: Triangle strip knitting

• W has rotational symmetry around its openings (a fact which makes Truchet tiles easy use)

• K and C do not have rotational symmetry: every K-tile or C-tile must be properly oriented inside its n-gon.

• W does not reveal its order of working, but K and C do (K-tiles and C-tiles must align in a linear pattern that covers the surface.)

Page 20: Triangle strip knitting

how would you mow the grass on this planet?

Finding a linear order of working that covers the surface:

Page 21: Triangle strip knitting

Three Ways to Mow Grass

Boustrophedonic SpiralSerpentine Loop

(Traveling Salesman)

Page 22: Triangle strip knitting

Which way works on a general surface?

Page 23: Triangle strip knitting

Any compact surface can be mapped onto the interior of a plane polygon—the topological complexities are confined to the way the polygon edges identify in pairs.

A method of cutting grass in the interior of a plane polygon (without crossing the perimeter) will map onto any surface.

They all do!

Page 24: Triangle strip knitting

Of the three mowing schemes, only the Serpentine Loop is versatile.

Boustrophedonic SpiralSerpentine Loop

(Traveling Salesman)

Got an obstacle? Take cities in that region off the salesman’s list. Need more refinement somewhere? Add more cities there.

Page 25: Triangle strip knitting

A triangle strip corresponds to a Hamiltonian Cycle (TSP solution) on the dual graph of the triangulation.

Gopi and Eppstein 2004

Page 26: Triangle strip knitting

Example of a Hamiltonian cycle on the dodecahedron (dual to the icosahedron.)

Page 27: Triangle strip knitting

• Nearly all triangulations without boundaries have Hamiltonian duals.

• If more than 15% of the triangles are on boundaries (and therefore 2-valent), the dual is unlikely to be Hamiltonian.

• Searching for a Hamilton path or circuit in the dual cubic graph becomes intractable for large triangulations. (NP complete.)

Hamiltonian Facts of Life

Page 28: Triangle strip knitting

The Single Strip Algorithm (Gopi and Eppstein, 2004)

• Don’t try to find a Hamilton circuit, make one by gently editing the triangulation at a few points.

Good news: If we don’t find a Hamiltonian cycle, we can make one!

Page 29: Triangle strip knitting

• The Single Strip Algorithm can be made to respect constraints such as preferred directions.

Gopi and Eppstein 2004

Page 30: Triangle strip knitting

The Single-Strip Algoritm gives us a strip (or loop) of triangles, how do we knit and assemble a strip of triangles?

Page 31: Triangle strip knitting

• Arbitrarily choose a mid-edge in the Hamiltonian Cycle as a starting point.

• Arbitrarily choose a side of the surface at the starting point.

• Arbitrarily choose a direction of travel.

There are four kinds of vertex in the hamiltonian cycle that can be labelled in this way:

Page 32: Triangle strip knitting

• Label each vertex according to whether the non-Hamiltonian edge extends to the left or the right, and...

• whether the adjacent vertex on the non-Hamiltonian edge has already been labelled (close) or not (open.)

• Finish when the starting point is encountered

Page 33: Triangle strip knitting

undp

Four “emoticons” can naturally represent the four labels:open left

open rightclose left

close right

Page 34: Triangle strip knitting

• Tetrahedron: undp and nupd

• Octahedron: unnduppd and nuupnddp

• Icosahedron: nnununuuupppdpdndddp

Some Undip Codewords for Deltahedra

Page 35: Triangle strip knitting

Codewords suffice for genus 0 surfaces only. Higher genus surfaces need more information.

Note:

Page 36: Triangle strip knitting

TRIANGLE CONTEXT CHART

CAST OFF

d p

u n

CLOSE LEFT CLOSE RIGHT

OPEN LEFT OPEN RIGHT

CAST ON

Page 37: Triangle strip knitting

• We want correctly imbedded surfaces.

• Correct Gaussian curvature (intrinsic curvature) is necessary but not sufficient.

• Correct topology is necessary but not sufficient.

Caveat: