All Classes and Interfaces
Class
Description
The AreaMerge class provides a method to recursive merge smaller faces of a
mesh into their adjacent faces.
2D random shape generator using Bezier curves.
Chaikin’s corner-cutting algorithm, which is used to perform polygon
smoothing.
An implementation of a divide-and-conquer algorithm for computing the closest
pair of elements of a set of points.
Corner rounding for PShape polygons.
This class simplifies curves while maintaining perceptual appearance.
The callback interface for determining the termination condition of the
Discrete Curve Evolution (DCE) process.
Doyle spirals are patterns of non-crossing circles in the plane, each tangent
to six others.
Implements Elliptic Fourier Descriptors (EFD).
The
FarthestPair
data type computes the farthest pair of points in a
set of n points in the plane and provides accessor methods for
getting the farthest pair of points and the distance between them.Fast, high-quality polynomial-based atan2 approximation.
An optimised implementation of Andrew's monotone chain algorithm for
constructing convex hulls.
This class solves the problem of finding polygons formed by a collection of
edges.
Circle packing of rectangle boundaries using the front-chain packing
algorithm from 'Visualization of Large Hierarchical Data by Circle Packing'.
Line gaussian smoothing.
Finds a solution to a graph coloring using a genetic algorithm.
Computes 2D/3D weighted geometric median.
Port of https://openprocessing.org/sketch/1523350/
Produces a (barycentric) dual graph from a TinFour Delaunay Triangulation.
Adapts
LargestEmptyCircle
, allowing for repeated calls to find the N largest empty
circles in an optimised manner.Computes the largest inscribed axis-aligned rectangle within a convex hull.
Finds an approximate largest area rectangle of arbitrary orientation in a
polygon via particle swarm optimisation.
Minimum Volume Enclosing Ellipsoid
Computes the Minimum Bounding Triangle (MBT) for the points in a Geometry.
Multiplicatively Weighted Voronoi Diagrams
An element annotated with Nullable claims
null
value is
perfectly valid to return (for methods), pass to (parameters) and
hold (local variables and fields).An undirected edge / line segment joining 2 PVectors.
Generates a Penrose tiling of the plane.
Circle packings of shapes, subject to varying constraints and patterns of
tangencies.
Minimal colorings of meshes (or mesh-like shapes).
Specifies the algorithm/heuristic used by the underlying graph coloring
process to find an approximate minimal coloring for mesh faces.
Construct uncommon/interesting 2D geometries (beyond those offered in
Processing).
Methods for producing different kinds of shape contours.
Specifies the join style for offset curves.
Facilitates conversion between Processing's
PShapes
and
JTS's Geometries
, along with various other formats.A utility class for storing and manipulating the visual properties of PShapes
from the Processing library.
Generates various types of geomtric hulls (convex, concave, etc.) for
polygons and point sets.
Mesh generation (excluding triangulation) and processing.
Methods that affect the geometry or topology of shapes.
Solve geometric optimisation problems, such as bounding volumes, inscribed
areas, optimal distances, etc.
Various packing heuristics for
rectpack()
.Generation of random sets of 2D points having a variety of different
distributions and constraints (and associated functions).
Methods that process shape geometry: partitioning, slicing, cleaning, etc.
Generation of random sets of non-intersecting line segments (and
associated functions).
Boolean set-operations for 2D shapes.
Various shape metrics, predicates and descriptors.
Tiling, tessellation and subdivision of the plane using periodic or
non-periodic geometric shapes.
Various geometric and affine transformations for PShapes that affect vertex
coordinates.
Delaunay and earcut triangulation of shapes and point sets.
Voronoi Diagrams of shapes and point sets.
Models a GROUP PShape comprising faces of a 2D mesh as a topological entity,
ready for mesh optimisation via Laplacian smoothing, a form of diffusion
smoothing.
Deprecated.
Generates sets of random points via Poisson Disk Sampling.
Implementation of the Bayazit convex decomposition algorithm for simple
polygons.
The ProcrustesAlignment class provides methods for performing
ProcrustesAlignment analysis, which is a technique for aligning and comparing
geometric shapes.
Random Convex Polygons
Generates random space-filling curves.
Random rectangle subdivision.
Repulsion Packing attempts to arrange a set of circles of specified radii
within a rectangle such that there is no-overlap between circles.
The Recursive Largest First (RLF) algorithm for graph coloring.
An extension to the
RandomPointsInGridBuilder
class that accepts a random seed for repeatable
outputs.Best-guess interpolation between any two linear rings.
Quadrangulations of Planar Point Sets via the Spiraling Rotating Calipers
Algorithm.
A non-periodic (quasiperiodic?)
Methods to create star shapes
Implements a circle packing algorithm described by Collins and Stephenson
(2003) to find an arrangement of circles which corresponds to a graph of
desired circle tangencies.
Implements the Thomas Point Process, a stochastic process used for simulating
clusters of points around parent locations in spatial analysis.
Balanced triangle subdivision.
This class computes an isovist, which is the volume of space visible from a
specific point in space, based on a given set of original segments.
PoissonDistributionJRUS