# T-square fractal

## World's simplest fractal tool

This utility lets you draw custom and colorful t-square fractals. We have implemented three fractal types – the Regular T-square, Vertex T-square, and Diamond T-square. The difference between them is the number, location, and shape of new squares that get placed in further recursion levels (which can be set in the options). You can also customize the dimensions of the fractal, namely set its height, width, and padding. There are three colors you can change when painting a t-square – the background color, line color around the squares, and the square fill color. Fun fact – the t-square fractal has a boundary of infinite length bounding a finite area. Fractabulous!

announcement
heads up!

We just launched a new site – Online String Tools – a collection of string processing utilities. Check it out!

A link to this tool, including input, options and all chained tools.

Can't convert.

T-square fractal tool
What is a t-square fractal?

This online browser-based tool illustrates t-square fractals. The t-square fractal is a closed finite two-dimensional fractal with an infinite length boundary. The fractal's name comes from the technical drawing instrument used for drawing horizontal lines on a drafting table. A t-square consists of a set of different size squares. Depending on their placement, size, and orientation, there are multiple types of t-squares. We currently support three types of fractal. The first type that we support is the classic textbook t-square version (we call it the Regular T-square). This classic t-square is iterated from a square by adding more squares centered at each vertex of all previous iteration's squares. The second type is the vertex t-square, which has the new squares placed around the vertices of all previous squares so that they touch at a single point. The third type is the diamond t-square that is a variation of the vertex t-square type but here new squares are rotated so they look like diamonds and they appear at two opposite vertices of the previous diamond. For all these types, you can customize the ratio (scale factor) of square side lengths between the current and next recursion. The scale factor must be greater than or equal to the golden ratio value (1.6180339…). At the nth iteration step, greater than 2nd, there are 4*3⁽ⁿ⁻²⁾ new squares added to the fractal (for diamond t-square it's 2⁽ⁿ⁻¹⁾) and in total, there are 2×3⁽ⁿ⁻¹⁾ - 1 squares (for diamond t-square it's 2ⁿ - 1). Mind blowing and ingenious at the same time, or as we love to say – fractabulous!

T-square fractal examples
Click to use

Classic Tsquare Fractal

In this example, we draw the original tsquare fractal after 6 iterations. At this stage, this fractal consists of 6 sets of overlapping squares of different sizes. The first set is a single unit-length square, the second set is four half-unit-length squares, the third is twelve quarter-unit-length squares, etc. We paint this fractal in three colors – white for the background, black for square edges, and Persian-blue for square fill.

**Required options**

Squares overlap the vertices
of the previous square.

T-squares recursive depth.

Width.

Height.

Reduce the size of new squares
by this scale factor.

Background color for the fractal.

Fill color for the squares.

Border color for the squares.

Border width.

Padding.

Vertex Tsquare Fractal

This example generates a 7th order vertex tsquare fractal. It consist of 1 + 4 + 4*3 + 4*9 + 4*27 + 4*81 + 4*243 = 1457 squares, in order from the largest to the smallest size. This matches the formula 2×3⁽ⁿ⁻¹⁾ - 1. It uses an 800 by 800 pixels canvas with 20-pixel padding and draws it with two bright colors.

**Required options**

Squares touch but don't
overlap the vertices of the
previous square.

T-squares recursive depth.

Width.

Height.

Reduce the size of new squares
by this scale factor.

Background color for the fractal.

Fill color for the squares.

Border color for the squares.

Border width.

Padding.

Golden Mean Tsquare

In this example, we illustrate a vertex tsquare fractal with the scale factor equal to the golden ratio φ. In this case, the squares grow so densely together that they fill the entire fractal space with the size of 1000x1000px. We draw the squares without the border and fill them with an orange peel color.

**Required options**

Squares touch but don't
overlap the vertices of the
previous square.

T-squares recursive depth.

Width.

Height.

Reduce the size of new squares
by this scale factor.

Background color for the fractal.

Fill color for the squares.

Border color for the squares.

Border width.

Padding.

Diamond Tsquare Fractal

In this example, we draw a diamond tsquare fractal on a rectangular canvas with a size of 1000 by 600 pixels. We perform 9 recursions that create 2⁹ - 1 = 512 - 1 = 511 diamonds. The ratio of diamond edge lengths between two recursion levels is equals to the golden mean value phi. We also set the horizontal direction for the diamond expansion, 3-pixel line width, and 12-pixel padding around all diamonds.

