public final class PGS_Tiling extends Object
A tiling is created when a collection of plane figures (tileCount) fills a plane such that no gaps occur between the tileCount and no two tileCount overlap each other.
Modifier and Type | Method and Description |
---|---|
static List<processing.core.PVector> |
doyleSpiral(double centerX,
double centerY,
int p,
int q,
double maxRadius)
Generates a Doyle spiral.
|
static processing.core.PShape |
hatchSubdivision(double width,
double height,
int gridCountX,
int gridCountY,
long seed)
Randomly subdivides the plane into equal-width strips having varying lengths.
|
static processing.core.PShape |
hexTiling(double width,
double height,
double sideLength,
boolean flat)
Generates a hexagonal tiling of the plane.
|
static processing.core.PShape |
islamicTiling(double width,
double height,
double w,
double h)
Generates an "islamic-style" (Girih) tiling of the plane.
|
static processing.core.PShape |
penroseTiling(double centerX,
double centerY,
double radius,
int steps)
Generates a Penrose Tiling (consisting of rhombi).
|
static processing.core.PShape |
quadSubdivision(double width,
double height,
int depth)
Recursively and randomly subdivides the given/bounded plane into convex quad
polygons.
|
static processing.core.PShape |
quadSubdivision(double width,
double height,
int depth,
long seed)
Recursively and randomly subdivides the given/bounded plane into convex quad
polygons.
|
static processing.core.PShape |
rectSubdivision(double width,
double height,
int maxDepth)
Recursively and randomly subdivides the given/bounded plane into rectangles.
|
static processing.core.PShape |
rectSubdivision(double width,
double height,
int maxDepth,
long seed)
Recursively and randomly subdivides the given/bounded plane into rectangles.
|
static processing.core.PShape |
squareTriangleTiling(double width,
double height,
double tileSize)
Generates a non-periodic tiling, comprising squares and equilateral
triangles.
|
static processing.core.PShape |
squareTriangleTiling(double width,
double height,
double tileSize,
long seed)
Generates a non-periodic tiling, comprising squares and equilateral
triangles, having a given seed.
|
static processing.core.PShape |
triangleSubdivision(double width,
double height,
int maxDepth)
Recursively and randomly subdivides the given/bounded plane into triangles.
|
static processing.core.PShape |
triangleSubdivision(double width,
double height,
int maxDepth,
long seed)
Recursively and randomly subdivides the given/bounded plane into triangles.
|
public static processing.core.PShape rectSubdivision(double width, double height, int maxDepth)
width
- width of the quad subdivision planeheight
- height of the quad subdivision planemaxDepth
- maximum number of subdivisions (recursion depth)seeded rectSubdivsion()
public static processing.core.PShape rectSubdivision(double width, double height, int maxDepth, long seed)
width
- width of the quad subdivision planeheight
- height of the quad subdivision planemaxDepth
- maximum number of subdivisions (recursion depth)seed
- the random seednon-seeded rectSubdivsion()
public static processing.core.PShape triangleSubdivision(double width, double height, int maxDepth)
width
- width of the subdivision planeheight
- height of the subdivision planemaxDepth
- maximum number of subdivisions (recursion depth)seeded
triangleSubdivsion()
public static processing.core.PShape triangleSubdivision(double width, double height, int maxDepth, long seed)
width
- width of the subdivision planeheight
- height of the subdivision planemaxDepth
- maximum number of subdivisions (recursion depth)seed
- the random seednon-seeded
triangleSubdivision()
public static processing.core.PShape quadSubdivision(double width, double height, int depth)
width
- width of the plane that is subdividedheight
- height of the plane that is subdivideddepth
- number of subdivisions (recursion depth)seeded quadSubdivision()
public static processing.core.PShape quadSubdivision(double width, double height, int depth, long seed)
width
- width of the quad subdivision planeheight
- height of the quad subdivision planedepth
- number of subdivisions (recursion depth)seed
- the random seednon-seeded quadSubdivision()
public static processing.core.PShape hatchSubdivision(double width, double height, int gridCountX, int gridCountY, long seed)
width
- width of the subdivision planeheight
- height of the subdivision planegridCountX
- horizontal grid countgridCountY
- vertical grid countseed
- the random seedpublic static List<processing.core.PVector> doyleSpiral(double centerX, double centerY, int p, int q, double maxRadius)
centerX
- x coordinate of the center of the spiralcenterY
- y coordinate of the center of the spiralp
- at least 2q
- at least p + 1maxRadius
- the maximum radius of the packing arrangement (the maximum
distance a circle centroid can be from the center of the
arrangement)public static processing.core.PShape hexTiling(double width, double height, double sideLength, boolean flat)
width
- width of the tiling planeheight
- height of the tiling planesideLength
- side length of each hexagonflat
- determines the orientation of the hexagons -- whether the
top is flat, or pointypublic static processing.core.PShape islamicTiling(double width, double height, double w, double h)
width
- width of the tiling planeheight
- height of the tiling planew
- h
- public static processing.core.PShape penroseTiling(double centerX, double centerY, double radius, int steps)
centerX
- x coordinate of the center/origin of the tilingcenterY
- y coordinate of the center/origin of the tilingradius
- maximum radius of the tiling (measured from the center)steps
- number of tiling subdivisionspublic static processing.core.PShape squareTriangleTiling(double width, double height, double tileSize)
width
- width of the tiling planeheight
- height of the tiling planetileSize
- diameter of each tilepublic static processing.core.PShape squareTriangleTiling(double width, double height, double tileSize, long seed)
width
- width of the tiling planeheight
- height of the tiling planetileSize
- diameter of each tileseed
- the random seedCopyright © 2023. All rights reserved.