Pacific Graphics (2016)
E. Grinspun, B. Bickel, and Y. Dobashi (Editors)

Short Paper

Computational Design of Iris Folding Patterns
Yuki Igarashi1
1

Meiji University, Japan

Takeo Igarashi2
2

The University of Tokyo, Japan

Jun Mitani3
3

University of Tsukuba, Japan

Abstract
Iris folding is a motif consisting of layered strips of paper, forming a spiral pattern behind an aperture, which can beused to make cards and gift tags. This paper describes an interactive computational tool to assist in the design andconstruction of original iris folding patterns. The design of iris folding patterns is formulated as the calculation of acircumscribed polygonal sequence around a seed polygon. We analyzed the problem and found that it is possible tocompute the positions of vertices analytically for regular polygon; however, it is not straightforward to do so for
irregular polygons, and we used a numerical method for irregular polygons, which can be applied to arbitrary convex
seed polygons. The user can experiment quickly with various patterns using the system prior to constructing the motif.
Categories and Subject Descriptors (according to ACM CCS): I.3.6 [Computer Graphics]: Methodology and Techniques, Interaction Techniques

1. Introduction
Iris folding is a motif consisting of layered paper strips
that form a spiral pattern behind an aperture, as shown inFigure 1. Iris folding is a simple and fun paper-folding technique that can be used to make greeting cards and gift tags.
The center of the design forms an iris-like pinhole at the center, similar to that of an eye or a camera lens. In a typical
workflow, a person first prepares a guide sheet (usuallytaken from a book), base sheet, and paper strips. She thencuts the base sheet making a hole as shown in the guide sheet.
She places the base sheet on the guide sheet and pastes thepaper strips on the base sheet following the instruction
shown in the guide sheet. After pasting all the paper strips,
she turns the base sheet over to obtain the final result.

computes an iris folding pattern, i.e., a series of strips aroundthe seed polygon. The user can experiment with arbitrary
polygons and color combinations prior to completing thepattern.
The design of iris folding patterns requires the computation of a series of strips of equal width around the polygon.
As shown in Figure 3, we formulate this design problem as
the calculation of an offset polygonal sequence around an
inner polygon, which satisfies the following constraint: thedistance from the vertices of the polygon to the corresponding internal edge of the polygon is constant (i.e., the widthof paper strips is constant). In this manner, the system computes iris folding patterns around an arbitrary convex seedpolygon.

There are several interesting geometric properties of irisfolding patterns, which makes the design of such patterns anintriguing mathematical problem. Although it can be easy todesign basic iris folding patterns, even for novices, many ofthe more complex geometrical patterns must satisfy certain
geometric constraints, as shown in Figure 3. It is typicallydifficult for novices to design such patterns. If the geometricconstraints are not satisfied, waste of paper increases because it cannot use the width of paper strips effectively. In
addition, it takes more time in manual construction as thenumber of required polygon increase.
This paper presents an interactive computational system
to assist in the design and construction of original iris folding patterns that satisfy geometric constraints. Figure 2
shows an overview of the process. The user first inputs anoutline and a seed polygon inside. Then it automatically© 2016 The Author(s)Eurographics Proceedings © 2016 The Eurographics Association.

Figure 1: (a) The end result viewed from the front side.
(b)a guide sheet. (c-f) The construction process viewed fromthe back side. (c) The user first cuts a paper and turns overthe paper on a guide sheet. (d–f) Then the user pastes colored paper strips around the central polygon.

Y. Igarashi et al. / Computational Design of Iris Folding Patterns

(a)

(b)

(c)

(d)

Figure 2: An overview of our system. (a) The user first inputs an outline S (blue line) and a seed polygon P (black line). (b)Then the system automatically computes a pattern for iris folding and (c) applies texture rendering. (d) The user finally creates the physical pattern.
line directly, or can load a black-and-white bitmap image
and have the system traces the contour line using the marching-squares algorithm [LC87].

Figure 3: The problem is to calculate a next polygon circumscribed to the inner polygon whereby the distance fromthe vertices of the polygon to the corresponding internal polygon edge is constant.

