CA: Conway’s Game of Life 3D

The definition demonstrates how to create a 3D structure using the memory of a 2D Game of Life Cellular Automata.

This is the most famous cellular automata ever invented. People have been discovering patterns for this rule since around 1970. Large collections are available on the Internet.
The rule definition is very simple: a living cell remains alive only when surrounded by 2 or 3 living neighbors, otherwise it dies of loneliness or overcrowding. A dead cell comes to life when it has exactly 3 living neighbors.
A rule by John Conway.
More about Game of Life

3D Cellular Automata: Game Of Life

CA: Conway’s Game of Life 2D with Rabbit

The definition demonstrates how to create the famous Game of Life Cellular Automata using Rabbit.

This is the most famous cellular automata ever invented. People have been discovering patterns for this rule since around 1970. Large collections are available on the Internet.
The rule definition is very simple: a living cell remains alive only when surrounded by 2 or 3 living neighbors, otherwise it dies of loneliness or overcrowding. A dead cell comes to life when it has exactly 3 living neighbors.
A rule by John Conway.
More about Game of Life

2D CA: Game of Life GH

CA: Excitable Media with Rabbit

The definitions demonstrate how to create Excitable Media Cellular Automata using RABBIT.

An excitable medium is a nonlinear dynamical system which has the capacity to propagate a wave of some description, and which cannot support the passing of another wave until a certain amount of time has passed (known as the refractory time).

A forest is an example of an excitable medium: if a wildfire burns through the forest, no fire can return to a burnt spot until the vegetation has gone through its refractory period and regrown. In Chemistry, oscillating reactions are excitable media, for example the Belousov-Zhabotinsky reaction and the Briggs-Rauscher reaction. Pathological activities in the heart and brain can be modelled as excitable media. A group of spectators at a sporting event are an excitable medium, as can be observed in a Mexican wave.

http://en.wikipedia.org/wiki/Excitable_medium

Get Excitable Media GH

CA: 1D Elementary Cellular Automata with Rabbit

The definition demonstrates how to create 1D Elementary Cellular Automata using RABBIT.

The simplest class of one-dimensional cellular automata. Elementary cellular automata have two possible values for each cell (0 or 1), and rules that depend only on nearest neighbor values. As a result, the evolution of an elementary cellular automaton can completely be described by a table specifying the state a given cell will have in the next generation based on the value of the cell to its left, the value the cell itself, and the value of the cell to its right.
http://mathworld.wolfram.com/ElementaryCellularAutomaton.html

1D Elementary CA GH

L-Systems: Creating 3D Branching Structures

The definitions demonstrate how to create 3D Branching Structures using Rabbit. How to control parameters: angle, thickness, length.
More about Branching Structures: http://algorithmicbotany.org/papers/abop/abop-ch1.pdf

The meanings of the symbols:

F move forward at distance L(Step Length) and draw a line
f move forward at distance L(Step Length) without drawing a line
+ turn left A(Default Angle) degrees
turn right A(Default Angle) degrees
\ roll left A(Default Angle) degrees
/ roll right A(Default Angle) degrees
^ pitch up A(Default Angle) degrees
& pitch down A(Default Angle) degrees
| turn around 180 degrees
J insert point at this position
multiply current length by dL(Length Scale)
! multiply current thickness by dT(Thickness Scale)
[ start a branch(push turtle state)
] end a branch(pop turtle state)
A/B/C/D.. placeholders, used to nest other symbols

Get 3D Branching Structures #1
Get 3D Branching Structures #2

L-Systems: Space Filling Curves with Rabbit

This definition explains how to create the famous Dragon Curve using RABBIT.

The Heighway dragon (also known as the Harter–Heighway dragon or the Jurassic Park dragon) was first investigated by NASA physicists John Heighway, Bruce Banks, and William Harter. It was described by Martin Gardner in his Scientific American column Mathematical Games in 1967. Many of its properties were first published by Chandler Davis and Donald Knuth. It appeared on the section title pages of the Michael Crichton novel Jurassic Park.

Recursive construction of the curve
It can be written as a Lindenmayer system with
angle 90°
initial string FX
string rewriting rules
X = X+YF+
Y = −FX−Y.

Source: Wikipedia

Get Dragon Curve Gh

Hilber Curve Definition using RABBIT.

A Hilbert curve (also known as a Hilbert space-filling curve) is a continuous fractal space-filling curve first described by the German mathematician David Hilbert in 1891,[1] as a variant of the space-filling curves discovered by Giuseppe Peano in 1890

Get 2D Hilbert Curve Gh
Get 3D Hilbert Curve Gh

Rhino + Grasshopper: Polyline Attractor

The Model

We played with grasshopper lately. So this is a quick experiment:  a system of cylinders attracted by a polyline. The process:

  • Create a grid of points
  • Create polyline used as input
  • Use the “Curve CP” component to get the closest point on the curve for each point of the grid
  • Calculate the distance from each grid point to it’s corresponding point on the curve(the closest one)
  • Add controls: max radius, min radius, range
  • Create cylinders out of circles. Use the distance as a radius and extrusion depth

Download

Zip file containing the grasshopper definition, the rhino file and few renders:

Note: it is saved with version 0.6.0019

Download Definition

MORPHOCODE / LAB: Polyline Attractor