Tuesday, August 20, 2013

Making repeat tiles using the offset method

Tonight I'm going to share with you how I created the basic repeat tile for my letters pattern. If you want to understand why this works, please see my post Tiling on a Torus or watch the related video.

First I created a pattern using an old typewriter.


I photographed the image, opened it in illustrator, and used the Live Trace tools to vectorize it.  Then I created an artboard for my base tile. In this case I used a 600 pt by 600 pt square. I pasted letters over top and deleted all letters that did not touch the artboard. Notice that I left letters hanging off the edge of the tile. Call this layer "Original Artwork," lock it and make it invisible. I always like to make a copy of my artwork layer to be safe.


Optional Step: I created a new layer called "Guidelines" (I think I called it gridlines in the picture below, forgive me). To align the guidelines perfectly to the center, I create a rectangle half the height and width of the artboard. In this case it would be 300pt by 300 pt. I use the alignment tool to put the rectangle in any corner. Then, make sure you have rulers visible and "snap to point" enabled (Both are under the View menu in CS6. Now drag your guidelines so that they touch the side of the smaller rectangle. Delete the rectangle and lock the layer. Now you have guidelines showing the centerlines of your tile.


Now return to your original artwork. Select everything, group it, and copy it. Lock your original artwork and make it invisible.


Move to a new layer. Let's name it "Pattern." Click Command+F (or Ctrl+F on Windows) to paste in front. While everything is selected, use the transform window to offset your artwork. We will offset the tile by half the width and half the height of the tile. So for the first offset, in the transform box, subtract half the width from the value in X and half the height from the value in Y. You can actually make Illustrator do the math for you. Say my rectangle is 600 x 600, so I can just type "- 300" in the X textbox and wait for the magic to happen.


Here's the result of the transform after moving -300 in both the X and Y direction. Notice that the letters that bled off the edge of the artboard cross the gridlines. This is fine.


Now fill the remaining quadrants using more transformations. Paste in front and adjust the X and Y values to move the image. Hint : My transformations were (X - 300, Y - 300), (X - 300, Y + 300), (X + 300, Y - 300), (X + 300, Y + 300)



Now it's time for what I call "mending the seams" (see Tiling on a Torus). Notice that along our guidelines, the letters that had overlapped the edges are now lying on top of one another. This makes the pattern too dense in many spots. I've highlighted some with red arrows. I deleted and adjusted the position of the letters to make the pattern look more even. 


Once you have your artboard looking more balanced, make a layer called "Invisible Background" and make sure it is the bottom layer. Create a rectangle the size of your artboard, and make sure this rectangle has no fill and no stroke. Align the rectangle so it's centered vertically and horizontally on the artboard. Then, make sure your layers Pattern and Invisible Background are visible and unlocked, and all others are locked. Make sure the swatches window is open. Use the black arrow to draw a selection box around the artboard. Then, drag the selection into the swatches panel. The invisible background tile tells Illustrator where to cut the pattern tile.

Make a new rectangle off to the side of your workspace, or on a new artboard. Ensure the rectangle is much larger than your repeat tile. Select the rectangle, and fill with your pattern swatch.

Look at the pattern. Blur your eyes and see if it looks uniform. Are there areas that are too dense or too sparse? You may need to rework your repeat tile.


It's an iterative process, but patience will bring you better patterns. Here's an intermediate revision.


Here's the final version (many iterations later!)


I hope this is a helpful resource and would love feedback on how to make it better. Questions are welcome :)