2. Related Work
Coahranm and Fiume [CF05] reported a sketch-based design for a specific quilting art form, i.e., Bargello patterns.
They described an algorithm that transforms sketched input
data into graceful Bargello curves.
Patchy [IM15] is an interactive system that can assist thedesign of original patchwork patterns. The user designs original patchwork strokes, and can quickly experiment withvarious patterns prior to sewing.
The pursuit curve of a polygon forms a geometric patternthat is similar to iris folding. It is defined as the trajectories
of vertices starting from the corners of the polygon, andmoving inwards pursuing the neighboring vertices [Pet01].
In the case of a triangle, three pursuit curves converge to apoint known as the Brocard point. Although pursuit curves
form similar patterns to those seen in iris folding, the definitions differ, and the analysis of pursuit curves cannot be applied directly to our problem.

The user draws a polygon P, as shown in Figure 2(a). Arbitrary polygons can be designed by clicking on the vertex
position of the polygon. The user can also draw a regularpolygon by choosing one from a menu bar. The system automatically places the polygon at the center, and the user candrag it to a desired position. It is also possible to scale thepolygon P. The default width of the paper strips is 10 mm;
however, this can be changed using the menu. The user canchange orientation of strips using the menu.

3.2 Interactive design
Once the outline S, the seed polygon P and the strip width
w are determined, the system automatically generates a pattern for iris folding. When the user drags the vertices of theinternal polygon P, the system updates the pattern in realtime. The user can set the color of the strips using a painttool. By default, the system shows a design with n-sided polygons with n colors, as shown in Figure 2(b).
To create a shaded image, the system may also switch tovisualization with shading, considering the layers of paperstrips, as shown in Figure 4. Regions of the same color aregrouped for previewing, and the system calculates a rendered image for each group. The user can preview the resulting image using a texture image of a paper strips. This cannot be manipulated interactively while previewing the texture image, however, and the system switches to normal coloring mode while the user performs a dragging operation.

3. User Interface
3.1 User Inputs
The user first inputs an outline polygon S and an internalconvex seed polygon P inside S. The user can change thewidth w of the paper strips. The system provides two methods to input the outline S: the user can either draw a stroke

Figure 4: (left) The fill tool, and (right) texture rendering.

© 2016 The Author(s)Eurographics Proceedings © 2016 The Eurographics Association.

Y. Igarashi et al. / Computational Design of Iris Folding Patterns

3.3 Construction guide
The system ultimately outputs a pattern for use in construction. The user pastes paper strips onto the back side of
the main piece of paper, as shown in Figure 5. Therefore, theresulting guide sheet is flipped horizontality. The system
also shows a step-by-step graphical presentation to aid construction.

The geometrical relations shown in Figure 6 can be expressed as follows:(1)
Equation (1) can be rewritten ask sin
sin

sin

sin
sin
sin

sin

2

When L=1, we obtain the angle of rotation
Figure 5: A step-by-step construction guide.
4. Theoretical analysis
This section describes a theoretical analysis of the geometric problem. The algorithm used in the current implementation is described in the next section. First we define
the problem, and then we describe an analysis of regularseed polygons, followed by the treatment of irregular seedpolygons.
4.1 Definitions
The seed polygon P (inputted by the user) is defined as P0.
The polygons formed using paper strips are defined as Pm(m=1, 2, …). We consider the problem as determining thePm+1 from Pm for a given strip width w. The system firstcomputes an offset polygon Pm’, i.e., the polygon that is obtained by offsetting each edge of Pm by the strip width w.
Then it searches for the Pm+1 that satisfies the following geometric constraints: 1) The vertices of the next polygon Pm+1
are located on the edge of the offset polygon Pm’; 2) Theedges of the next polygon Pm+1 pass through the vertices ofthe polygon Pm.
4.2 Analytical solutions for regular polygons
With a regular n-polygon Pm, it is possible to analyticallycalculate the angle of rotation and the scaling ratio that maintain the next polygon Pm+1 as a n-polygon. As shown in Figure 6, for an internal angle of the n-polygon  and strip widthw, the edge length l can be found. The system computes theangle of rotation  whereby the vertices of the polygon Pm+1
lie on the edges of the strip.

θ2

