Skip to content

v0.1

Compare
Choose a tag to compare
@nhartland nhartland released this 12 Jun 21:40
· 147 commits to master since this release

First version of forma.

Basic features

  • A 'cell' class with normal (integer) vector operations.
  • A 'pattern' class which holds a set of cells in a spatial hash table.
  • A bunch of pattern primitives, for rasterizing circles, lines and squares.
  • A bunch of basic manipulating functions, for shifting, enlarging, reflecting patterns.

A basic but flexible Cellular Automata implementation

  • Custom CA neighbourhoods and update rules.
  • Synchronous and asynchronous updates.
  • CA can be performed in arbitrary domains.

Helpers for generating 'subpatterns'

  • Flood-filling to determine contiguous areas (according to custom definitions of contiguous).
  • Voronoi tessellation.
  • Binary space partitioning.
  • Finding the largest contiguous rectangle in a pattern.
  • Finding points on the inner/outer surface of patterns.