Triangular neighbourhood

The triangular neighbourhood is the set of all cells that are adjacent to the region of interest in a grid tiled with triangles (the region of interest itself may or may not be considered part of the triangular neighbourhood, depending on context).

The triangular neigbourhood can either refer to:

  • The 12-cell triangular neighbourhood (sometimes referred to as the Triangular Moore neighbourhood)

  • The 9-cell triangular vertices neighbourhood

  • The 3-cell triangular edges neighbourhood (sometimes referred to as the Triangular von Neumann neighbourhood).

There also exists the Tri6inner and Tri6outer neighbourhoods.

The triangular tiling shares its symmetries with that of the hexagonal tiling.

Software support

LifeViewer natively supports the three aforementioned triangular neighbourhoods using 2 states. For triangles pointing down the following neighbourhood is used on a square tiling:

For triangles pointing up the above neighbourhood is flipped vertically.

B0 emulation, Alternating rules and Generations are also supported.

Triangular rules are notated with an L, LE or LV suffix for Triangular, Triangular Edges and Triangular Vertices neighbourhoods respectively (e.g. B456/S34L). X is used for 10, Y for 11 and Z for 12. This notation avoids conflicts with Isotropic non-totalistic Moore neighbourhood rules.


TriLife.zip is available on Golly's online pattern archive, and simulates 2-state triangular outer-totalistic moore rules using 4 states, dividing each square cell into two triangles. A is used for 10, B for 11 and C for 12.


Tim Hutton's Fredkin replicator rule generation script also divides cells into two triangles, and uses T for triangular von Neumann and TM for triangular Moore.

Symmetries

Main article: Symmetry

The triangular neighbourhood relies on a different grid than the Moore and von Neumann neighborhoods and thus features a different set of inherent symmetries when dealing with isotropic rules:

  • Asymmetric (C1, 8x32, 4x64, 2x128, 1x256)
  • C2_1
  • C2_4
  • C3_1
  • C3_3
  • C6
  • D2_xo
  • D2_x
  • D4_x1
  • D4_x4
  • D6_1
  • D6_1o
  • D6_3
  • D12
gollark: NEVER!
gollark: And yet it's far more memory-safe.
gollark: Rust also has no garbage collection.
gollark: See the ++ at the end? It means that C++ itself isn't great but stuff coming after it is useful!Seriously, postincrement is evil.
gollark: Given that Rust is basically saner C++.

See also

This article is issued from Conwaylife. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.