File Exchange

## 2D Apollonian gasket with n identical circles

version 1.1 (4.71 KB) by

Plot a 2D apollonian gasket with n identical circles

3 Downloads

Updated

This function creates and displays 2D Apollonian gaskets.

In mathematics, an Apollonian gasket or Apollonian net is a fractal generated from three circles, any two of which are tangent to one another

The method used to create the Apollonian gasket is based on circle inversion, which is a geometrical transformation acting with a reference circle that modifies points.
In the plane, the inverse of a point P in respect to a circle of center O and radius R is a point P' such that P and P' are on the same ray going from O, and OP times OP' equals the radius squared
OP * OP' =R²

All circles are created using the inversion properties of circles.

Input: This function takes 6 arguments (each argument is optional)
- a positive integer, which corresponds to the number of circles on the first level of the apollonian packing. (3 at least)
- a positive integer, which corresponds to the number of levels of the apollonian. Higher the number of level is, more numerous the circles will be. 10 levels is a quite high value.
- an interger (0 or 1), which allows to display(1) or not(0) the inversion circles
- an integer (0 or 1), which indicates whether or not a metapost file is created within the results.
- an integer (0 or 1), which indicates whether or not a SVG file is created within the results.
- a string which indicates the filename in which results will be printed.
Output: a struture that contains all informations on created circles on each level:
- S(1) contains all data on level 1, coordinates centers and
radius of each circle

Carl Witthoft

### Carl Witthoft (view profile)

Nice code, but it fails the Apollonian rule when starting with four or more circles. As can be seen in the posted sample image, the second and higher-level circles are not tangent to three circles on the previous level. Something is wrong in the way the inverse-circles are calculated; I haven't tracked down just what.

James Kleiran

Nice piece of work.

### Updates

 1 Feb 2009 1.1 An SVG script has been added. The file has been cleaned up. 21 Aug 2007 The plot function has been updated, resulting in fast plot, and lower size picture.
MATLAB 7 (R14)
##### Acknowledgements

Inspired by: 2D Apollonian gasket with four identical circles

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

Play today