Ollin

Generators

  • Random - random, randomGaussian, and the randomVector/ring scatter helpers
  • Noise - Perlin noise, signedNoise, and curlNoise flow fields
  • Blue noise - poissonDisk, Poisson-disk sampling: a scatter that is even but still looks natural, with no clumps and no gaps, over a rectangle or inside a Shape
  • Low-discrepancy sampling - haltonPoints / sobolPoints, even coverage as an ordered stream, so raising the count adds points without moving the ones already placed
  • Points on a surface - surfacePoints, points scattered over the surface of a mesh rather than over its vertex list. They are evenly spaced by default, and each point carries the normal, the texture coordinate, and the triangle it landed on
  • Stippling - stipple, weighted-Voronoi stippling: dots packed to reproduce the tone of an image, or any density function
  • De Bruijn sequences - deBruijnSequence + DeBruijnCode, a cyclic sequence that holds every window of a given length exactly once. That means a few symbols in a row tell you where in the sequence they came from
  • Ford circles - fordCircles, one circle for every fraction, each touching its neighbors and overlapping nothing, built over fareySequence and the exact Fraction type
  • Shadow art - shadowArt, a solid carved so that it casts the silhouettes you ask for. It also returns the shadows it actually casts, so you can compare them
  • Polyominoes - Polyomino + tilePolyominoes, the twelve pentominoes and an exact-cover search. The search fits a set of pieces into a region, or reports that no fit exists
  • Ulam spiral - ulamSpiral, the whole numbers laid out in a square spiral, so a test on the numbers becomes a picture. The primes, for example, fall on diagonals
  • Fractals - IFS chaos games, FractalFlame renders, circle-inversion limit sets, and Kleinian limit-set curves, plus the fitted placement helper
  • Chaotic maps & bifurcation - IteratedMap, the one-dimensional route to chaos. It covers the logistic, sine, tent, and Gauss families, orbits and cobweb staircases, the bifurcation diagram as dots or as a density image, and Lyapunov exponents
  • Single line - singleLine, TSP art: one continuous tour through the stipple of an image, returned as a Contour that suits a plotter
  • Hilbert order - hilbertOrder and hilbertSorted, points sorted by their place along a space-filling curve: one line through a stipple by a single sort, neighbors kept together
  • Ant colony - AntColony, a colony that lays pheromone trails and narrows a web of possible routes down to a short tour. The picture is the search itself, not only the tour it finds
  • Spanning tree - spanningTree, the minimum spanning tree of the stipple of an image, the branching, vein-like counterpart of the single line
  • String art - StringArt, one continuous thread wound around pins on a rim until its crossings reproduce a picture (a stateful stepper)
  • Percolation - Percolation, site-percolation clusters over a seeded grid, with largest-first labeling, the spanning cluster, cell rectangles, and traced boundary loops
  • Isolines - isolines, marching squares over any scalar field or the tone of an image, giving level curves from metaball outlines to contour maps
  • Isosurfaces - isosurface / Metaballs, the surface where a field over space crosses a level, marched into a Mesh, by marching cubes or by dual contouring where the field has corners to keep. This gives soft spheres that fuse, noise volumes, and gyroids
  • Subdivision surfaces - mesh.subdivided, a low-poly control cage refined into a smooth solid by the Catmull-Clark or Loop rules. Welding and open-edge handling are built in
  • Mesh growth - MeshGrowth / MeshReactionDiffusion, a surface that grows more area than it has room for, so it folds. The results include brain coral, branching coral, and a ruffled leaf margin
  • Fracture - fractured, breaking a Shape or a Mesh into pieces that fit back together exactly, spread evenly or crowded around the point of a blow. Every piece is convex, which is what a rigid body wants, and convexHull(of:) in space is on the same page.
  • Hulls - concaveHull / alphaShape, the tighter answers to the question "what shape are these points?". The first returns one simple polygon that follows the inlets, and the second returns the true footprint of the scatter, islands and holes included
  • Medial axis - medialAxis, a shape reduced to its skeleton, where every point carries the radius of its inscribed disk
  • Straight skeleton - straightSkeleton, the ridge network that a shrinking boundary traces, with faces and exact mitered insets (inset(by:))
  • Force-directed layout - ForceLayout, a graph that untangles itself. Every node repels every other node, and each edge pulls its ends together. The layout cools into an even web that you can grow, pin, and drag
  • Tensegrity - Tensegrity / addTensegrity, struts held apart by cables: the prism, the six-strut icosahedron, and a stacked mast, each in its balanced shape. imbalance checks a form of your own, and a World3D build lands and stands
  • Marbling - Marbling / drawMarbling, paper marbling in closed form, where drops, tines, combs, and swirls rake vector ink outlines into feathered papers
  • Watercolor - Watercolor / drawWatercolor, watercolor pigment made from recursively deformed polygons, stacked as translucent layers
  • Chladni figures - chladni, the standing-wave field of a ringing plate in closed form. The .chladni generator adds sand and wave readings, and an audio join picks the mode by pitch
  • Billiards - Billiard, a ball that bounces forever inside a circle, an ellipse, a polygon, or a stadium, with posts standing in the room. The path comes back as geometry, and the shape of the room decides whether the path draws a pattern or fills the floor
  • Drainage - Drainage, rivers computed from a Heightfield rather than drawn. Hollows are filled so water always has a way out. You get the flow per cell, the network above a threshold as strokable reaches, Strahler ordering, and basins
  • Terrain - Heightfield, landscapes built from noise or diamondSquare, weathered by droplet hydraulic erosion and thermal erosion, and output as terrain meshes, heightmaps, and contours
  • Random walks - randomWalk / levyFlight / selfAvoidingWalk, paths built one random step at a time. In that order, they give a local tangle, clusters joined by long leaps, and a single stroke that never crosses itself
  • Circle packing - packCircles and relaxCircles, filling a region with non-overlapping circles that grow until they touch
  • Shape grammars - ShapeGrammar, a design written as rules over labeled shapes. The rules include the balanced cut behind ice-ray lattices, splits for a building front, insets that become bars, and nested turned copies
  • L-systems - drawLSystem and a preset catalog. A turtle walks a rewriting grammar into fractal curves and branching plants. The grammar can be symbolic or parametric (symbols that carry numbers, for fractional lengths, delays, and tapering width)
  • Differential growth - DifferentialGrowth, a line of nodes that grows and folds into organic, brain-coral structure (a stateful stepper)
  • Meander - Meander, a river centerline that migrates by curvature, cutting off oxbow lakes and recording scars (a stateful stepper)
  • Wave Function Collapse - wfc, constraint-solved tile layouts and texture synthesis. It fills a grid so every neighbor is legal, from a tileset you declare or from the patches of an example picture
  • Cellular automata - elementaryCA/totalisticCA, row stacks driven by a rule number, and Turmite walkers (Langton's ant and its relatives) that paint a wrapped grid
  • Shape packing - packShapes and ContinuousPacking, filling a region with non-overlapping shapes grown against each other's outlines
  • Rectangle packing - packRectangles and RectanglePacking, fitting rectangles of given sizes into one bin at their own sizes for a contact sheet, a collage, or an atlas
  • Flow fields - FlowField, streamlines traced through a direction field (the flow-field look), and particles carried along the same field
  • Flocking - Boids, a flock that steers by separation, alignment, and cohesion into emergent flocking motion
  • Pursuit - Pursuit, runners that head straight at each other and trace logarithmic spirals. It covers the ring of mice and a chase after a quarry that runs straight (a stateful stepper)
  • Steering - Vehicle, a creature moved by steering forces you can combine (seek, flee, arrive, pursue, wander, follow a path or flow field)
  • Space colonization - SpaceColonization, branching growth (veins, roots, trees) toward scattered attraction points (a stateful stepper)
  • Diffusion-limited aggregation - DiffusionLimitedAggregation, branching, tree-like clusters that grow as random walkers freeze onto them, for frost and coral (a stateful stepper)
  • Dielectric breakdown - DielectricBreakdown, lightning grown where the solved electric field is strongest. The eta exponent moves the result from a dense bush to a sparse Lichtenberg arc
  • Crack growth - CrackGrowth, cracks that meet at right angles and divide the plane into city-block cells. Each crack drags a one-sided watercolor wash (a stateful stepper)

↑↓ move ↩ open