whereas follows:√2√∉andtan0 . (3)The length of a single side of polygon Pm+1 is given byLm+1=l+k.
4.3 Numerical analysis for arbitrary polygons
Now we describe numerical analysis for an arbitrary npolygon Pm. As shown in Figure 7, the vertices of an n-polygon Pm are defined as,,…,in clockwise order.
by varying the paWe put a point vstart on the edgerameter t in the range [0, 1]. The straight line l1 passes
through vstart and, and intersects the edgeat
. The straight line that passes through′ andpoint
is line li+1, which intersects the edgeat.
The straight line that passes through vstart andis line l0.
The point where lines l0 and ln-1 intersect is v(t). The intersection between the trajectory of v(t) and the edge
becomes.
We tried to obtain an explicit formula to compute Pm+1
from Pm, but found that it is overly complicated and difficult.
So, we analyzed the problem numerically using an interactive geometry software (Cinderella [Cin98]). By varying t in
the range 0 to 1, the trajectory of v(t) can be found, as shownin Figure 8. We observe that the trajectories are conic curves,and therefore we calculate the value t for which the point v(t)using a bisection search.
is located on an edge of

Figure 7: Analysis of iris folding with arbitrary polygons.
The aim is to find t such that v(t) is located on the edge.
Figure 6: The iris folding geometry for a regular n-polygon.
© 2016 The Author(s)Eurographics Proceedings © 2016 The Eurographics Association.

Y. Igarashi et al. / Computational Design of Iris Folding Patterns

7. Conclusion and Future Work
We have described an interactive design system for generating iris folding patterns. Users can quickly experimentwith various patterns using the system before beginning thepractical work.

Figure 8: By varying t from 0 to 1, the trajectory v(t) wasfound (red line).
5. Algorithm
We calculate the next polygon Pm+1 from polygon Pm using a bisection search. The system computes the signed dis. Whentance from v(t) to the corresponding edgethe user chooses clockwise pattern, we search for theparameter t between [0, 0.5]. When the user chooses
counterclockwise pattern, we search for the parameter t
between [0.5, 1]. After identifying the value of t, the systemusing the value. This is repeated until⊃
generates, where P(S) includes the polygon of the inputted outline S.
Because the trajectory is conic curve, a solution does notalways exist. The existence of a solution depends on the ratioof the strip width to the edge length of the polygon (see Figure 9). If a solution cannot be found, the system does not
draw a pattern, and the user searches for another solution by
moving the vertex of the internal polygon or changing thestrip width w. If a solution cannot be found, the systemshows the user to the fact that the problem was not solved.

Figure 10: Design examples formed using our system.
As part of future work, we plan to develop a method tohandle multiple internal polygons. We also plan to investigate patterns formed with other constraints, such as symmetry and similarity with the original polygon. We also planto investigate conditions for the presence of the polygon
which circumscribes polygon
and inscribes polygon. It is also an interesting problem to analyze arequirement about the shape of the internal polygon.
References

Figure 9: The existence of a solution depends on the ratioof the strip width to the length of the edges of the polygon.
Here the ratio w/l was varied from 0.29 to 0.33, 0.37, and0.41 (left to right.) For w/l = 0.37 and 0.41, a pattern could
not be formed.
6. Results
A prototype of the system was implemented using JavaTM
running on a laptop computer with a 1.2 GHz processor and2 GB RAM. We used this system to create designs for irisfolding pattern, as shown in Figure 10. Users can experimentwith various patterns using the system prior to beginning
construction. A design session typically takes approximately
10–20 min, and construction takes about 1 h.

[CF05]

COAHRANM M., FIUME E.: Sketch-based design forbargello quilts. In Eurographics Workshop on
Sketch-Based Interfaces and Modeling 2005,
165–174.
[LC87] LORENSEN W.E., CLINE H.E.: Marching Cubes: A
high-resolution 3D surface construction algorithm.
ACM Siggraph Computer Graphics, vol.21, no.4,1987, pp.163–169.
[IM15] IGARASHI Y., MITANI J.: Patchy: An interactive
patchwork design system. Proceedings of ACM
SIGGRAPH 2015 Posters, Article No. 10, 2015.
[Pet01] PETERSON I. https://www.sciencenews.org/article/pursuing-pursuit-curves. 2001.
[Cin98] Cinderella. The Interactive Geometry Software.
1998. http://cinderella.de/© 2016 The Author(s)Eurographics Proceedings © 2016 The Eurographics Association.