**Required options**

Squares have a diamond shape,
they touch two vertices of the
previous square but don't
overlap them.

T-squares recursive depth.

Width.

Height.

Reduce the size of new squares
by this scale factor.

Background color for the fractal.

Fill color for the squares.

Border color for the squares.

Border width.

Padding.

Regular Scaled Tsquare Fractal

This example sets the scale factor to 2.5 and generates a regular tsquare fractal type. Unlike the classic fractal (where the scale factor is 2), the square sizes decrease significantly faster with each step, quickly diverging from each other. We generate 5 levels of squares, using a lavender color for canvas, ripe-plum color for the border and laser-lemon color for squares fill. The area of a square at 5th level is 1525x smaller than the center square, the perimeter is 156x smaller, and one side is 39x shorter.

**Required options**

Squares overlap the vertices
of the previous square.

T-squares recursive depth.

Width.

Height.

Reduce the size of new squares
by this scale factor.

Background color for the fractal.

Fill color for the squares.

Border color for the squares.

Border width.

Padding.

Pro tips
Master online fractal tools

You can pass options to this tool using their codes as query arguments and it will automatically compute output. To get the code of an option, just hover over its icon. Here's how to type it in your browser's address bar. Click to try!

https://onlinefractaltools.com/draw-t-square-fractal?&width=600&height=600&iterations=6&background-color=white&fill-color=%231b3ad4&line-segment-color=black&line-width=1&padding=10®ular-t-square=true&scale-factor=2

All fractal tools

Quickly draw a custom McWorter dendrite fractal.

Quickly draw a custom canopy tree fractal.

Quickly draw a custom Gosper fractal.

Quickly draw a custom Z-order fractal.

Quickly draw a custom Hilbert fractal.

Quickly draw a custom binary v-fractal.

Quickly draw a custom Peano fractal.

Quickly draw a custom Heighway dragon fractal.

Quickly draw a custom twin dragon Heighway fractal.

Quickly draw a custom Heighway nonadragon fractal.

Quickly draw a custom Koch fractal.

Quickly draw a custom triflake fractal.

Quickly draw a custom Sierpinski triangle fractal.

Quickly draw a custom Sierpinski pentagon fractal.

Quickly draw a custom Sierpinski hexagon fractal.

Quickly draw a custom Sierpinski polygon fractal.

Quickly draw a custom Moore fractal.

Quickly draw a custom Cantor comb fractal.

Quickly draw a custom Cantor dust fractal.

Quickly draw a custom Levy fractal curve.

Quickly draw a custom ice fractal.

Quickly draw a custom Pythagoras tree fractal.

Quickly draw a custom t-square fractal.

Quickly draw a custom Hausdorff tree fractal.

Coming soon
These fractal tools are on the way

Generate a Hilbert Sequence

Walk the Hilbert fractal and enumerate its coordinates.

Generate a Peano Sequence

Walk the Peano fractal and enumerate its coordinates.

Generate a Moore Sequence

Walk the Moore fractal and enumerate its coordinates.

Generate a Cantor String

Encode the Cantor set as a string.

Mandelbrot Tree

Generate a Mandelbrot tree fractal.

Barnsey's Tree

Generate a Barnsley's tree fractal.

Barnsey's Fern

Generate a Barnsley's fern fractal.

Binary Fractal Tree

Generate a binary tree fractal.

Ternary Fractal Tree

Generate a ternary tree fractal.

Dragon Fractal Tree

Generate a dragon tree fractal.

De Rham Fractal

Generate a de Rham curve.

Takagi Fractal

Generate a Takagi-Landsberg fractal curve.

Peano Pentagon

Generate a Peano pentagon fractal curve.

Tridendrite Fractal

Generate a tridendrite fractal curve.

McWorter's Pentigree

Generate a Pentigree fractal curve.

McWorter's Lucky Seven

Generate a lucky seven fractal curve.

Eisenstein Fractions

Generate an Eisenstein fractions fractal curve.

Bagula Double V

Generate a Bagula double five fractal curve.

Julia Set

Generate a Julia fractal set.

Mandelbrot Set

Generate a Mandelbrot fractal set.

Toothpick Fractal

Generate a toothpick sequence fractal.

Ulam-Warburton Fractal

Generate an Ulam-Warburton fractal curve.

Subscribe!
Never miss an update

Cool!

Notifications
We'll let you know when we add this tool

Cool!