Summary
Represents a cell in a PentaCell.Grid consisting mostly of pentagons and a few thin rhombuses that fill
the gaps.
Remarks
Represents a cell in a two-dimensional grid that is either a pentagon or a thin rhombus (
PentaCell.IsRhombus).
The cells are represented by a
PentaCell.Level (innermost pentagon is Level 0, each subsequent layer grows
outwards in all directions), an
PentaCell.Element number and a
PentaCell.Rotation. Since the structure has
pentagonal symmetry, the
PentaCell.Element property only counts one fifth of the elements in a layer, while
the values 0–4 of
PentaCell.Rotation are then used to create the 5 symmetric copies of those elements.
Constructors
PentaCell(int level, int element, int rotation, bool isRhombus) |
Constructor. |
Instance methods
| bool | | Refer to the documentation for IEquatable<PentaCell>.Equals. |
| bool | | Refer to the documentation for object.Equals. |
| int | | Refer to the documentation for object.GetHashCode. |
| string | | Refer to the documentation for object.ToString. |
Static methods
| IEnumerable<PentaCell> | |
Returns a set of PentaCell cells that form a symmetric structure (actually a decagon if
levels is large enough). |
Instance properties
| PointD | | Refer to the documentation for IHasSvgGeometry.Center. |
| IEnumerable<Edge> | | Refer to the documentation for IHasSvgGeometry.Edges. |
| int | | Identifies the element within one sector of a level in clockwise order. |
| bool | | Specifies whether the cell is a pentagon (false) or a rhombus (true). |
| int | | Describes at which level the cell is (outwards from the center). |
| IEnumerable<PentaCell> | | Refer to the documentation for INeighbor<PentaCell>.Neighbors. |
| int | | Specifies which of the five sectors within a level contains this cell. |
| Vertex[] | | Returns the vertices along the perimeter of this PentaCell in clockwise order. |
Nested types
| Describes a 2D grid of pentagonal cells with thin rhombuses filling the gaps. |